Jetson Nano RoboClaw Control

General discussion of using Roboclaw motor controllers
Post Reply
scubadiv3r
Posts: 2
Joined: Mon Feb 03, 2020 12:05 pm

Jetson Nano RoboClaw Control

Post by scubadiv3r » Mon Feb 03, 2020 12:07 pm

Hello!
I'm currently attempting to control a chain of 2x30 roboclaws using my Jetson Nano over UART communications. Only having one in the bus isn't a problem, but once you add more to the bus it starts sending packets super slow and it leads to erratic motor control. I've gotten it working with a bunch chained together on Raspberry Pi using this tutorial just fine: https://resources.basicmicro.com/packet ... erry-pi-3/


I'm really struggling to figure out why it won't work on the Jetson Nano, there were some settings that needed to be configured on the Pi to do this, but I haven't found a way to do so on the Jetson, if it's even necessary: https://resources.basicmicro.com/config ... rial-port/


Anyone work with a Jetson Nano before? Thanks a ton

User avatar
Basicmicro Support
Posts: 1323
Joined: Thu Feb 26, 2015 9:45 pm

Re: Jetson Nano RoboClaw Control

Post by Basicmicro Support » Tue Feb 04, 2020 10:25 am

After talking with you on the phone yesterday I think we determined it was how the Jetson is using the timeout argument in the Open function in the python library. In the Open function we set a packet timeout of 1 second and a byte timeout(the char timeout) to .01seconds. The char timeout appears to always have priority on RPi and Windows systems.

After testing on the Jetson, we determined the packet timeout was triggering. This was set to a default of 1 second since it had no effect under previous testing. However on the Jetson this should be set much lower. Equal to the char timeout is probably appropriate(eg 0.01seconds).

scubadiv3r
Posts: 2
Joined: Mon Feb 03, 2020 12:05 pm

Re: Jetson Nano RoboClaw Control

Post by scubadiv3r » Thu Feb 06, 2020 2:46 pm

There were two things wrong with our Jetson Nano: the mA on a pin of a Jetson Nano was like, 1mA, way lower than a Pi or an Arduino. The Roboclaw UART line needs between 5-25mA, so we had barely enough to control one Roboclaw, but once we added more to the bus it just didn't have enough amps. Additionally we did need to change the timeout in the library to .01. We used a USB-TTYL converter to boost the amps of the UART line and it worked. Thanks a ton!

Post Reply