Home BSS User Forum BSS Archive Threads Discussion London Architect with Soundweb London

RS-232 Serial Help Needed

This question involves serial message construction, where I'm having difficulty with the Serial Trigger/Table over RS-232. There are three formats available in Properties/Serial Table: ASCII, Decimal and Hex. None of these formats will successfully produce the message I need, yet I can do so using the Serial Toolbar or the Direct Injector Tool.

The needed format is something like: 0x23 0x20 0x30, and generates \"# 0\" in a machine that expects only ASCII characters. I can send this message successfully, as written, from either the Serial or Direct Tools and it comes out on the other end correctly.

Yet when I put the same message in the Serial Trigger/Table, that device performs some kind of conversion based on which of the three formats is selected in the format selector. But none of the three sends the message correctly - each converts the characters literally. For instance, when set to Hex, the message on the other end comes out \"30 78 32 33...\". It converts the \"0x23\" to the hex equivalents. I've tried using the \"h\" prefix to signify hex - I've tried a lot of things, but nothing works - EXCEPT the Serial Toolbar and the DIT. But you can't call either from logic that I'm aware of.

Can anybody help?
Thanks in advance.

PS. I am using the Serial Trigger/Table in multiple other instances to other machines that can understand hex, so I know it works and I know the serial link is good.

Comments

  • JashikiJashiki Posts: 3
    I may be having the same issue. I am trying to control a unison lighting system via the rs 232 from the blu-80 I have tried building the hex code - but may also need to format it in a similar 0x00 format. any ideas would be much appreciated!!
  • John, I got an answer by calling tech support. It turned out to be very simple. In the Serial Send, you have three modes - octal, hex and ascii. You have to set it for ascii and put your plain text message in, then switch it over to hex and put in your hex terminating codes - line feed, carriage return, whatever your target device needs.

    If you need specific example strings, let me know and I'll post what I did if it will help.

    Thanks,
    Phil
  • JashikiJashiki Posts: 3
    I've tried to both input the commands in ASCII and convert, as well as use a converted and input everything in HEX. An example string would be great to look at, as I am unsure of where I am going wrong! Thanks a ton

    -Jess
  • Hello Jess,
    This was hard to get through my head. On one job a Dalite screen needed plain text command string, but a <CR> termination (h0d).

    In any other system the needed string would look like this: \"# 0 se re dn h0d\". But you can't put it into the serial send that way because when the serial send is set to ASCII, it thinks everything it sees is ASCII. When it's set to HEX - ditto.

    What you have to do is first set the serial send mode to ASCII, and enter the \"# 0 se re dn\" part of the example command.

    Then you change the mode to HEX. That immediately converts the display to \"23,20,30,20,73,65,20,72,65,20,64,6E,20\".

    Now you type in on the end of the string \"0D\" for your carriage return. If you then change the mode back to ASCII, all you'll see is the \"# 0 se re dn\" because ASCII mode only displays PRINTABLE characters, of which <CR> is not.

    It's a BSS thing I guess.
    Good luck,
    Phil
  • JashikiJashiki Posts: 3
    thanks for the help. I did manage to get everything working (finally), after building all the hex code from scratch (I wanted to make sure I wasn't losing anything in translation) Once I skipped all the cabling in between (which eventually I discovered was the real cause of my problems), I was able to control everything via my custom panel. Thanks again!

    -Jess
Sign In or Register to comment.