Is it a good practice to use jetson devices to control servo or dc motor drivers?

Hi, We want to create a “real world robot” at our startup, some of our engineers insist on using jetson devices to directly control motor drivers and some insist on using microcontrollers like stm32 or arduino as a bridge to create pwm motor control and wheel encoder readings.

based on your experiences, is it a good choice to control motor driver and read encoder data using jetson device’s pin? or it is better to use a middle micro-controller?

please consider this for both of the choices we will use a protection hardware to prevent damaging our hardware from harms like short circuits.

one reason is that some of our engineers insist on using micro controller as a middle man is to handle possible jetson device crashes.
others(including me) insist on using jetson device directly because it is to use the power of python(ROS) + future use of isaac-sdk and faster developing and debugging

I don’t have answer for this, the concerns from both sides are all correct, you may use the forum “Search” funtion to see if can find some references for similar use cases to help you make decision.

I am using teensy 4.0 for control. The reason is the same as your engineer.

Do you think your system can detect signals as expected when Jetson is under high load?
Troubles are common, especially during development. With an expensive LiDAR on your robot, can you allow accidents due to out of control?
If your robot has software trouble in flight, is there a way to land it safely?

It is not a recommended practice, but an easy test to understand the problem: try physically pulling out the csi camera cable while using csi camera. This will show you if your robot can be safety stop when your system encounter unusual problems.

Of course, I understand that there is the idea of using Jetson to control everything to keep costs down. And I think that is one of the correct answers.
However, if I consider the technology only, I believe it is preferable to separate the robot’s control processor from Jetson.

OVERDRIVE is implemented based on this design concept.

1 Like

Sure!, Thank you for your answer

Thank you for your answer, this was super helpful, I actually pulled out the Z camera :)) which is used for object detection , the jetson did not crash but because our controller didn’t get further signal from the controller node the robot kept running into the wall(just a simple test and no other sensors were involved).
based on my research and your answer, I think we should go with the middle micro-controller

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.