Difference between revisions of "Stratasys uPrint Retrofit"

From CNC.xyz Wiki
Jump to: navigation, search
Line 543: Line 543:
| 14 || Door Switch
| 14 || Door Switch
| 15 || N/C
| 15 || Input from U6 (just a ground signal?)
| 16 || Power Enable (turns on machine)
| 16 || Power Enable (turns on machine)
Line 557: Line 557:
| 21 || POWER ON (keeps machine running when main power switch is disabled)
| 21 || POWER ON (keeps machine running when main power switch is disabled)
| 22 || N/C
| 22 || Head Thermostat (TP 25)
| 23 || On / Off Power Switch  
| 23 || On / Off Power Switch  

Revision as of 01:14, April 13, 2020

Controlling Stepper Motors

The X, Y and Z axis stepper motors are powered by two Allegro A3959 Full Bridge PWM Motor Drivers, one for each of the two coils in the stepper motors.

The inputs for each of the stepper motors can be found on PDB connector J13. Each axis contains the following individual connections: Phase A, Phase B & Voltage Reference A, Voltage Reference B. Additionally all motor drivers can be put to sleep simultaneously though J13 Pin #45.

As the stepper motors use a regular Full Bridge motor driver, they are not as easy to control as with regular stepper motor drivers that accept step and direction inputs. However, since we are controlling the signals directly, we can easily send whatever style of signal we want to obtain, for example: full stepping, half stepping or microstepping.


There are two phases we have control over the input of: Phase A and Phase B. These phases are directly linked to the two coils of the stepper motor and ultimately determine the direction the motor spins. Because of the design of the stepper motor, the two Phases are linked to one another, but 90 degrees apart. We will need to send a square wave signal to control the phases in the following type of pattern to both motor driver chips:

Forward Motion: HIGH - LOW, HIGH - HIGH, LOW - HIGH, LOW - LOW

Reverse Motion: HIGH - LOW, LOW - LOW, HIGH - LOW, HIGH - HIGH

By changing the logic levels of the Phases, we control the direction the current travels inside of each coil in the stepper motor. Each change represents one step, so moving from Phase A HIGH & Phase B LOW to Phase A HIGH & Phase B HIGH results in one step as one coil is energized after the other, advancing the motor. If the pattern were reversed, the motor would spin in the opposite direction.

Voltage Reference (VREF)

We also have control over voltage reference, which is an analog signal that regulates the amount of current that is able to flow through each coil of the motor. If we were using a full stepping scheme, the voltage references would follow a LOW / HIGH pattern similar to the phase waves.

If we modulate the voltage reference signal, we adjust the current and as a result end up with the ability to preform microstepping within the full steps.


Microstepping allows for a stepper motor to move a fraction of a step to increase the resolution of the motor. When you combine both the square wave of the phase control and the modulated data of the voltage references, you have a variable level of current flowing through the motor coils.

An example of the motor control can be shown here:

Stepper Motor Microstepping Phases.png

The shape of the Voltage Reference A is a Sine wave and Voltage Reference B is offset by 90 degrees, which is the same as a Cosine wave. The computation of Sine and Cosine waves is very time consuming on a microcontroller. The easiest way to make for quick outputs is to use a pre-generated lookup table and step through the values.

An example of a 1/8 microstepping table is shown here:

1/8 2/8 3/8 4/8 5/8 6/8 7/8 8/8
Sine 0% 20% 38% 56% 71% 83% 93% 98%
Cosine 100% 98% 93% 83% 71% 56% 38% 20%

By controlling the voltage reference output as an analog signal, we have full control over the position of the motor within a full step. The best way to accomplish this is through a Digital-to-Analog (DAC) converter, though it can also be achieved through pulse-width-modulation (PWM). The most effective method to control the stepper motors is through an additional microcontroller that can take logical inputs such as step and direction and output the four signals to the two motor driver chips.

(Eventually we will have examples ready for use with an Attiny85 or Arduino).

Controlling the Servo Extruder Motor

The servo motor for the filament extruder is controlled with an STMicroelectronics L298P Dual Full Bridge Motor Driver. The extruder motor is a DC powered motor with a built in quadrature encoder that sends a signal back for computation of the current position.

The inputs for the servo motor are found on PDB Connector J13. There are two input pins for each of the motor driver signals: Phase A & B, as well as two outputs to be read from the quadrature motor encoder: Channel A & B. Additionally the servo and stepper motor drivers can be put to sleep simultaneously though J13 Pin #45.

Motor Control Phases

The L298P requires two inputs in order to control both the speed and direction of the servo motor. The signal involved uses pulse width modulation (PWM) in order to provide varying values of speed and direction to the motor. This is best done by providing an analog TTL voltage signal to the motor controller where a voltage of 0VDC is a stopped motor and 5VDC is a motor running at full speed.

While sending a full TTL signal to the motor chip will run it at full speed, we also need to control the direction. This can be done by only sending signals to one input at a time. For example, to run at 100% clockwise, we will send a 100% signal to Phase A and a 0% signal to Phase B. To run counter-clockwise we would send the opposite, 0% signal to Phase A and 100% signal to Phase B. A stopped motor would need a 0% signal on both Phase A and Phase B.

Since running the motor at 100% speed at all times would not be very useful, the logic controller must control the speed accurately. It should slowly ramp up and down to prevent large inrushes of current and bursts of speed that may be unnecessary. This should be done by the logic controller once the data from the encoder is read.

Quadrature Encoder

Quadrature Diagram.png

The Quadrature Encoder is a simple set of square wave pulses that are sent back to the logic board using two offset encoding wheels physically connected to the rotating motor shaft. They send a set number of pulses per rotation of the motor shaft and can also determine what direction the motor is spinning. At this time it is believed the encoder used on the servo motor is capable of 1000 counts per rotation. The exact number is not necessary to be known, but whatever method is used to read the signal, must be capable of reading the data in at a quick enough rate to accurately count the rotational position.

For example, a motor spinning at 100 RPM is 1.6 rotations per second. With 1000 signal steps per rotation, the logic computer must be able to read 1600 state changes per second at a minimum. It is recommended that there be 4-5 times that number to accurately account for all state changes, so an input signal of 8,000 readings per second (or 8Khz) would be sufficient at that speed. For our purposes, we recommend using a device that is capable of 30Khz or higher to prevent steps from being missed. The extruder servo motor shouldn't rotate more than approximately 200 RPM (16Khz minimum encoder read rate).

Reading either channel A or channel B is adequate for determining how many divisions the servo motor has changed, but in order to determine the direction the motor is spinning, both channels must be compared to one another. By comparing the data between channel A and B it can be seen which direction the motor is spinning based on which channel sends a High Logic level signal first.

For example if channel A sends a logic high signal before channel B sends a logic high signal, the motor may be spinning clockwise. If channel B sends a logic high signal before channel A does, it may be spinning counter-clockwise. The actual directions are not important, as your main logic controller should be able to invert the direction on the configuration settings should it not be correct initially.

PID Control

Knowing the motor's position and having the ability to control the speed and direction of the motor is only half the battle. We need to close the loop between the encoder signals and the motor output signals through a Proportional - Integral - Derivative (PID) control system.

In order to move the motor, for example 1000 steps based on the encoder readout, we will need to supply power to the motor to spin in the correct direction. Let's say the motor starts spinning at 100% speed and then counts 1000 steps on the encoder and then turns off the motor power. The motor will keep spinning beyond 1000 steps, and perhaps stop at 1200 steps, this is called overshoot.

We need a system that will slowly ramp up the motor speed at the beginning of the movement, reach the highest possible speed and then as it approaches the 1000 count, slowly ramp down the motor speed until it stops on exactly 1000 counts. This can best be accomplished with a PID Controller, which takes into account the speed, acceleration and position of the motor and monitors how those numbers change over time.

There are three factors that must be determined for the PID system:


The Proportional value is the most important factor in the movement of the system. It determines how much power is to be supplied to get the motor to the correct position. As an example, if we wanted to move a motor 1000 positions on the encoder counter, a proportional approach would supply 100% power the farther away from the intended target and reduce power the closer you get. This approach generally works, but it results in overshoot, or takes a long time to reach the 1000 count.


The Integral value aids the power calculation by looking at the speed at which the motor is spinning as it approaches the intended value. If we add an integral value, it will greatly help reducing the potential for overshooting by adjusting the power accordingly. The Integral value effectively helps the motor spin as fast as it can given the speed it is currently rotating.


Similar to the Integral, the Derivative value works works by adjusting the motor power to ensure it reaches the intended target in relation to how close the motor is from the intended value. In our example if we want to reach 1000 positions on the encoder counter, but we arrive at 1001, the Derivative function will aid in reaching 1000 without going too deeply into the opposite direction and creating an oscillation called ringing.

PID Tuning

In order to build an effective PID system, the motor must be tuned to determine what the proportional, integral and derivative values are for the system. This is something that needs to be determined for the uPrint servo directly with your intended control system by adjusting PID values.

The goal of tuning is to achieve the fastest response from a given input without overshooting and without ringing. There are many tuning methods, but it is generally best to adjust the values one at a time in order.

For your reference a known PID configuration for the uPrint Servo motor is here:

Parameter Value for uPrint Servo Motor
KP Proportional Unknown
KI Integral Unknown
KD Derivative Unknown

Reading Thermocouple Temperatures

The thermocouples on the uPrint are a Type K, with a heat range from −200°C to 1,260°C. The thermocouples are manipulated using an Analog Devices AD579 Analog to Digital converter and a Texas Instruments MV3931 Voltage Comparator. Note: These chips may differ depending on the date of manufacture of your printer as Analog Devices has discontinued the AD579. The temperature data is offset and the effective range of the thermocouple is narrowed against a voltage reference.

The temperature can be read on the Power Distribution Board (PDB) at the area marked "TEST PTS". The uPrint outputs an analog voltage in reference to ground that changes 0.1 degree Celsius per 10 mV between 0V and 5V. The Type K thermocouple is therefore capable of a range of approximately 500 degrees across that voltage.

This analog voltage can also be read on the PDB on J13 pins 35 (model extuder), pin 37 (support extruder) and pin 39 (chamber temperature). The easiest way to read these temperatures is to read them with a 12-Bit Analog to Digital converter such as the Microchip MCP3204. This chip is capable of sending the voltage data over SPI bus to be read by a common controller card such as Duet or an Arduino. One MCP3204 is capable of reading four different data channels, which is more than adequate for the uPrint's three thermocouples.

The temperature range for the 12-Bit SPI data is believed to be from 0 degrees Celsius to 500 degrees Celsius. An example of the SPI data that is expected can be seen in the following table:

SPI Binary Data Input Voltage Temperature
0000 0000 0000 0.00V 0 degrees C
0000 0000 1000 0.01V 1 degrees C
0000 1000 0000 0.16V 16 degrees C
0001 0000 0000 0.31V 31 degrees C
0010 0000 0000 0.63V 63 degrees C
0100 0000 0000 1.25V 125 degrees C
1000 0000 0000 2.5V 250 degrees C
1111 1111 1111 5V 500 degrees C

Note: These numbers are subject to change as they have not been verified.

Temperature Alarms

As important as the thermocouple temperature readings, are the status of the temperature alarms. The uPrint is equipped with two alarms that monitor for potential failures of the thermocouples. The head alarm monitors both the model and support temperature thermocouples, and the chamber alarm monitors the chamber thermocouple.

The alarms will trigger in the following situations: Damaged thermocouple, unplugged thermocouple.

It is important that you monitor for the alarm condition to ensure that your printer does not overheat when presented with a damaged or unplugged thermocouple. Your controller board will otherwise not know if you have an unplugged thermocouple, or a temperature reading of 0 degrees Celsius.

The alarm conditions can easily be monitored through connector J15 on the PDB.

Connector J15

Pin 32: Head Thermocouples (0V = No alarm, 5V = Alarm)

Pin 33: Chamber Thermocouple (0V = No alarm, 5V = Alarm)

Any time the alarms are triggered, should result in an emergency stop situation and powering down the affected heaters.

Reading Limit Switch States

The limit switches on the uPrint are an optical sensor made by Optek Technology OPB830 for the print bed sensor and OPB620 for all others. These sensors all operate with a very simple infrared LED emitter and a photo-diode. When an obstruction is present, the IR signal is broken and the switch is triggered. These switches are normally closed (NC).

In total there are 9 optical switches that can provide information:

  • X-Axis Home (left side of printer)
  • X-Axis End of Travel (right side of printer)
  • Y-Axis Home (back of printer)
  • Y-Axis End of Travel (front of printer)
  • Z-Axis Home (bottom of printer)
  • Z-Axis End of Travel (top of printer)
  • Model Toggle
  • Support Toggle
  • Print Bed Touch Sensor

The Support toggle is not used under normal operations. (We will need to verify it's usefulness.)

The uPrint's various control boards take care of the signal from the optical switches and handle the conversion of the states from high to low. Once they are normalized, they can be read from the Power Distribution Board (PDB) from connections J14 and J15 as 0V (Logic Low) or 5V (Logic High).

Connector J14

Pin 8: Model Toggle Switch

Pin 10: Support Toggle Switch

Connector J15

Pin 2: X-Axis Limit

Pin 3: X-Axis Home

Pin 4: Y-Axis Limit

Pin 5: Y-Axis Home

Pin 6: Z-Axis Limit

Pin 7: Z-Axis Home

Pin 8: Print Bed Touch Sensor

Operating Door Lock and LED Lighting

There are features of the uPrint that can easily be controlled through an external controller. They are the door lock and the internal LED lighting. The door lock is comprised of two components, a magnetic switch to determine if the door is closed and a solenoid made by Guardian Electric Part #TP8x16, that operates on 12VDC. The LED lights operate on 24VDC can be controlled through the on-board relay on the Power Distribution Board (PDB).

It is very easy to control these functions through connector J15 on the PDB

Connector J15

Pin 12: LED Lights Enable (Off = 0V, On = 5V)

Pin 13: Door Solenoid Enable (Off = 0V, On = 5V)

Pin 14: Door Switch (5V when closed, 0V when open)

For safety, the controller should check to make sure the door is closed before operating the door lock solenoid. Under normal operation of the uPrint, the door is locked whenever the machine is to be moving. It is completely optional however.

Controlling Heaters & Fans

IMPORTANT: Do not operate the heaters unless you have an accurate temperature reading from the Thermocouples! See this section: Reading Thermocouple Temperatures.

There are four heater elements and three blower fans on the uPrint, however not all of them can be controlled. There are two chamber heaters, a model extruder heater, a support extruder heater, two chamber fans and a print head blower. The two chamber heaters are wired in parallel when powered by 120VAC and in series when powered by 240VAC. Each chamber heater element produces approximately 120 watts of heat. The chamber heaters include a thermal fuse that will cut power if your controller malfunctions in an emergency situation.

Under normal situations, the Chamber heater will power on immediately and begin warming the printer up to 77 degrees Celsius. The Chamber fans circulate the hot air through the printer, but most importantly direct air at the printed part to prevent warping during printing. The Chamber fan should be on at all times when the printer is on as it is actively blowing air over the chamber heater elements. The chamber fan cannot be controlled.

The model and support filament extruders each have their own heaters that run on 120 VDC. Using the proprietary ABS and soluable support materials, the uPrint heats up to 310 degrees Celsuis for the ABS and 300 degrees Celsius for the support material. It is believed that the print head is similar to the ones used in the Stratasys Fortus line, which are capable of heating up to near 400 degrees Celsius and can print a variety of high temperature materials. Extreme caution should be used when heating the extruders above the standard temperatures.

The print head has a controllable blower motor that blows room temperature air across the top and bottom of the extruder heaters to prevent the heat from melting the filament prematurely. Under normal operations, the head blower fan is on whenever the model or support heaters are above ambient temperature.

Controlling the heaters and the print head blower motor can easily be done through connector J14 & J15 on the PDB.

Connector J14

Pin 4: Print Head Blower Enable (0V = Off, 5V = On)

Connector J15

Pin 11: Chamber Heater Enable (0V = Off, 5V = On)

Pin 18: Extruder Model Heater Enable (0V = Off, 5V = On)

Pin 19: Extruder Support Heater Enable (0V = Off, 5V = On)

Your controller should use PWM to rapidly turn the heating elements on and off to regulate the temperatures. There are many methods, but most modern 3D printer controllers will use a PID closed loop to maintain temperatures and prevent damage. If a tuning profile can be determined, it will be added in a new section.


Power Distribution Board (PDB)

The Power Distribution Board (PDB) contains all of the voltage regulation, relays, motor driver controllers, servo driver as well as power connections. It is the main board for the electronic control and is the main board we need in order to operate the machine. In addition to managing the power coming in from power supplies, it has one power 120VDC power supply on board.

Stratasys PDB Diagram.jpg

Diagram PCB Designation Connection Function
A J1 AC Power In
B J2 Power Switch / Thermal Safety Switch
C J3 Chamber Heaters
E J22 Auxiliary 120VDC Power Supply
E J8 Z-Axis Limit Switches, Chamber Fans & Machine Serial Number
F J9 Z-Axis Motor
G J10 I/O Board Connection
H J11 I/O Board Connection
I J7 24VDC Power Supply
J TEST PTS Test points where you can diagnose signals and voltages
K J4 5/12VDC Power Supply
L TEST PTS LED's LEDs that indicate various functions on/off
M J12 Serial Connection to Material Bay
N J16 Serial Connection to Uninterruptible Power Supply (UPS)
O J18 Front Panel LCD Connector
P J15 Samtech EHT-125-01 Controller Board Connection
Q J14 Samtech EHT-110-01 Controller Board Connection
R J13 Samtech EHT-125-01 Controller Board Connection


Power Switch / Thermostat

Pin 1 / 2 between Power Switch Pin 3 / 4 Across Safety Thermostat


Lower Harness

1 Ground 2 Ground 3 Ground 4 Ground 5 +3.3VDC (for eeprom) 6 Ground 7 Ground 8 Ground 9 +5VDC for filament detect 10 Ground 11 Z-Axis Home Signal 12 Pull up for endstop siganl? 13 Z-Axis Limit Signal 14 Pull up for endstop signal? 15 SCL (eeprom) 16 SDA (eeprom) 17 Filament Detection (Un-used, Dimension only?) 18 +24 VDC (Chamber Fan) 19 Filament Detection (Un-used, Dimension only?) 20 +24 VDC (Chamber Fan)


Z-Axis Motor

1 2 3 4


Connector J13 is a 50 position IDC connector with 2.0mm pitch. It is a Samtech EHT-125-01 with latching connector. The connector mainly carries signal data to control the X, Y, Z motors and extruder servo motor.

IDC Connector (50-Position) Diagram.jpg

Pin Function
1 X-Axis Voltage Reference #1
2 Ground
3 X-Axis Voltage Reference #2
4 Ground
5 Y-Axis Voltage Reference #1
6 Ground
7 Y-Axis Voltage Reference #2
8 Ground
9 Z-Axis Voltage Reference #1
10 Ground
11 Z-Axis Voltage Reference #2
12 Ground
13 Ground
14 Ground
15 N/C? (Probe Point 10)
16 Ground
17 X-Axis Phase #1 PWM
18 Ground
19 X-Axis Phase #2 PWM
20 Ground
21 Y-Axis Phase #1 PWM
22 Ground
23 Y-Axis Phase #2 PWM
24 Ground
25 Z-Axis Phase #1 PWM
26 Ground
27 Z-Axis Phase #2 PWM
28 Ground
29 Extruder Servo Motor Encoder #1
30 Ground
31 Extruder Servo Motor Encoder #2
32 Ground
33 Extruder Servo Motor PWM #1
34 Ground
35 Extrider Servo Motor PWM #2
36 Ground
37 JR2 (Pin 1 & 4, Unpopulated)
38 Ground
39 JR4 (Pin 1 & 4, Unpopulated)
40 Ground
41 N/C? (Probe Point 16)
42 Ground
43 N/C? (Probe Point 17)
44 Ground
45 Motor Enable (0V = Off, 5V = On)
46 Ground
47 +5VDC
48 +5VDC
49 +12VDC
50 +12VDC


Connector J14 is a 20 position IDC connector with 2.0mm pitch. It is a Samtech EHT-110-01 with latching connector. There are only a few data signals on this connection related to the print head.

IDC Connector (20-Position) Diagram.jpg

Pin Function
1 Ground
2 Filament Detection Output (J8 #19) * Dimension only?
3 Filament Detection Input (J8 #17) * Dimension only?
4 Print Head Blower Enable (0V = Off, 5V = On)
5 Ground
6 Print Head Type B (Unknown function)
7 JR6 (Pin 1 & 4, Unpopulated) & J17 Spares Header
8 Print Head Model Toggle Switch (5V when model extruder is enabled)
9 Ground
10 Print Head Support Toggle Switch (5V when support extruder is enabled)
11 Eeprom Memory (SDA)
12 Eeprom Memory (SCL)
13 Ground
14 J17 Spares Header
15 Ground
16 Ground
17 +5VDC
18 Ground
19 +12VDC
20 Ground


Connector J15 is a 50 position IDC connector with 2.0mm pitch. It is a Samtech EHT-125-01 with latching connector. The connector carries the majority of the logical data signals as well as data from the various parts of the 3D printer, including the limit switches, heater controls and thermocouple temperature readings.

IDC Connector (50-Position) Diagram.jpg

Pin Function
1 Ground
2 X-Axis End of Travel Limit Switch
3 X-Axis Home Limit Switch
4 Y-Axis End of Travel Limit Switch
5 Y-Axis Home Limit Switch
6 Z-Axis End of Travel Limit Switch
7 Z-Axis Home Limit Switch
8 Print Bed Touch Probe Limit Switch
9 Ground
10 N/C? (Probe Point 10)
11 Chamber Heater Enable (Off = 0V, On = 5V)
12 LED Lights Enable (Off = 0V, On = 5V)
13 Door Solenoid Enable (Off = 0V, On = 5V)
14 Door Switch
15 Input from U6 (just a ground signal?)
16 Power Enable (turns on machine)
17 Ground
18 Extruder Model Heater Enable (Off = 0V, On = 5V)
19 Extruder Support Heater Enable (Off = 0V, On = 5V)
20 Ground
21 POWER ON (keeps machine running when main power switch is disabled)
22 Head Thermostat (TP 25)
23 On / Off Power Switch
24 Uninterruptible Power Supply Signal (5V when power outage?)
25 N/C? (Probe Point 11)
26 N/C? (Probe Point 12)
27 N/C? (Probe Point 13)
28 Ground
29 N/C? (Probe Point 14)
30 N/C? (Probe Point 15)
31 Head Type A (unknown function)
32 Print Head Temperature Alarm
33 Chamber Temperature Alarm
34 Ground
35 Print Head Model Thermocouple Signal
36 Ground
37 Print Head Support Thermocouple Signal
38 Ground
39 Chamber Temperature Thermocouple Signal
40 Ground
41 Material Bay Serial Data (In)
42 Material Bay Serial Data (Out)
43 N/C? (Probe Point 18)
44 N/C? (Probe Point 19)
45 Ground
46 Ground
47 +5VDC
48 +5VDC
49 +12VDC
50 +12VDC

I/O Board

The I/O Board is the main place where connections are made to the ancillary boards in the extrusion head, X, Y motors, limit switches and front panel display. It is also where the main chamber's thermocouple is connected along with an on board analog-to-digital converter.

Stratasys IO Board 205618-0003.jpg


Diagram PCB Designation Connection Function
A J510 (PDB 1) Board to Board Interconnect to the Power Distribution Card (PDC)
B J511 (PDB 2) Board to Board Interconnect to the Power Distribution Card (PDC)
C J507 (CHAMBER TC) Omega PCC-SMP-K Chamber Thermocouple
D J501 (Y-MOTOR) Molex Microfit 3.0 (4-Pin) Y-Axis Motor
E J502 (X-MOTOR) Molex Microfit 3.0 (6-Pin) X-Axis Motor
F J503 (Y SENSORS) Molex Microfit 3.0 (18-Pin) Y-Axis Limit Switches
G J504 (UPPER HARNESS) Molex Microfit 3.0 (24-Pin) Front Panel & Chassis wiring (blower fan, on/off switch, chamber lights, door solenoid and magnetic door switch)
H J505 (UMB1) Molex Microfit 3.0 (22-Pin) Umbilical head harness 1. (Model and support heaters, toggle switch sensor, X-axis limit switches)
I J506 (UMB2) Molex Microfit 3.0 (12-Pin) Umbilical head harness 2 (Print bed level sensor, head drive motor, model and support thermocouple)

J501 (Y-MOTOR)

This connection connects the electronics to the Y-Axis motor (forward and back motion). This is a Molex Microfit 3.0 connector with 4 positions.

Molex Microfit 3.0 (4-Position) Diagram.jpg

Pin Wire Color Function
1 Black A+
2 Blue B+
3 Green A-
4 Red B-

J502 (X-MOTOR)

This connection connects the electronics to the X-Axis motor (side to side motion). This is a Molex Microfit 3.0 connector with 6 positions.

Molex Microfit 3.0 (6-Position) Diagram.jpg

Pin Wire Color Function
1 Black A+
2 - N/C
3 Black B+
4 Black A-
5 - N/C
6 Black B-


Molex Microfit 3.0 (18-Position) Diagram.jpg

Pin Wire Color Function
1 - NC
2 - NC
3 Red +Vcc
4 Red +Vcc
5 Yellow Y-Axis End of Travel Limit Switch
6 - NC
7 - NC
8 - NC
9 - NC
10 - NC
11 Green Ground
12 Yellow Y-Axis Home Limit Switch
13 Green Ground
14 - NC
15 - NC
16 - NC
17 - NC
18 - NC


Molex Microfit 3.0 (24-Position) Diagram.jpg

Pin Wire Color Function
1 Red Front LCD, unknown function
2 White Front LCD, unknown function
3 Blue Front LCD, unknown function
4 Orange Front LCD, unknown function
5 - NC
6 Yellow Power Switch
7 Yellow Magnetic Sensor
8 White Door Solenoid
9 Black LED Lighting (Negative)
10 Black LED Lighting (Negative)
11 - NC
12 Black Head Blower Fan (Positive)
13 Green Front LCD, unknown function
14 Yellow Front LCD, unknown function
15 Green Front LCD, unknown function
16 - NC
17 - NC
18 Green Power Switch
19 Green Magnetic Sensor
20 Black Door Solenoid
21 Red LED Lighting (Positive)
22 Red LED Lighting (Positive)
23 - NC
24 Red Head Blower Fan (Negative)

J505 (UMB1)

Molex Microfit 3.0 (22-Position) Diagram.jpg

Pin Wire Color Function
1 Black Model Heater (Negative)
2 Blue Model Heater (Positive)
3 Green Support Heater (Positive)
4 Black Support Heater (Negative)
5 Green Ground
6 Blue Ground
7 Purple TBD, Thermocouple Wiring
8 - NC
9 - NC
10 Black Toggle Limit Switch
11 Grey X-Axis End of Travel Limit Switch
12 - NC
13 - NC
14 - NC
15 - NC
16 - NC
17 White TBD, Thermocouple Wiring
18 - NC
19 - NC
20 - NC
21 White Toggle Limit Switch
22 Red X-Axis Home Limit Switch

J506 (UMB2)

Molex Microfit 3.0 (12-Position) Diagram.jpg

Pin Wire Color Function
1 Brown Ground
2 Red +5VDC
3 Orange Extruder Servo Motor Encoder Pin 8
4 Yellow Extruder Servo Motor Power (Positive)
5 Black TBD, Thermocouple Wiring
6 Red TBD, Thermocouple Wiring
7 Purple Print Bed Limit Switch
8 Grey Extruder Servo Motor Encoder Pin 6
9 White Extruder Servo Motor Power (Negative)
10 Black TBD, Thermocouple Wiring
11 Yellow TBD, Thermocouple Wiring
12 Black TBD, Thermocouple Wiring