Home AMX User Forum NetLinx Studio

Beyerdynamic Discussion System, String parsing

Can anyone help to decode the string sent by the Beyerdynamic discussion system[MCS D-200].

51 delegate units are attached to the main unit including chairman's mic; (first COM port is iCNS[PC] and second COM port is AMX control system).

I can start and stop each delegate unit using the hex commands in this format - $06,$0A,$01,$00,$01,$00,$01

But I couldn't show on the touchpanel that which mic is being pressed. It has become too difficult to decode the string. The stings sent by the MCS D200 has a random nature(please see attached). It will be really really helpful if anyone can tell something.

Comments

  • viningvining Posts: 4,368
    Do you have the device's control protocol? If so post it, if not find it.
  • Attached. the protocol
  • Joe HebertJoe Hebert Posts: 2,159
    arnmohan wrote: »
    It has become too difficult to decode the string. The stings sent by the MCS D200 has a random nature(please see attached). It will be really really helpful if anyone can tell something.

    The strings that are listed in the protocol you attached are not random in nature. Here is what the format looks like to me:

    1) All strings are 7 bytes long.

    2) Bytes 1 and 2 are always $06 and $0A.

    3) Byte 3 is the mic address.

    4) Byte 4 is always $00.

    5) Byte 5 is the On/Off state ($01=On, $02=Off)

    6) Bytes 6 and 7 are always $00 and $01.

    HTH
  • Joe Hebert wrote: »
    The strings that are listed in the protocol you attached are not random in nature. Here is what the format looks like to me:

    HTH
    Thanks for the reply

    The .txt file I've attached is describing protocol to activate/deactivate mic stations.

    Wht I'm asking is abt the reply from beyerdynamic main unit when a mic was turned on(manually or via RS 232). That string is not in a common format, then how can I determine which exact mic has been just turned on?
  • viningvining Posts: 4,368
    Where's the rest of the protocol? I checked their site but didn't see this model.
  • vining wrote: »
    Where's the rest of the protocol? I checked their site but didn't see this model.

    First byte always $06

    second byte always $0A

    3rd and 4th bytes are the LOGID of the mic.

    To figure byte 3 take the LOGID of the mic and Binary AND with $FF

    To figure the 4th byte take the LOGID of the mic and / $100

    The 5th byte is the on/off byte. 1 is on 2 is off.

    The 6th byte is to check 1 for request to speak queue or 0 for don't check
    the queue.

    Byte 7 is the group ID.

    And I used the parameters in the attached document, none of others describes its even parity.
  • viningvining Posts: 4,368
    Looks like the strings returned in the OP screen shot are in your supplied protocol setion:

    7.2 Speakerlist (Delegate stations on/off/requ)

    The speakerlist is sent to the Ext. Controller when a microphone is turned on or off.

    Where: 8,B,1,1,38,0,0,1,1 (9 bytes)
    byte 1 = LEN "8" (plus byte 1 for a total of 9 bytes)
    byte 2 = CMD "B"
    byte 3 = Sesson ID "1"
    byte 4 = Flag "1"
    byte 5 = Lo logID "38"
    byte 6 = Hi logID "0"
    byte 7 = Pos "0"
    byte 8 = State "1"
    byte 9 = Group ID "1"

    If you don't care about this stuff ignore it and just key on finding your first 2 fixed bytes:
    "Bytes 1 and 2 are always $06 and $0A"
    and then if the point where you find these string and the total length of the string is at least 7 bytes longer than the find point then dump up to the find point -1 and then grab the 7 byte string and parse.
  • vining wrote: »
    Looks like the strings returned in the OP screen shot are in your supplied protocol setion:


    If you don't care about this stuff ignore it and just key on finding your first 2 fixed bytes:
    "Bytes 1 and 2 are always $06 and $0A"
    and then if the point where you find these string and the total length of the string is at least 7 bytes longer than the find point then dump up to the find point -1 and then grab the 7 byte string and parse.

    Many thanks Vining,

    Bt I couldn't make out this part.(which you quoted above)

    I created a buffer of size 9 and analyzed a series of strings when more than 2 mics are activated, bt then the string was not in this format. I hope first 9 bytes will get replaced when the next reply comes, or else I'm missing the point where the buffer has to be cleared.
Sign In or Register to comment.