Difference between revisions of "CanServo/Protocol/V1.1"

From HITEC_HELP
Jump to navigation Jump to search
 
(2 intermediate revisions by the same user not shown)
Line 18: Line 18:
** 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>
** The servo with matching UID sets ID2, ID1, and CAN Mode depending on the length of the message.
** The servo with matching UID sets ID2, ID1, and CAN Mode depending on the length of the message.
**


* This message is delivered using the MultiPacket method below.
* This message is delivered using the MultiPacket method below.
Line 26: Line 27:
** ZGUu - Get UID
** ZGUu - Get UID
*** ID2 (4), ID1 (1)
*** ID2 (4), ID1 (1)
* Servo -> Host
** ZUID


=== Write/Read Register's bits by ID or UID ===
=== Write/Read Register's bits by ID or UID ===
Line 37: Line 40:
** ZSid - Set Register by ID
** ZSid - Set Register by ID
*** ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5), Value (2)
*** ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5), Value (2)
** ZXid - Set/Get Register by UID
** ZXid - Set/Get Register by ID
** ZGid - Get Register by ID
** ZGid - Get Register by ID
*** ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5)
*** ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5)

Latest revision as of 02:05, 20 October 2025

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>
    • This message is sent periodically by the servo if either servo setting ID1 or ID2 is 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>
    • The servo with matching UID sets ID2, ID1, and CAN Mode depending on the length of the message.
  • This message is delivered using the MultiPacket method below.

UID 2

  • Message: Host -> Servo
    • ZGUu - Get UID
      • ID2 (4), ID1 (1)
  • Servo -> Host
    • ZUID

Write/Read Register's bits by ID or UID

  • Message: Host -> Servo
    • ZSuu - Set Register by UID
      • 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)
    • ZXuu - Set/Get Register by UID
    • ZSid - Set Register by ID
      • ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5), Value (2)
    • ZXid - Set/Get Register by ID
    • ZGid - Get Register by ID
      • ID2 (4), ID1 (1), ADDR (1), bit 0.5, bits (0.5)
  • Mesasge: Servo -> Host
    • 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, id2: 4 byte, id1: 1 byte, level: 1 byte, msg

History

2025_06_19

  • Replace message by bug in ZRUU, ZRID
    • ZSUU -> ZSuu
    • ZXUU -> ZXuu
    • ZGUU -> ZGuu
    • ZRUU -> ZRuu
    • ZSID -> ZSid
    • ZXID -> ZXid
    • ZGID -> ZGid
    • ZRID -> ZRid

Long Message

CanServo/Protocol/LongMessage