rendered paste bodyReturn code: 2
2 05/17/08 21:39:25 73 (spawning-device) [1;33mDevice requests restart... count=1/50 dev=73[1;00m
Sat May 17 21:39:25 EDT 2008 Restart
========== NEW LOG SECTION ==========
1 05/17/08 21:39:33 73 (spawning-device) [1;00mStarting... 1[1;00m
1 05/17/08 21:39:33 73 (spawning-device) [1;00mFound /usr/pluto/bin/Generic_Serial_Device[1;00m
RCODE:
0:require 'Ruby_Generic_Serial_Device'
1:class Command < Ruby_Generic_Serial_Device::RubyCommandWrapper
2:end
3:class Device_73 < Ruby_Generic_Serial_Device::RubySerialIOWrapper
4:#### 165 ####################################################################
5:def cmd_165(cmd=nil)
6:@returnParamArray.clear
7:cmdSend("SLI","10")
8:return @returnParamArray
9:end
10:#### 192 ####################################################################
11:def cmd_192(pk_pipe, pk_device_pipes, cmd=nil)
12:@returnParamArray.clear
13:cmdSend("PWR","01")
14:return @returnParamArray
15:end
16:#### 193 ####################################################################
17:def cmd_193(pk_pipe, cmd=nil)
18:@returnParamArray.clear
19:cmdSend("PWR","00")
20:return @returnParamArray
21:end
22:#### 313 ####################################################################
23:def cmd_313(level, cmd=nil)
24:@returnParamArray.clear
25:# Set Volume - Date: 2007-02-22 12:41:58
26:
27:log("Vol Level Requested: #{level}")
28:desiredvol = level.to_s(16)
29:cmdSend("MVL", desiredvol)
30:
31:return @returnParamArray
32:end
33:#### 350 ####################################################################
34:def cmd_350(cmd=nil)
35:@returnParamArray.clear
36:# Written by Jason Bennett
37:
38:recvdMsg = receiveMsg()
39:chkCmd(recvdMsg)
40:return @returnParamArray
41:end
42:#### 355 ####################################################################
43:def cmd_355(cmd=nil)
44:@returnParamArray.clear
45:# Written by Jason Bennett
46:#
47:# 355 - Initialize Script
48:
49:# Constants. NOTE: YOU MAY WANT TO CHANGE SOME OF THESE
50:$MaxVolume = 0x4F # Absolute Highest Volume this driver will use
51:$StartingVolume = 0x2A # Starting Volume this device will use
52:
53:# Device wake up call
54:cmdSend("PWR", "01")
55:return @returnParamArray
56:end
57:#### PRIVATE METHODS ####################################################################
58:# Written by Jason Bennett
59:#
60:# 373 - Methods
61:
62:def cmdSend(cmd, opt)
63: conn_.Reconnect()
64: conn_.Send("!1" + cmd + opt + "\r")
65: reply = receiveMsg
66: if (reply[0] == cmd)
67: log("Command Sent: #{cmd}:#{opt} with reply: #{reply[0]}:#{reply[1]}")
68: else
69: log("Command Sent: #{cmd}:#{opt} with MALFORMED REPLY: #{reply[0]}:#{reply[1]}")
70: end
71: chkCmd(reply)
72:end
73:
74:def receiveMsg
75: buff = conn_.Recv(7, 1000)
76: log("Message Received: #{buff}")
77: trash = conn_.Recv(1, 100)
78: if (buff.length() < 7)
79: parsed1 = "ERR"
80: parsed2 = "00"
81: else
82: parsed2 = buff.match(/\d\d/)
83: parsed1 = buff[2].chr + buff[3].chr + buff[4].chr
84: return [parsed1, parsed2]
85: end
86:end
87:
88:
89:def chkCmd(msg)
90: log("***EVENT*** - #{msg[0]} : #{msg[1]}")
91: if (msg[0] == "PWR")
92: #Power state report. Sending on to dce
93: cmd = Command.new(device_.devid_, -1001, 1, 2, 48)
94: if (msg[1] == "01")
95: cmd.params_[10] = "1" #Device Turned on
96: else
97: cmd.params_[10] = "0" #Device Turned off
98: end
99: SendCommand(cmd)
100: else
101: if (msg[0] == "MVL")
102: #Volume Level Changing
103: volume = msg[1].hex
104: SetDeviceDataInDB( device_.devid_, 158, volume.to_s )
105: cmd = Command.new(device_.devid_, -1001, 1, 2, 71)
106: cmd.params_[30] = volume.to_s
107: SendCommand(cmd)
108: else
109: if (msg[0] == "SLI")
110: cmd = Command.new(device_.devid_, -1001, 1, 2, 49)
111: case msg[1]
112: when "10"
113: input_type = 165
114: end
115: cmd.params_[41] = input_type.to_s()
116: SendCommand(cmd);
117: else
118: # Not a recognized Command/Event
119: end
120: end
121: end
122:end
123:
124:def setVol()
125: wantedvol = cmd_.params_[76] #We can all thank ddamron for that var name
126: cmdSend("MVL", wantedvol.to_s(16))
127:end
128:
129:def log(line)
130: $log = File.open("/var/log/pluto/" + device_.devid_.to_s + "_Generic_Serial_Device.log", "a")
131: $log.puts "(***):" + line.to_s
132: $log.close
133:end
134:#### START SETTERS ####################################################################
135:def initialize()
136:super
137:@returnParamArray=Array.new
138:end
139:#### END SETTERS ####################################################################
140:end
142:(***):Message Received: !1PWR01
(***):Command Sent: PWR:01 with reply: PWR:01
(***):***EVENT*** - PWR : 01
05 05/17/08 21:39:59.234 [33;1mGSDMessageTranslator isCmdImplemented = true[0m <0x42003950>
05 05/17/08 21:39:59.235 [33;1m#### Pre-Process Queue = 1[0m <0x42003950>
05 05/17/08 21:39:59.260 [33;1m_QueueProc Pre - 192 : 0[0m <0x40800950>
05 05/17/08 21:39:59.260 [33;1mGSD-Sleep Pre 192 : 0[0m <0x40800950>
05 05/17/08 21:39:59.260 [33;1mProcess Queue = 1[0m <0x40800950>
05 05/17/08 21:39:59.269 [33;1mGSDMessageTranslator isCmdImplemented = false[0m <0x42003950>
05 05/17/08 21:39:59.305 [33;1mGSDMessageTranslator isCmdImplemented = true[0m <0x42003950>
05 05/17/08 21:39:59.305 [33;1m#### Pre-Process Queue = 1[0m <0x42003950>
05 05/17/08 21:39:59.321 [33;1mParameter: [0m <0x42804950>
05 05/17/08 21:39:59.321 [33;1mParameter: [0m <0x42804950>
(***):Message Received: !1PWR01
(***):Command Sent: PWR:01 with reply: PWR:01
(***):***EVENT*** - PWR : 01
05 05/17/08 21:40:00.823 [33;1mGSDMessageTranslator isCmdImplemented = false[0m <0x42003950>
05 05/17/08 21:40:00.823 [33;1m#### Pre-Process Queue = 2[0m <0x42003950>
05 05/17/08 21:40:01.312 [33;1mGSDMessageTranslator isCmdImplemented = false[0m <0x42003950>
05 05/17/08 21:40:01.312 [33;1m#### Pre-Process Queue = 3[0m <0x42003950>
05 05/17/08 21:40:01.818 [33;1mGSDMessageTranslator isCmdImplemented = false[0m <0x42003950>
05 05/17/08 21:40:01.818 [33;1m#### Pre-Process Queue = 4[0m <0x42003950>
05 05/17/08 21:40:02.322 [33;1mGSDMessageTranslator isCmdImplemented = false[0m <0x42003950>
05 05/17/08 21:40:02.322 [33;1m#### Pre-Process Queue = 5[0m <0x42003950>
05 05/17/08 21:40:02.825 [33;1mGSDMessageTranslator isCmdImplemented = false[0m <0x42003950>
05 05/17/08 21:40:02.825 [33;1m#### Pre-Process Queue = 6[0m <0x42003950>
05 05/17/08 21:40:06.849 [33;1mGSD-Sleep Post 192 : 7000[0m <0x40800950>
05 05/17/08 21:40:06.849 [33;1m_QueueProc Post - 192 : 7000[0m <0x40800950>
05 05/17/08 21:40:06.849 [33;1m_QueueProc Pre - 165 : 0[0m <0x40800950>
05 05/17/08 21:40:06.849 [33;1mGSD-Sleep Pre 165 : 0[0m <0x40800950>
05 05/17/08 21:40:06.849 [33;1mProcess Queue = 1[0m <0x40800950>
(***):Message Received: !1SLI10
(***):Command Sent: SLI:10 with reply: SLI:10
(***):***EVENT*** - SLI : 10
05 05/17/08 21:40:09.387 [33;1mGSD-Sleep Post 165 : 2000[0m <0x40800950>
05 05/17/08 21:40:09.388 [33;1m_QueueProc Post - 165 : 2000[0m <0x40800950>
05 05/17/08 21:40:09.388 [33;1m---- _QueueProc Ignored - 89[0m <0x40800950>
05 05/17/08 21:40:09.388 [33;1m---- _QueueProc Ignored - 89[0m <0x40800950>
05 05/17/08 21:40:09.388 [33;1m---- _QueueProc Ignored - 89[0m <0x40800950>
05 05/17/08 21:40:09.388 [33;1m---- _QueueProc Ignored - 89[0m <0x40800950>
05 05/17/08 21:40:09.388 [33;1m---- _QueueProc Ignored - 89[0m <0x40800950>