User Tools

Site Tools


product:usb2ax:advanced_instructions

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
product:usb2ax:advanced_instructions [2013/04/02 05:41]
xevel
product:usb2ax:advanced_instructions [2014/02/10 20:10]
xevel
Line 59: Line 59:
  
 **How does it actually work?**\\ **How does it actually work?**\\
-SYNC_READ is a command only the controller can understand ​(using this command without such a controller will either not have any effect or, if a servo with ID 0xFD is present on the bus, might return an error 0x20).\\+SYNC_READ is a command only the controller can understandusing this command without such a controller will either not have any effect or, if a servo with ID 0xFD is present on the bus, might return an error 0x20.\\
 The controller converts SYNC_READ into multiple separate READ commands to get data from each servo, then sends back to the computer a single big packet containing all the data.\\ The controller converts SYNC_READ into multiple separate READ commands to get data from each servo, then sends back to the computer a single big packet containing all the data.\\
 This significantly decreases the effect of USB latency. This significantly decreases the effect of USB latency.
  
-Limitations +**Limitations**\\ 
- +A SYNC_READ command reads the same registers ​in each servo.\\
-You can use this instruction only when you want to read the same bytes in each servo.\\+
 The USB2AX limits the maximum number of servos to read from (N) to 32, and the maximum data length (L) to 6 bytes. The USB2AX limits the maximum number of servos to read from (N) to 32, and the maximum data length (L) to 6 bytes.
  
  
-**Instruction Packet** +**Instruction Packet**\\
   <​0xFF><​0xFF><​ID><​Length><​Instruction><​Param 1><​Param 2><​Param 3> ... <Param N+2><​Checksum>​   <​0xFF><​0xFF><​ID><​Length><​Instruction><​Param 1><​Param 2><​Param 3> ... <Param N+2><​Checksum>​
  
Line 84: Line 82:
  
  
-**Status Packet (Return Packet)**+**WARNING** Some choices of implementation of the Dynamixel SDK make it impossible to simply send this packet and expect a valid response. A modified version of the SDK will be availalbe to fix this problem.
  
 +
 +
 +**Status Packet (Return Packet)**\\
   <​0xFF><​0xFF><​ID><​Length><​Error><​Param 1> ... <Param L><​Param L+1> ... <Param L*N><​Checksum>​   <​0xFF><​0xFF><​ID><​Length><​Error><​Param 1> ... <Param L><​Param L+1> ... <Param L*N><​Checksum>​
  
Line 100: Line 101:
    
  
-== Example ​==+** Example ​**\\
 Reading the Present Position and Present Speed for 4 Dynamixel actuators with IDs of **0**, //1//, __2__, ''​7''​. Reading the Present Position and Present Speed for 4 Dynamixel actuators with IDs of **0**, //1//, __2__, ''​7''​.
  
-**Instruction Packet**\\+Instruction Packet\\
 0XFF 0XFF 0XFD 0X08 0X84 0X24 0X04 **0X00** //0X01// __0X02__ ''​0X07''​ 0X44\\ 0XFF 0XFF 0XFD 0X08 0X84 0X24 0X04 **0X00** //0X01// __0X02__ ''​0X07''​ 0X44\\
  
-**Response ​Packet**\\+Status ​Packet\\
 0XFF 0XFF 0XFD 0X12 0X00 **0X50 0X01 0XFF 0X01** //0X20 0X00 0X00 0X02// __0X10 0X00 0X10 0X02__ ''​0X00 0X00 0XFE 0X01''​ 0X5C  0XFF 0XFF 0XFD 0X12 0X00 **0X50 0X01 0XFF 0X01** //0X20 0X00 0X00 0X02// __0X10 0X00 0X10 0X02__ ''​0X00 0X00 0XFE 0X01''​ 0X5C 
  
product/usb2ax/advanced_instructions.txt · Last modified: 2018/04/02 22:16 by xevel