The new controller for OpenGB is loosely based on the open source RAMPS 1.4 control. The RAMPS 1.4 controler mounts on an Arduino Mega as an extension board (known as an Arduino Shield). The goal of the OpenGB controller is to include the following: motor driver for each motor, thermo couple and thermo resistor inputs, enough MOSFET power output for dual extruders, fan, and bed relay, endstops, and extra serial port terminals. This configuration keeps all of the active components on the professional board (arduino) and allows us to design with (mostly) with passive components.


The controller board will include the following features:

Stepper Motor Driver Sockets (7 drivers)

A total of seven motor drivers will be included, one (1) for the X-Axis, two (2) for the Y-Axis, two (2) for the Z-axis, and two (2) for extruders. The sockets are based on the Ti DRV8825 chip carrier board available from a number of suppliers and are currently used in the Gigabot 2.0.


The sockets will also add support for the fault and VREF pin on the Sure Step carrier boards. This will allow for better error detection and for programmatically setting the current of each driver.

Preliminary Motor Driver Socket Schematic

Thermocouple Support (3Circuits)

Two thermocouple inputs will be included in the preliminary controller. They will be based on the AD8495 chip.


Thermo Resistors (4 Circuits)

Four thermo resistor inputs will be included in the preliminary controller. They can be used for controlling the temperature of the two extruders or monitoring the temperature at other locations on OpenGB. The inputs can also be used for other analog sensing needs.

End Stop Terminals (8 terminals)

Eight (8) end stop inputs will be included in the preliminary controller. They will be labeled X-min, X-max, Y-min, Y-max, Z-min, Z-max, Filament Out, and extra.

Power Mosfets (4 circuits)

Four (4) power mosfets circuits will be included in the preliminary controller, based on the STP55 mosfet which is rated at 55 amps. Each circuits includes a indicator LED. The Circuits will be labeled Extruder 1, Extruder 2, Bed Relay, and Extra.

Serial Connections (2 terminals)

The arduino serial connection UART 0 and UART 1 will have terminals for easy integration. The SPI and I2C ports will also be broken out for onboard access.

These can will used in future iterations to avoid going through the USB hub with a direct UART to UART connection between the single board computer and the controller.

Reset Switch and Input

A reset switch will be included on the control board. There will also be a terminal block for an external reset switch. This switch should not be necessary for any normal operation.

Input for Induction bed Sensor

A single voltage divider will be included to enable the use of a bed touch less bed sensor to be used as the Z min limit switch


First revision is shown below, but I am assuming that it is going to change. After we test it I will post the design files, so you can take a look.

Patrick Finucane

Blog Post Author

Recommended Posts