Difference between revisions of "CanServo/Protocol/V1.3"
Jump to navigation
Jump to search
(Created page with "== CAN Protocol Ver 1.2 == * Message: Host -> Servo ** ZUW1, < UID : 16 byte >, < ADDR : 2 byte >, < DATA : 2 byte > ** ZUW2, < UID : 16 byte >, < ADDR1 : 2 byte >, < DATA1 :...") |
|||
(48 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== CAN Protocol Ver 1. | == CAN Protocol Ver 1.3 == | ||
* All messages below are sent in long format. | |||
* CAN ID | |||
** 0x7FF : Servo -> Host | |||
** 0x7FE : Host -> Servo | |||
=== Write/Read Register === | |||
* Message: Host -> Servo | * Message: Host -> Servo | ||
Line 12: | Line 20: | ||
** ZUV1, < UID : 16 byte >, < ADDR : 2 byte >, < DATA : 2 byte > | ** ZUV1, < UID : 16 byte >, < ADDR : 2 byte >, < DATA : 2 byte > | ||
** ZUV2, < UID : 16 byte >, < ADDR1 : 2 byte >, < DATA1 : 2 byte >, < ADDR2 : 2 byte >, < DATA2 : 2 byte > | ** ZUV2, < UID : 16 byte >, < ADDR1 : 2 byte >, < DATA1 : 2 byte >, < ADDR2 : 2 byte >, < DATA2 : 2 byte > | ||
=== Broadcast UID === | |||
* Message: Host -> Servo | |||
** ZUAL --> old: ZGUALL | |||
** ZUGD, < ID2 : 4 byte >, < ID1 : 1 byte > --> OLD: ZGUD | |||
*** ID2 = 0 이면, All | |||
*** ID1 = 0 이면, All | |||
* Message: Servo -> Host | |||
** ZUVD, < UID : 16 byte >, < ID2 : 4 byte >, < ID1 : 1 byte > --> OLD: ZVUD | |||
=== UID search === | |||
* Message: Host -> Servo | |||
** ZUgK, <Magic Code: 1 byte>, <UID part = 0, 4, 8, 12 bytes> --> OLD: ZGUa | |||
* Message: Servo -> Host | |||
** K, <Magic Code: 1 byte>, <UID part = 4 bytes> | |||
* Magic Code | |||
** bit 5:0 = magic key for search | |||
** bit 7:6 = id type | |||
*** 0 = ID ng ( ID1 = 0 or ID2 = 0 ) | |||
*** 1 = ID ok ( ID1 != 0 and ID2 != 0 ) | |||
*** 2/3 = any | |||
== Long Message == | |||
[[CanServo/Protocol/LongMessage]] |
Latest revision as of 10:09, 4 December 2024
CAN Protocol Ver 1.3
- All messages below are sent in long format.
- CAN ID
- 0x7FF : Servo -> Host
- 0x7FE : Host -> Servo
Write/Read Register
- Message: Host -> Servo
- ZUW1, < UID : 16 byte >, < ADDR : 2 byte >, < DATA : 2 byte >
- ZUW2, < UID : 16 byte >, < ADDR1 : 2 byte >, < DATA1 : 2 byte >, < ADDR2 : 2 byte >, < DATA2 : 2 byte >
- ZUX1, < UID : 16 byte >, < ADDR : 2 byte >, < DATA : 2 byte >
- ZUX2, < UID : 16 byte >, < ADDR1 : 2 byte >, < DATA1 : 2 byte >, < ADDR2 : 2 byte >, < DATA2 : 2 byte >
- ZUR1, < UID : 16 byte >, < ADDR : 2 byte >
- ZUR2, < UID : 16 byte >, < ADDR1 : 2 byte >, < ADDR2 : 2 byte >
- Message : Servo -> Host
- ZUV1, < UID : 16 byte >, < ADDR : 2 byte >, < DATA : 2 byte >
- ZUV2, < UID : 16 byte >, < ADDR1 : 2 byte >, < DATA1 : 2 byte >, < ADDR2 : 2 byte >, < DATA2 : 2 byte >
Broadcast UID
- Message: Host -> Servo
- ZUAL --> old: ZGUALL
- ZUGD, < ID2 : 4 byte >, < ID1 : 1 byte > --> OLD: ZGUD
- ID2 = 0 이면, All
- ID1 = 0 이면, All
- Message: Servo -> Host
- ZUVD, < UID : 16 byte >, < ID2 : 4 byte >, < ID1 : 1 byte > --> OLD: ZVUD
UID search
- Message: Host -> Servo
- ZUgK, <Magic Code: 1 byte>, <UID part = 0, 4, 8, 12 bytes> --> OLD: ZGUa
- Message: Servo -> Host
- K, <Magic Code: 1 byte>, <UID part = 4 bytes>
- Magic Code
- bit 5:0 = magic key for search
- bit 7:6 = id type
- 0 = ID ng ( ID1 = 0 or ID2 = 0 )
- 1 = ID ok ( ID1 != 0 and ID2 != 0 )
- 2/3 = any