0% found this document useful (0 votes)
45 views17 pages

GenX Technical Reference Manual

Uploaded by

bharghav
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views17 pages

GenX Technical Reference Manual

Uploaded by

bharghav
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

GenX 4-Axis 3D Printer Controller

GenX 3D Printer Controller


4 Axis, Atmega1284P
Released as Open Hardware

Technical Manual
Preliminary

SOC Robotics, Inc.

SOC Robotics, Inc 1 10/1/2012


GenX 4-Axis 3D Printer Controller

www.soc-robotics.com
Features:
• ATmega1284P processor (20MHz)
• 4 axis stepper driver A4983 or A4988
• DIP switch step mode selection: 1, ½, ¼, 1/8, 1/16
• 14A Heat bed power control with separate power
• 14A Extruder Power Mosfet
• 4.7K thermistor load resistors
• Optional precision 1.024V thermistor reference
• uSD port
• UART1 RJ11 connector for optional DRO/Pendent connection
• 2 3.5A PWM Fan control outputs
• 5 Limit switch inputs, 3 with opto support
• Reset switch
• ATtiny45 debugwire port
• Extra analog input with thermistor support
• I2C port compatible with other SOC embedded products
• Latest Marlin and grbl G Code control software ported
• SOC GStep control software avaialable
• Small form factor (4.7x2.4 in)
• 12-24 volt operation supported
• Jumper allows USB to power board
• Open Hardware design with full Eagle schematic

Overview
GenX is the latest in 3D printer controllers with Arduino compatibility, 4 axis stepper drivers
(A4983 or A4988), uSD storage, 5 limit switch inputs 3 of which support opto inputs, two 14A
power mosfets with thermistor input for extruder and heat bed control, two PWM fan 3.5A
outputs, I2C port, analog input port and two sets of screw top connectors to allow independent
power sources for main board and heat bed power. The stepper drivers support full, ½, ¼, 1/8
and 1/16th microstepping. The All necessary electronics are on one board.

The latest open source version of Marlin grbl have been ported to GenX with extra commands for
fan control and host boot initiation. The board comes with an stk500v2 compatible bootloader for
Arduino compatibility and AVR Studio STK500 support. Open source grbl has also been ported
to the board. Both Marlin and grbl can be downloaded from the SOC web site. SOC’s own G
Code control software GStep is also available for GenX. GStep supports full 3D circular and
linear interpolation and automatically integrates DRO’s, joysticks and optional smart motor
controllers. GenX is capable of driving small Mills and Lathes.

To support PCB heat beds a separate power port is provided with a dedicated power connector.
The board is shipped with a jumper installed that connects the main DC IN with the heat bed
power connector so. If a separate power source is available then this jumper can be cut to
support two separate power supplies.

A second UART connection is available for an optional full color touch screen pendant.

SOC Robotics, Inc 2 10/1/2012


GenX 4-Axis 3D Printer Controller

GenX has two processors – ATmega1284P and ATtiny45. ATmega1284P implements the Marlin
3D printed embedded control software while the ATtiny45 implement a 2 ch PWM fan control
and analog/digital input port. The analog input has optional components to allow a thermistor
connection. Source code for the ATtiny45 is available as an AVR Studio 4.19 Project in
GenXFan.zip. The board is shipped with 4.7K thermistor load resistors to support 100K
thermistors but an optional circuit using a precision 1.024V source can be added for high
performance thermistor measurement.

The Marlin port has been enhanced with additional M commands to support jump to bootloader,
Fan1/Fan 2 independent PWM control and access of the digital/analog port.

GenX is an open hardware design and full Eagle CAD files are available on github. The
schematics are reproduced in this Technical Brief.

SOC Robotics, Inc 3 10/1/2012


GenX 4-Axis 3D Printer Controller

SOC Robotics, Inc 4 10/1/2012


GenX 4-Axis 3D Printer Controller

GenX Setup

Power Input
GenX requires 12-24V at 6-15A depending on the type of heat bed used. PCB heat beds require
approximately 12A so size the power supply accordingly. There are two different power input
options – single supply or dual supply. A single supply of suitable amperage can be connected to
either of the two different power input connectors. For a dual supply the jumper connecting the
two different power connectors must be cut so one supplies power to the heat bed while the
other supplies power to the rest of the board. Dual power supplies should be used if a PCB heat
bed is used as these require about 12A for correct operation. The power input is not reverse
polarity protected so make sure to connect correctly.

Motors
There are four stepper motor drivers labeled X, Y, Z and A. A is used to drive the extruder
motor. The step mode of all four motors is set by one DIP Switch. Default step mode is 1/16th
microstep – change the DIP settings for other modes.

The A4988 driver is capable of delivering 2A/phase at 24V. A potentiometer is used to set the
nominal operating current. The picture below shows the setting that delivers close to the
maximum current. Depending on the motors used in the printer a setting from 1 to 1.6A is
sufficient. Note that current draw is related to step mode so when selecting higher
microstepping modes more current should be selected.

SOC Robotics, Inc 5 10/1/2012


GenX 4-Axis 3D Printer Controller

Limit Switches
There are five limit switch inputs three of which support optical non-contact switches as shown
in the picture below.

If mechanical switches are used connect them as shown below. Note that one or two limit
switches in parallel (as shown) or serial connection can be used. Each mechanical limit switch
input is pulled high with a 10K resistor on the board so closing a normally open limit switch
pulls the input low indicated an end has been reached.

If optical switches are used connect them as shown below. Optical limit switches use an infrared
light source that is either interrupted or reflected from a surface. GenX supplies an load resistor.

SOC Robotics, Inc 6 10/1/2012


GenX 4-Axis 3D Printer Controller

Extruder Motor, Heater and Thermistor


The extruder assembly consists of a stepper motor, heater and thermistor. The extruder motor
advances the filament while the heater melts the filaments at a rate sufficient for smooth
extrusion. The thermistor measures the temperature of the heater block. GenX uses 4.7K load
resistors that are compatible with 100K thermistors.

One end of the heater resistor is connected to Power PWM and the other end is connected to VPP.
One end of the thermistor is connected to GND and the other end to themistor.

GenX supports two different thermistor drive circuits – a standard circuit and high precision
circuit. The default configuration is standard. The standard circuit uses a 4.7K load resistor in
series with the thermistor. As the thermistor heats up its resistance drops causing the voltage
THERM to also drop. A calibration table in Marlin then converts this voltage to the correct
reference temperature. The high precision circuit is optional. The precision circuit uses a 1.024 V
reference which reduces the self heating of the thermistor for more precise temperature
measurement.

Heat bed Heater and Thermistor


GenX supports two different heat bed configurations. Resistive heat beds and PCB heat beds. A
common 14A Power Mosfet is used for both configurations.

SOC Robotics, Inc 7 10/1/2012


GenX 4-Axis 3D Printer Controller

Resistive heat beds usually use 4-6 ohm high wattage resistors to heat an aluminum block. These
heat beds require 3-4A but take longer to reach nominal operating temperature. This uses a
single power supply connected as shown below.

PCB heat beds require considerably more power and a separate connection is provided on the
board. This configuration requires removal (or cutting) a wire jumper installed at the location
indicated. This separates power routed to the heat bed Power Mosfet from the main power
supply. It’s usually good practice to use two separate power supplies when using a PCB heat bed
due to the power surges experienced during operation which may effect the stepper driver
circuit.

SOC Robotics, Inc 8 10/1/2012


GenX 4-Axis 3D Printer Controller

Fan Control
There are two PWM controlled fan outputs. Each is capable of 3.5A of continuous output. The
Fan output is controlled by a separate processor (Attiny45) under control of the main processor.
GenX Marlin has been modified to support either a linked dual fan mode or two independent fan
modes. Independent operation supports a fan and/or LED control.

Analog Input
The Attiny45 has an additional IO port that can be configured to support digital output, digital
input or analog input. The analog input circuit has pads to mount load resistors to support an
additional thermistor circuit. The diagram above shows resistor R58, R59 and C62 which are not
installed. Picture on the left shows the optional thermistor parts installed.

Loading Marlin Software


TBD

Loading grbl Software


TBD

Loading GStep Software


GStep is available as a downloadable hex file (GstepV198.hex). To load Gstep into GenX place a
jumper between GND and MISO pins on the ISP programming port and press the RESET button.
This starts the stk500v2 bootloader. Then use either AVR Studio 4.19 or AVR Dude to load the
program on GenX.

Optional I2C Devices


The I2C port supports a number of SOC devices such as DRO’s, Joystick (CJ34) and Smart Motor
Controllers (MM120, MM130, MM165, MM220). These devices are automatically identified by

SOC Robotics, Inc 9 10/1/2012


GenX 4-Axis 3D Printer Controller

the GStep application. Marlin and grbl must be modified to recognize the new devices. See
Technical documentation for these devices available from the SOC web site for additional
information.

Uart1 Port Color Touch Screen Pendant


A Color touch screen Pendant is under development designated CD2432. This device will attach
to the USART1 port and provide GenX with a display/control interface for both Marlin and
GStep. The display will use an Atmel AT32UC3C1512 processor running at 64MHz with
hardware FPU support. The design will be released as an open hardware/open software project.
The specific screen used is shown below and measures 50x37mm (2.4”) with a resolution of
240x320 pixels. The display has an integrated touch sensitive screen providing a rich user
interface.

The screen size with respect to GenX is shown below.

SOC Robotics, Inc 10 10/1/2012


GenX 4-Axis 3D Printer Controller

GenX Processor Pin Assignment


In order to better follow the changes made to the Marlin code the Atmega1284P processor pin
assignments are shown below:

Extruder Heater is controlled by HEAT – temperature read by THERM. Heat Bed is controlled
by HEAT_2 – temperature read by THERM2.

TXD1/RXD1 is connected to USB serial chip XR21V1410. TXD2/RXD2 is connected the USART
port pins.

SOC Robotics, Inc 11 10/1/2012


GenX 4-Axis 3D Printer Controller

Dimensions
Mounting holes on 2x4 inch centers.

SOC Robotics, Inc 12 10/1/2012


GenX 4-Axis 3D Printer Controller

SOC Robotics, Inc 13 10/1/2012


GenX 4-Axis 3D Printer Controller

SOC Robotics, Inc 14 10/1/2012


GenX 4-Axis 3D Printer Controller

SOC Robotics, Inc 15 10/1/2012


GenX 4-Axis 3D Printer Controller

SOC Robotics, Inc 16 10/1/2012


GenX 4-Axis 3D Printer Controller

Notes:

SOC Robotics, Inc 17 10/1/2012

You might also like