Return 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>