User Tools

Site Tools


product:usb2ax:faq

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
Last revision Both sides next revision
product:usb2ax:faq [2013/04/01 04:35]
xevel [Q: Dynamixel SDK: how do I use it with the USB2AX?]
product:usb2ax:faq [2016/12/05 21:09]
xevel [Q: Servos: which ones are compatible with the USB2AX?]
Line 2: Line 2:
  
 ==== Q: USB2AX: What's that and why would I need one? ==== ==== Q: USB2AX: What's that and why would I need one? ====
-R: All is explained [[product:​usb2ax:​usb2ax#​What is the USB2AX?|here]] :-)+R: All is explained ​in [[product:​usb2ax:​usb2ax#​What is the USB2AX?]] :-)
  
 ==== Q: Servos: which ones are compatible with the USB2AX? ==== ==== Q: Servos: which ones are compatible with the USB2AX? ====
-R: See [[product:​usb2ax:​usb2ax#​What servos can it talk to?|here]]!+R: See [[product:​usb2ax:​usb2ax#​What servos can it talk to?]]!
  
  
 ---- ----
  
 +==== Q: I'm using Labview and sometimes have problems, like computer crashes and BSOD, what's going on? ====
 +R: Please use the VISA driver in [[http://​digital.ni.com/​public.nsf/​allkb/​E75A1D0CCCC4D93486257433006AA3C0?​OpenDocument | Labview in Synchronous]] mode only. 
  
  
Line 25: Line 27:
  
 ==== Q: Dynamixel SDK: how do I use it with the USB2AX? ==== ==== Q: Dynamixel SDK: how do I use it with the USB2AX? ====
-R: The [[http://​support.robotis.com/​en/​software/​dynamixelsdk.htm|Dynamixel SDK]] provided by Robotis is a software library that makes it easy to control Dynamixel servos from a C++ application. ​While the Windows ​version ​should work out of the box, the Linux version does not: you have to replace the dxl_hal.c file with [[https://paranoidstudio.assembla.com/code/paranoidstudio/git/​node/​blob/master/usb2ax/soft/dxl_hal.c|this one]] before you compile ​the library.+R: The [[http://​support.robotis.com/​en/​software/​dynamixelsdk.htm|Dynamixel SDK]] provided by Robotis is a software library that makes it easy to control Dynamixel servos from a C++ application. ​A modified ​version ​adding support for sync_read and sync_write is available in the [[https://github.com/Xevel/usb2ax/tree/master/pc_software/usb2ax_DynamixelSDK/|GitHub Repository]]
 +While the Windows version should work out of the box, the Linux version does not.
  
-If you need to switch back to the USB2Dynamixel,​ you will have to change back the file to the original one, and recompile the library, then your application.+Gotchas with the Dynamixel SDK for Linux: 
 +  * You have to replace the //​dxl_hal.c//​ file with [[https://​raw.github.com/​Xevel/​usb2ax/​master/​pc_software/​usb2ax_DynamixelSDK/​linux_compatibility/​dxl_hal.c|this one]] before you compile the library. 
 +  * Your user account needs to be added to the **dialout** group for the serial port to be accessible. 
 +  * If you have frequent timeout errors, you might try to change l.154 of //​dxl_hal.c//​ from ''​gfRcvWaitTime = (float)(gfByteTransTime*(float)NumRcvByte + 5.0f);''​ to ''​gfRcvWaitTime = (float)(gfByteTransTime*(float)NumRcvByte + 34.0f);''​  
 +  * If you need to switch back to the USB2Dynamixel,​ you will have to **change back the file to the original one**, and recompile the library, then your application.
  
 **What'​s going on?** The Dynamixel SDK assumes the interface is FTDI-based, and thus searches a device named ttyUSBx, while the USB2AX uses the integrated CDC/ACM driver - which names the device ttyACMx. The second problem is that after opening the device, the Dynamixel SDK tries to set parameters which do not exist in the CDC/ACM driver. **What'​s going on?** The Dynamixel SDK assumes the interface is FTDI-based, and thus searches a device named ttyUSBx, while the USB2AX uses the integrated CDC/ACM driver - which names the device ttyACMx. The second problem is that after opening the device, the Dynamixel SDK tries to set parameters which do not exist in the CDC/ACM driver.
  
 ==== Q: How to power the servos? ==== ==== Q: How to power the servos? ====
-R:+R: To power the Dynamixel servos that the USB2AX will control, you now have a variety of possibilities:​ 
 +  * [[http://​www.trossenrobotics.com/​6-port-ax-mx-power-hub|6 port AX/MX Power Hub by Trossen Robotics]]. Small, efficient, cheap, perfect for most of your needs! 
 +  * SMPS2Dynamixel,​ to power the servos from a Switch-Mode power supply. 
 +  * through a powered controller (CM-5, CM-510, CM-730, CM-900, Arbotix...),​ for testing purpose mostly. [[http://​www.youtube.com/​watch?​v=UHKaYuaZi4A|See an example with HexaWheels by Siempre Aprendiendo]]. 
 +  * make your own power adapter. 
 + 
 +**How do I build my power adapter?​**\\ 
 + 
 +**WARNING: check the [[http://​support.robotis.com/​en/​product/​dynamixel/​dxl_ax_main.htm|pin assignment in the Dynamixel connector]] before anything else! Be extremely careful not to mess up the cables, otherwise you could damage your whole installation!!! We won't accept any liability.** 
 + 
 +//Simple Power cable// (must be used at the end of the bus):\\ 
 +Cut a Dynamixel cable and solder a battery connector or battery cable to the GND(-) and VDD(+) lines. Protect the solder joints with heat-shrink tubing or electrical tape. You can forget or remove the DATA line altogether. 
 + 
 +//Y power cable// (can be used in place of any other cable):\\ 
 +Cut the GND and VDD lines of a Dynamixel cable around the middle, be careful not to damage the DATA line. Solder both halves of each cable to your battery connector or cable, GND on - (black), and VDD, the middle one, on + (red). Protect the solder joints with heat-shrink tubing or electrical tape. 
  
 ==== Q: How open is the project? ==== ==== Q: How open is the project? ====
 R: Nearly as open as can be! You can get the sources for the firmware, the Eagle Files for the PCB, the Bill of Material, and all possible information on the project. The license used allow you to do nearly anything as long as you give proper credit. Software is similar to a BSD (open a source file for details), hardware is OSHW 1.0 and documentation is CC-BY-SA-3.0.\\ R: Nearly as open as can be! You can get the sources for the firmware, the Eagle Files for the PCB, the Bill of Material, and all possible information on the project. The license used allow you to do nearly anything as long as you give proper credit. Software is similar to a BSD (open a source file for details), hardware is OSHW 1.0 and documentation is CC-BY-SA-3.0.\\
-I learned a lot thanks to other'​s people Open Source projects, so this is my little contribution :-).+I learned a lot thanks to other'​s people Open Source projects, so this is my little contribution :-).\\ 
 +If you spot anything missing, this is an error and I'd like to correct it ASAP! Please send an email to //admin {at} xevelabs.com//​ to let us know! 
  
 +==== Q: My USB2AX stopped working! What do I do? ====
 +R: As you can see, the USB2AX is pretty small and uses components hard to service without specialized tools... You can try contact //support {at} xevelabs.com//,​ we're interested to know how it happened, and we'll see what we can do. :-/
product/usb2ax/faq.txt · Last modified: 2018/04/02 22:21 by xevel