Deeper integration with ROS2/Moveit. It should be possible to run a Micro ROS node on an M4 chip.
moveit: https://moveit.ros.org/documentation/concepts/
MicroROS: https://micro.ros.org/
Yes, running several tasks on a microcontroller takessome effort,this is why they invented RTOS. The other tasks are basically asynchros communications and possibly a higher-level of control.
I intend to prototypea few options. STM has their own FOC software not related to SimpleFOC. I will compare the two.
My “big picture” is a quadruped robot with 12 motors. I will almost certainly need a bus for control as I don’t want 12 serial cables running to the main control computer. So, is esential that the FOC controller also can run the bus interface. I don’t know which bus, CAN? or maybe just I2C. It needs to handle control and staus and error reporting.
The other problem is synchronized motion of 12 motors. Moveit uses the concept of “time tagged points”. Rather then sending “move to this point” it says “A time T you need to be at this point”. But “poiint” is has position, speed and acceleration components.
At this point I don’t know how I should doit. Plan is to run a robot in a simulation but with one real, physical joint. The physical joint would track one of the simulated joints
Higher level goal is a Boston Dynamics “Spot” at a $1,500 price point. Here is a fun videothat shows about 200 BLDC motors in sync.
https://youtu.be/7atZfX85nd4
This worksbetter forcontroll ing large numbers of motors