Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: link 2 identical cnc controllers so we can drive more motors #1362

Open
aguaviva opened this issue Oct 28, 2024 · 5 comments
Open
Labels
enhancement New feature or request

Comments

@aguaviva
Copy link

Machine Context

I am using a ESP32Duino (and it works like a charm) to control 4 motors of a 6 axis robot (ProArm RS2200). I would like to use a second ESP32Duino linked as a slave to the first one to drive more motors.

Feature Description

The 2 ESP32Duino could be linked somehow so they share the PWM clock.

Other Approaches

I believe alternate solutions wouldnt be feasible.

How I Can Help

I would like to hear and try your implementation ideas myself

@aguaviva aguaviva added the enhancement New feature or request label Oct 28, 2024
@MitchBradley
Copy link
Collaborator

We already have a 6-motor solution with the various 6-pack boards and the Jackpot board. It doesn't make sense to expend a lot of effort to try and synchronize two ESP32 when we already have good, well-debugged, fully supported ways to drive 6 motors.

@aguaviva
Copy link
Author

Sure I could buy some stuff, but I am here to learn and for the challenge ;)

@MitchBradley
Copy link
Collaborator

Okay, but we are not offering to help you. We prefer to spend our time doing stuff that helps everybody. Supporting all of the existing users with the myriad of existing hardware is challenge enough.

Maybe you could have a third MCU that sends commands to two 3-motor controllers.

@aguaviva
Copy link
Author

Feel free to ignore my messages and lets see what others say.

@AndreasEpp
Copy link

I have had good results by using multiple senders. I open up a serial connection to all ESP32 controllers and start sending commands to all at the same time. The starting deviation between controllers is about 2ms in my case. To coordinate the timing between controllers I use G93 inverse time mode on all moves. I am working right now on a new approach where I pre generate gcode files for all controllers, upload them via xmodem and start them at the same time. The starting deviation is still at 2ms, but I don't have to keep senders busy and worry about buffers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants