
Yes I want to continue the conversation 
Just now realized how long I was silent about this topic…
3D-printer of usual volume (200x200x250 mm) was bought a year and a half ago. Started to collect my first prototype at once multi-axis a couple times during this time. The first time after having assembled the base with servo drives and running it on a microcontroller just to spin - I was horrified by the noise and abandoned this case on the shelf.
I decided to build a platform Stewart on stepper motors, were bought motors with gearboxes, long searched for a board with 6 drivers for stepper motors. As it turned out there is a very peculiar implementation of connection with drivers, sharpened only for one project - reverse engineering of the code took quite a long time and the process continues.
While thinking about using a ready-made board for a multi-axis robot or try to build it on my knees, with further development of the board, I realized that I lack the mathematical part of the robot control (vector + quaternion). Up to this point, the mathematics of calculating the moving part of the platform over the fixed base for linear actuators was ready.
As a result of the math and hardware testing (usability/size, etc.) I decided to go back to servos, keeping in mind stepper motors with planetary gearboxes and especially with wave gearboxes, which are quiet and more compact.
So, where I am now:
- I stick to autonomy in the work of the robot, so I use microSD memory cards to store scripts.
- Since the microcontroller doesn’t have much RAM I had to make some multi-axis scripts for myself in JSON Lines format.
{"at": 2538250, "pos": 70, "vector": ["3.96", "25.11", "65.22"], "quaternion": ["0.9827", "-0.1822", "0.0306", "0.0098"]}
{"at": 2538416, "pos": 35, "vector": ["0.25", "9.31", "33.74"], "quaternion": ["0.9909", "-0.1342", "0.0042", "0.0048"]}
{"at": 2538683, "pos": 85, "vector": ["9.27", "36.40", "76.25"], "quaternion": ["0.9738", "-0.2188", "0.0599", "0.0174"]}
{"at": 2538916, "pos": 15, "vector": ["-1.54", "3.86", "14.41"], "quaternion": ["0.9902", "-0.1298", "-0.0523", "-0.0027"]}
{"at": 2539150, "pos": 90, "vector": ["15.60", "38.84", "79.67"], "quaternion": ["0.9706", "-0.2199", "0.0951", "0.0254"]}
- Implemented methods on esp8266 to ping DeoVR wirelessly, open the script, and synchronize playing the script with the video (including jumping forward/backward through the video). Synchronization can be long.
- Re-printed the arm holder, servo levers, and base. I use carbon fiber tubing with a ball joint on one side and a metal ball on the other to connect to magnets sleeve holder.
- As microcontroller - Wemos D1 mini esp8266 + power board + card reader board + servo board pca9685.
I will run playback of multi-axis scripts.