shawn@completeav.us Posted April 16, 2018 Share Posted April 16, 2018 I'm writing a very simple serial driver to control On/Off for a video wall. I loaded the driver onto our director and made the physical and composer connections, but when I issue the power on command, the display doesn't do anything. I have the following code: CMDS_SERIAL = { --Power ["ON"] = "F5 88 FF FE FE 01", ["OFF"] = "F5 88 FF FE FE 00", --Input Toggle ["DP"]= "F5 88 FF FE 01 01", ["HDMI"]= "F5 88 FF FE 01 02" } function ReceivedFromProxy(idBinding, strCommand, tParams) if CMDS_SERIAL[strCommand] ~= nil then C4:SendToSerial(idBinding, tohex(CMDS_SERIAL[strCommand])) print("sending " .. strCommand) print("command is " .. CMDS_SERIAL[strCommand]) else print (strCommand .. " command not found") end end I know the hex commands work. I can connect to the displays directly via serial wire and putty. I can turn the display on and off that way. I imagine I am just missing something simple. thanks Quote Link to comment Share on other sites More sharing options...
lippavisual Posted April 16, 2018 Share Posted April 16, 2018 How are you making the driver, from scratch? Id suggest trying to make the driver using driver wizard and copy an existing display driver. Then input your codes where needed. Easier to test to make sure syntax and protocol are correct. From there you can use the tool to make it a c4z and add anything else you’d want like a custom logo, etc. Quote Link to comment Share on other sites More sharing options...
alanchow Posted April 17, 2018 Share Posted April 17, 2018 you are sending the serial commands back to the proxy. You need to send the serial command to the serial port Quote Link to comment Share on other sites More sharing options...
shawn@completeav.us Posted April 18, 2018 Author Share Posted April 18, 2018 Thanks Alan, I guess that's what I thought SendToSerial() did. Or am I sending the wrong binding id? Thanks Quote Link to comment Share on other sites More sharing options...
RyanE Posted April 18, 2018 Share Posted April 18, 2018 You're sending it to the proxy binding, where you're getting the message of what to send. You need to send it to the serial control binding, which is usually in the range of 1-100. That serial control binding will be declared in the XML part of the driver. There will also be a <serialsettings> section, with the serial baud rate, etc. RyanE alanchow 1 Quote Link to comment Share on other sites More sharing options...
shawn@completeav.us Posted April 19, 2018 Author Share Posted April 19, 2018 Thanks, that makes sense. I made some changes but it's still not working. I'm not sure if it's a problem in the way I have my connections set up. I put the code here: https://gist.github.com/shelbydz/5ba93a77b61a507e643d993e0964fb03 thanks for the continued help Quote Link to comment Share on other sites More sharing options...
shawn@completeav.us Posted April 19, 2018 Author Share Posted April 19, 2018 I got it figured out. My code works, but the hex command was off. [EDIT]. It was wrong in the documentation. should be 00 not FF for all displays. thanks for all the help Quote Link to comment Share on other sites More sharing options...
ivan-alarcon Posted April 29, 2021 Share Posted April 29, 2021 On 27/4/2021 at 13:14, ivan-alarcon said: buenas, soy nuevo en la creación de drivers con (DriverEditor) y estoy realizando un driver para control de un dimmer UPB por conexión serial y se que para el envío de códigos hex hay comandos como C4:sendToSerial pero no he podido encontrar los comandos que me establezcan la conexión serial con el puerto com y los baudios que yo desee, agradecería que me pudieran colaborar; también quisiera saber como programo en el DriverEditor el envió de comandos a través de la sección de programación del ComposerPro. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.