Jump to content
Ultimaker Community of 3D Printing Experts
Sign in to follow this  

Manual Enable Heater 2 and Hot Bed

Recommended Posts


How would I enable the other heater transistors on the Ultimaker shield ?

Would I just Edit the Pins.h file to make sure that the right pins are defined ?

#define HEATER_BED_PIN 3

#define HEATER_1_PIN 4

(I know these pins are different then default)




* Ultimaker pin assignment


#ifndef __AVR_ATmega1280__

#ifndef __AVR_ATmega2560__

#error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.




#define HEATER_BED_PIN 3

#define TEMP_BED_PIN 10

#define HEATER_0_PIN 2

#define TEMP_0_PIN 8

#define HEATER_1_PIN 4

#define TEMP_1_PIN 9


Is there anything else that needs to be modified to enable the Heating transistors ?

Share this post

Link to post
Share on other sites

Ok I uploaded some basic code to the Arduino 2560, AND the 2 pins that I thought were dead are not.

So I am missing something to enable the Heated bed, and the Heater 2 transistors. Anyone have an idea where I would go to enable these in the Marlin firmware.

const int lowestPin = 3;

const int highestPin = 4;

void setup() {

// set pins 2 through 13 as outputs:

for (int thisPin =lowestPin; thisPin <= highestPin; thisPin++) {

pinMode(thisPin, OUTPUT);



void loop() {

// iterate over the pins:

for (int thisPin =lowestPin; thisPin <= highestPin; thisPin++) {

// fade the LED on thisPin from off to brightest:

for (int brightness = 0; brightness < 255; brightness++) {

analogWrite(thisPin, brightness);



// fade the LED on thisPin from brithstest to off:

for (int brightness = 255; brightness >= 0; brightness--) {

analogWrite(thisPin, brightness);



// pause between LEDs:




Share this post

Link to post
Share on other sites



This page has no options to enable the heater or the heated bed. It only allows you specify the sensor, not the heater its self. I thought I had dead pins on my Arduino so I ordered a new one. But it turns out that its a software issue.

In the Configuration.h of the marlin firmware I have it already set

#define TEMP_SENSOR_0 -1

#define TEMP_SENSOR_1 6

#define TEMP_SENSOR_2 0


But the hot_bed and heater 1 still do not work. only heater0 works. (the hot end heater)

Share this post

Link to post
Share on other sites

Help! Anyone having issues using the Heated bed MOSFET on the Ultimaker Shield ?

Here is my setup for Marlin:

http://daid.eu/~daid/marlin_build ... stepsE=800

I can see that the thermistor is working in the PrintRun. I can connect to the machine and and use a heat gun on the themistor to get a proper temperature reading.

Next step is setting the Bed Temp to 60

Here is some of the read out with the Monitor Print box checked.

ok T:35.7 /0.0 B:3.0 /3.0 @:0

ok T:35.8 /0.0 B:3.0 /3.0 @:0

ok T:35.2 /0.0 B:66.6 /3.0 @:0 (Applying Heat gun)

ok T:35.2 /0.0 B:78.8 /3.0 @:0

ok T:35.1 /0.0 B:95.2 /3.0 @:0

ok T:35.2 /0.0 B:73.0 /3.0 @:0

ok T:35.2 /0.0 B:58.1 /3.0 @:0

Setting bed temperature to 60.0 degrees Celsius.

ok T:35.5 /0.0 B:46.0 /60.0 @:0 (I Expect the red LED on the MOSFET to turn on here But it does not)

ok T:35.6 /0.0 B:27.2 /60.0 @:0

ok T:35.7 /0.0 B:3.0 /60.0 @:0

ok T:35.6 /0.0 B:3.0 /60.0 @:0

I do know that, the pin on the Arduino is good as a I wrote a basic Pin High/Low program and watched the LED turn on and off.

Any help thoughts or suggestions would be greatly appreciated.

Share this post

Link to post
Share on other sites

In stead of messing with the code of Marlin, I started to swap out resistors 4.7k ohm was what I have been using this whole time. I tried 10k with no better results.

With each resistor I recompiled the look up table with the Python script from Rep Rap

22k ohm works ! It starts off around ~ -20 only 2 less then the last value in the table {1008, -22}

47k ohm works as well but it starts around -44

Testing the 22k ohm resistor, Using my fingers to heat up the resistor It only returns a result of ~9c which means I should be dead.

But I don't care, its working with out messing with any Marlin Code and no need to pre-heat the resistor.

I'll be testing the results of the 22k ohm resistor at 60c, 70c, 80c, 90c, 100c with my toaster oven.

( I have one of reflow solder hacks that controls the oven's temp with an external micro controller)

Thanks for everyone listening and reading to my troubles,


Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Our picks

    • Ultimaker Cura | a new interface
      We're not only trying to always make Ultimaker Cura better with the usual new features and improvements we build, but we're also trying to make it more pleasant to operate. The interface was the focus for the upcoming release, from which we would already like to present you the first glance. 
        • Like
      • 114 replies
    • "Back To The Future" using Generative Design & Investment Casting
      Designing for light-weight parts is becoming more important, and I’m a firm believer in the need to produce lighter weight, less over-engineered parts for the future. This is for sustainability reasons because we need to be using less raw materials and, in things like transportation, it impacts the energy usage of the product during it’s service life.
        • Like
      • 12 replies

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!