Monday, 26 January 2015

rs485 - Decoding an unknown serial bitstream that does not fit 8-N-1


I am looking at an RS-485 signal using a scope and an analyzer (saleae). This is running a mystery bus (see below for more information). I would like to know how to fix my frame errors. I can't begin to decode the protocol until I am reading the bits correctly.


7-E-1 7-E-1, LSB first


8-N-1 8-N-1, LSB first


Manchester Manchester 7bit


I have tried 40 or so combinations and nothing comes out without frame errors.


Other Information The alcom bus runs at 62.5kbps over RS-485 and supports up to 112 or 113 nodes. The master is always sending out packets over the bus to the slaves. The slaves node address is set with dip switches.


The physical layer is 2 wires with 150 ohm terminating resistors. This bus is used with the DeLaval Alpro system. The vendor is not helpful and provides no information. I have looked at the slave node boards. The chips all have varnish on them, so are very difficult to decode.


The packets all start with OxAA (or 0x55, depending on frame errors issue). I then assume there is a node addressing, data, and checksum.



Because of the bit rate I initially thought it was Profibus DP, telegram format does not seem to match.


People in the past have tried to figure out this same problem in 2010 and 2015.


Alcom is a Netherlands based company that seems to work with CAN Bus, etc. So maybe they initially designed the bus, hence the name.


My motivation for doing this is I want to read one specific node's telegrams. This node is an RFID reader and I want to see if the node is miss reading RFID tags (I highly suspect this to be true).




No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...