I read that G-code commands can be sent through a console/terminal over USB. What is a console/terminal and how do you use that?


2 Answers 2


There are several programs that could serve as a console to connect to a printer, put let's start somewhere: the USB connection.

Step 1: Connection with USB

When connecting the printer via USB for the first time, we will get a notification that some unknown item is connected. If we use windows we can learn what device it decided we now have via the device manager (Windows Key then typing in manager and Enter). It should be a COM Port as this picture shows.

Windows Device Manager

In this case, we have connected to COM4. To change the COM port, we can do so via a Rightclick->properties, then the connection settings and advanced. In the new window, we can change the COM port number to anything from 1 to 256, but it is recommended to keep the number somewhat low.

Make sure you run the printer's power supply and the connection via USB, as you can't use motor control commands if you have the power supply for the printer off.

Step 2: Using the COM-port

Now, we need a program that can use the COM port to connect to the printer. There are, as said, several out there. One such is Repetier Host, which comes with slicer and a good graphical interface. Another is Ultimaker Cura, which has the same capacities but lacks logging of all the commands exchanged. Because many are familiar with it as a slicer, I will look at it first. As a third option, I will take a look at Pronterface.

CAVEAT: Only one program that actively uses the COM port can be properly run at the same time, as the first program accessing the port will claim all uses for the COM port till it is shut down - any program or even other instances of the same program trying to access the port after that will have no control of the port.

Ultimaker Cura

After launching Ultimaker Cura, choose your printer. many printers are available as presets by now, so just import the printer you use or make a custom profile. At the moment the latest version of Cura is 4.1.0, and will look like this:

Cura GUI: Top toolbar

After switching to Monitor, it will automatically connect to the Printer via the COM port, in my case 4.

Cura GUI: Monitor Interface

Once more we test the connection via Home Home Cura and then use the Send G-Code prompt, confirming lines via Enter.

Cura GUI: G-code Prompt

Repetier Host

After running Repetier Host the first time, you need to configure your printer. Ctrl+P opens the config window for the printer. We need to know the Baud Rate of our printer, so I looked up the documentation of my Ender3, which told me 115200 is the right setting. Most printers seem to run on this setting. The other tabs decide the speeds, extruder number and limits and the bed shape. The rest isn't needed for this. My settings for the Ender3 are these: Repetier GUI: Connection Tab Repetier GUI: Printer TabRepetier GUI: Extruder TabRepetier GUI: Printer Shape Tab

Ok, we made our settings and saved via OK.

Now, we press the Connect button on the left side of the menu:

Repetier GUI: Disconnected left side menu

It should change to the blue Disconnect button and display other parts of the print now, showing that we have connected. Note that at the bottom of the screen a log is filled with all the commands and exchanges.

Repetier Host GUI: Connected left side menu Repetier Host Log snipped - very detailed

On the right side, we now can choose the Tab Manual Control Repetier Host: Right side of Interface

Before sending any commands, it is a good idea to press the Home Home button. This also serves as an extra test to see if the printer is connected correctly. Now we can use the Prompt G-Code to send our commands. The commands will be put into the log below.

send G-Code line Repetier Log


This is the first time that I used Pronterface. The first thing to do after downloading the Printrun package and running the Pronterface application is to press Port, then set the right Baudrate (115200 seems to work for many machines) and press connect.

Pronterface GUI extract: connect button

The GUI will saturate and the right log will show lots of things tested in connection. Note that in the lower right of the GUI, there is a temperature curve log, which can be very handy for troubleshooting, as it shows the change over a little time.

Pronterface GUI extract: after connecting Pronterace Log

Below the log, we find the input for commands, and if we send a command, we get a log entry of it:

Pronterface Lower Right Command Prompt


In addition to this answer, the OctoPrint 3D print server software contains a terminal which you can use to send G-code commands from a browser:


In the bottom string input box (under the check mark items) you put in a G-code command, which will be send to the printer when you hit the Send button. If the printer gives a reply to that command, it will be displayed in the log window above the check mark interface items.

OctoPrint terminal interface


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .