User Tools

Site Tools


can_communication_with_controllers

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
can_communication_with_controllers [2018/05/22 10:33] – external edit 127.0.0.1can_communication_with_controllers [2019/02/15 14:35] (current) – [SDO CAN frame structure] llibert
Line 21: Line 21:
  
 > The QuimBox controllers implement a subset of the CANopen protocol. Namely the message layout is completely compatible and the OD concept is reused.  > The QuimBox controllers implement a subset of the CANopen protocol. Namely the message layout is completely compatible and the OD concept is reused. 
 +
 +===== SDO CAN frame structure =====
 +
 +An SDO can frame is structured as follow:
 +
 +^ Can id  ^  Command byte ^  OD Idx  ^  OD subidx  ^  data  ^
 +|  16 bits  |  8 bits  |  16 bits  |  8 bits  |  32 bits  |
 +
 +
 +The can id is composed of the RX/TX identifier and the board identifier. (can id = RX/TX-id + Node-id)
 +> TX-id = 600
 +> RX-id = 580
 +
 +Note: RX/TX from host point of view. On board the convention is opposite.
 +
 +The command byte is either 0x23 for 32bits writing request, 0x2f for 8bits writing request or 0x40 for reading request (always 32bits response).
 +
 +One can test the connection with a linux host using can-utils tools with cansend and candump commands.
 +
 +**ex.** A request to enter a QuimDC in operational mode. (32bits write request) (Node-id = 7)
 +
 +^ Can id  ^  Command byte ^  OD idx  ^  OD subidx  ^  data  ^^^^
 +|  607  |  23  |  3333  |  00  |  01  |  00  |  00  |  00  |
 +
 +<code>
 +cansend 607#23.3333.00.01.00.00.00
 +</code>
  
  
can_communication_with_controllers.1526978020.txt.gz · Last modified: 2018/05/22 10:33 by 127.0.0.1