Difference between revisions of "CanServo/Protocol/DroneCAN/ReadWriteRegister/en"

From HITEC_HELP
Jump to navigation Jump to search
 
(5 intermediate revisions by the same user not shown)
Line 4: Line 4:
You must set Node ID and Actuator ID. ( [[CanServo/ID/modes/en]] )
You must set Node ID and Actuator ID. ( [[CanServo/ID/modes/en]] )


NOTE: The SEQ values ​​below increase from 0 to 31.
NOTE: It is standard for SEQ values ​​to increase from 0 to beyond 31.
 
NOTE: When setting ID1 and ID2, set Target Actuator ID = 0.


1. Set a Register Value
1. Set a Register Value


* CAN ID = 8003F200
* CAN ID = 8003F200
* CAN DATA = <Actuator ID>, <ADDR>, < DATA LO BYTE >, < DATA HI BYTE >, SEQ
* CAN DATA = <Actuator ID>, < ADDR of Register >, < DATA LO BYTE >, < DATA HI BYTE >, SEQ
* Actuator ID = 0 (ALL), or 1~127
* Actuator ID = 0 (ALL), or 1~127
* ADDR >= 4
* ADDR >= 4
Line 22: Line 24:


* CAN ID = 8003F200
* CAN ID = 8003F200
* CAN DATA = 0x80+<Actuator ID>, <ADDR>, 0, 0, SEQ
* CAN DATA = 0x80+<Actuator ID>, < ADDR of Register >, 0, 0, SEQ
* Actuator ID = 0 (ALL), or 1~127
* Actuator ID = 0 (ALL), or 1~127
* ADDR >= 4
* ADDR >= 4
Line 34: Line 36:


* CAN ID = 0803F3xx
* CAN ID = 0803F3xx
* xx = Servo's Actautor ID
* xx = Servo's Node ID
* CAN DATA = <Actuator ID>, <ADDR>, < DATA LO BYTE >, < DATA HI BYTE >
* CAN DATA = <Actuator ID>, < ADDR of Register >, < DATA LO BYTE >, < DATA HI BYTE >
* NOTE: This format is not a DroneCAN standard format.


ex) 0003F307 07 0A 10 00
ex) 0003F307 07 0A 10 00

Latest revision as of 10:14, 17 April 2024

This protocol use custom data format of actuator.ArrayCommand and actuator.Status.

You must set Node ID and Actuator ID. ( CanServo/ID/modes/en )

NOTE: It is standard for SEQ values ​​to increase from 0 to beyond 31.

NOTE: When setting ID1 and ID2, set Target Actuator ID = 0.

1. Set a Register Value

  • CAN ID = 8003F200
  • CAN DATA = <Actuator ID>, < ADDR of Register >, < DATA LO BYTE >, < DATA HI BYTE >, SEQ
  • Actuator ID = 0 (ALL), or 1~127
  • ADDR >= 4

ex) 8003F200 07 6A 01 00 C0

  • Set value 0x0001 to register 0x6A of Servo 7.
  • Target Actuator ID = 7
  • Addr = 0x6A
  • Data = 0x0001

2. Get a Register Value

  • CAN ID = 8003F200
  • CAN DATA = 0x80+<Actuator ID>, < ADDR of Register >, 0, 0, SEQ
  • Actuator ID = 0 (ALL), or 1~127
  • ADDR >= 4

ex) 8003F200 80 0A 00 00 C0

  • Get value of register 0x0A from all servo.
  • Target Actuator ID = 0 (ALL)
  • Addr = 0x0A

3. Return Packet.

  • CAN ID = 0803F3xx
  • xx = Servo's Node ID
  • CAN DATA = <Actuator ID>, < ADDR of Register >, < DATA LO BYTE >, < DATA HI BYTE >
  • NOTE: This format is not a DroneCAN standard format.

ex) 0003F307 07 0A 10 00

  • Actuator ID = 7
  • Addr = 0x0A
  • Data = 0x0010

4. SAVE and RESET

  • SAVE: Set Value 0xFFFF to Target Servo's Register 0x70.
  • SERVO RESET: Set Value 0x0001 to Target Servo's Register 0x46.