Communicating between Nano and Smoothieboard via USB Port

I wish to send G-Code from a Nano to a Smoothieboard (actually a MKS Makerbase board) via USB for the purposes of controlling 4 Stepper motors but so far, I have had no success. As a test, I have a simple programme running on the Nano to write a G-Code statement using Serial.println once every second.

The relevant information is as follows:

  1. The sent G-codes appear OK when sent from Nano to the Arduino IDE Serial Monitor via USB.

  2. The Smoothieboard accepts G-Code (and operates correctly) when sent from an application (Pronterface) running on my PC via USB .

  3. With the Nano connected to the Smoothieboard via USB, nothing happens.

  4. Baud rates are set to 115200 on Nano, Smoothieboard and Arduino IDE Serial Monitor (I also tried slower speeds).

  5. I put an oscilloscope the data lines of the USB port and there appears to be data being transferred continuously with no apparent difference when a G-Code is sent in cases 1, 2 and 3 above.

I have not found anyone trying this so far and I am wondering if there is something fundamentally wrong. Most documentation on Arduino serial communication refers to using the Tx/Rx pins while the USB ports uses D+ and D- for a differencial signal.

Any ideas welcome.

Problem solved: As I understand it, an Arduino cannot be used as a master USB port of Host Port as unlike a PC it does not have the resources to support it.

With regard to running my Smoothieboard from an Arduino. I can use the Rx/Tx inputs (which I had not noticed before). Works well too. Much faster speeds and smoother acceleration than can be achieved from running stepper motors directly from Arduino.

Can you share the code?