Difference between revisions of "CanServo/Protocol/V1.1"
Jump to navigation
Jump to search
(5 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
** 0x7FF : Servo -> Host | ** 0x7FF : Servo -> Host | ||
** 0x7FE : Host -> Servo | ** 0x7FE : Host -> Servo | ||
=== UID === | |||
* Message : Servo -> Host | * Message : Servo -> Host | ||
** ZUID, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte>, <CAN Mode : 1 byte> | ** ZUID, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte>, <CAN Mode : 1 byte> | ||
** 이 메시지는 서보 설정 ID1, ID2 중에 하나라도 0 이면 서보가 주기적으로 발신합니다. | |||
* Message: Host -> Servo | * Message: Host -> Servo | ||
Line 15: | Line 17: | ||
** ZIDS, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte> | ** ZIDS, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte> | ||
** ZIDS, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte>, <CAN Mode : 1 byte> | ** ZIDS, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte>, <CAN Mode : 1 byte> | ||
** UID 가 일치하는 서보는 메시지의 길이에 따라, ID2, ID1, CAN Mode 까지 설정합니다. | ** UID 가 일치하는 서보는, 메시지의 길이에 따라, ID2, ID1, CAN Mode 까지 설정합니다. | ||
* This message is delivered using the MultiPacket method below. | * This message is delivered using the MultiPacket method below. | ||
=== Write/Read Register's bits by ID or UID === | |||
* Message: Host -> Servo | |||
** ZIDS - Set IDs by UID | |||
*** UID (16), ID2 (4), ID1 (1), MODE (1) | |||
** ZGUu - Get UID | |||
*** ID2 (4), ID1 (1) | |||
** ZSUU,ZXUU - Set Register by UID, ( ZXUU -> Set,Get ) | |||
*** UID (16), ADDR (1), bit 0.5, bits (0.5), Value (2) | |||
** ZGUU - Get Register by UID | |||
*** UID (16), ADDR (1), bit 0.5, bits (0.5) | |||
** ZSID,ZXID - Set Register by ID ( ZXID -> Set,Get ) | |||
*** ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5), Value (2) | |||
** ZGID - Get Register by ID | |||
*** ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5) | |||
* Mesasge: Servo -> Host | |||
** ZUID - broadcast UID | |||
*** UID (16), ID2 (4), ID1 (1), MODE (1) | |||
** ZRUU - return register by UID | |||
*** UID (16), ADDR (1), bit 0.5, bits (0.5), Value (2) | |||
** ZRID - return register by ID | |||
*** ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5), Value (2) | |||
=== File Access === | |||
* ZGFL | |||
* ZSDF | |||
* ZFWU | |||
=== Message === | |||
* ZMSG | |||
== MultiPacket for Long Message == | == MultiPacket for Long Message == | ||
[[CanServo/Protocol/MultiPacketsforLongMessage]] | [[CanServo/Protocol/MultiPacketsforLongMessage]] |
Latest revision as of 02:02, 22 November 2024
CAN Protocol Ver 1.1
- This protocol needs FW Ver 1.12+
- CAN ID
- 0x7FF : Servo -> Host
- 0x7FE : Host -> Servo
UID
- Message : Servo -> Host
- ZUID, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte>, <CAN Mode : 1 byte>
- 이 메시지는 서보 설정 ID1, ID2 중에 하나라도 0 이면 서보가 주기적으로 발신합니다.
- Message: Host -> Servo
- ZIDS, <UID : 16 byte>, <ID2 : 4 byte>
- ZIDS, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte>
- ZIDS, <UID : 16 byte>, <ID2 : 4 byte>, <ID1 : 1 byte>, <CAN Mode : 1 byte>
- UID 가 일치하는 서보는, 메시지의 길이에 따라, ID2, ID1, CAN Mode 까지 설정합니다.
- This message is delivered using the MultiPacket method below.
Write/Read Register's bits by ID or UID
- Message: Host -> Servo
- ZIDS - Set IDs by UID
- UID (16), ID2 (4), ID1 (1), MODE (1)
- ZGUu - Get UID
- ID2 (4), ID1 (1)
- ZSUU,ZXUU - Set Register by UID, ( ZXUU -> Set,Get )
- UID (16), ADDR (1), bit 0.5, bits (0.5), Value (2)
- ZGUU - Get Register by UID
- UID (16), ADDR (1), bit 0.5, bits (0.5)
- ZSID,ZXID - Set Register by ID ( ZXID -> Set,Get )
- ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5), Value (2)
- ZGID - Get Register by ID
- ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5)
- ZIDS - Set IDs by UID
- Mesasge: Servo -> Host
- ZUID - broadcast UID
- UID (16), ID2 (4), ID1 (1), MODE (1)
- ZRUU - return register by UID
- UID (16), ADDR (1), bit 0.5, bits (0.5), Value (2)
- ZRID - return register by ID
- ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5), Value (2)
- ZUID - broadcast UID
File Access
- ZGFL
- ZSDF
- ZFWU
Message
- ZMSG