Hi all, been a while! I have been trying to find an answer to this question but haven’t had much luck so far. I know there’s an eclectic mix of knowledge here so I thought I’d come ask and see if anyone might be able to help.
My sand table currently uses an Arduino uno with a CNC shield running GRBL. It is fed from the serial ports of an Arduino Pro Micro, which in turn is reading the GCode from an SDCard.
I would like to convert my sand table to use an Einsy board off of an old Prusa printer. I know how to hook up the motors and endstops, but what I’m wondering is - how can I get the GCode from the Pro Micro to the Einsy? It looks like the Einsy only has the USB data pins for data transfer, so what could I use to convert the serial signal to something the USB connector understands? Is an FTDI TTL Serial to USB converter all I need?
Sorry for the esoteric niche question, but I thought someone here might just have some insights!
USB isn’t bidirectional or symmetrical. It has a USB Host side and a device side. The devices come in a lot of types, including mice and keyboards and serial devices. The serial to USB is a device that connects to a host.
There are some implementations of USB host in arduino. But because of the many kinds of devices, it is more complicated. You need to make sure it can send and receive serial data. Unless you find someone who has already done it, it isn’t something I would recommend.
Looking at the schematic:
It looks like the USB is connected to a 32u, which sends rx0/tx0 to an isolator (U10, sheet 4). I don’t see Rx0 or Tx0 broken out anywhere in the pinout.
However, Rx/Tx 1, 2, 3 are on the headers on sheet 5. You would have to add a serial port 2 in marlin config and set it to those extra hw uarts. I would target Rx2/Tx2 on P3. But I don’t know why any of them wouldn’t work.
It’s good to see your sand table is still running and you are still doing your hobbies.
Thanks, Jeff! I knew there’d be someone knowledgeable here - I also figured it might be you
I had forgotten about the host/device thing with USB. I will look at using one of the hardware UARTs on the Einsy header. I might also look into USB host shields or other controller that might be able to act as a host.
Yes still doing hobbies, though I only run the sand table when we’re having company and I want to show it off. But the reason for that is the noise from the steppers. I know there are other drivers I could install but I’ve had lots of problems in the past trying to get those to work. The Einsy already has quiet stepper drivers so I’m going to use it.
Hope all is going well with you!
You could definitely use something like a raspberry pi instead of the pro micro. That would handle the usb host well.
I may end up going that way. I have a few Pis lying around. Actually, I have a couple of Pi Zero Ws around too - hmm…