Ultimaker 2 Extended: V6 Hotend + Bondtech Extruder UPGRADE

  • Just bought an E3D V6 Hotend and Bondtech Extruder (both 1.75mm) for my Ultimaker 2 Extended.

    Already did the hardware swap, but now I need to alter the firmware which is not my strong suit.

    I plan to post the hardware swap process at a later date to help others that are learning like me 🙂

    Does anyone know of a "how to" regarding the firmware?

    Currently, I have a temp sensor error on the Ultimaker (I'm assuming due to the different sensor which comes with the E3D Hotend). I'm not sure where to go from here...

  • MatterHackers

    It's going to be easier to make this upgrade if you use the same temp sensor from the stock hot end.

    The UM2 uses a PT100 sensor. The E3D uses a 100k thermistor cartridge.

    The electronics are setup for the PT100, so switching to the thermistor will be a bit of a pain.

    The OD on the PT100 and the cartridge should be close. If they aren't the same, are you able to drill out the heater block to accomodate the PT100?

    If it's too big, the grub screw can be used to pinch it against the heater block.

    From there, the firmware changes are pretty easy.

    Download Arduino IDE from Arduino.cc

    Then go to the Ultimaker Github repo and download the uncompiled firmware for your machine (https://github.com/Ultimaker/Ultimaker2Marlin)

    Let us know when you get there and we can go to the next steps.

  • Perfect! No more error and I have everything downloaded.

  • Also, am I correct in assuming you meant the configuration.h file when you instructed to download the uncompiled FW?


  • It's going to be all of the files in the repository. Configuration.h is the one file you'll actually edit, but you need all the other files as well to compile and upload the firmware. The .ino file is the Arduino file which you would use to open the firmware in the Arduino IDE.

  • Ok I have all files downloaded.

  • MatterHackers

    Ok. Open Marlin.ino in Arduino.

    Go to the Config.h tab (should be the 2nd tab)

    You're looking for the line "#define heater_0_maxtemp"

    The default is 275. Change that to 350 (310 is the max you'll likely need for any filament currently available, but the PT100 can handle higher temps than the 100k thermistor that comes with the E3D)

    Next, look for #default_axis_steps_per_unit (X, Y, Z, E0, E1)

    You need to change the value for E0 for the Bondtech steps/mm. You will likely need to use the default value from Bondtech, and then measure it and adjust to get the exact value.

    Once you've done that, go to Tools > Board, and select the Arduino Mega 2560. Then Tools> Serial Port, and select the port your printer is connected to.

    Then click the Right Arrow icon (next to the check mark) to upload the firmware to the printer. (Make sure you're not connected to MatterControl or Cura before doing this)

  • Ok great thanks! I had the printer on, plugged in via USB, MatterControl / Cura off, and uploaded the FW - everything went as planned.

    No errors and everything seems to be working fine, except I'm concern about the print head crashing into the front rail. I don't remember this happening prior to the hot-end swap.

    Also, would I need any of the other changes outlined in the E3D wiki (ignoring any of the temp sensor related suggested changes)? http://wiki.e3d-online.com/wiki/E3D-v6_on_Ultimake...

  • @cope413, I adjusted the following and it corrected kept my hot-end from colliding with the rails. The hot-end now stops at the appropriate limits.

    #define X_MAX_POS 215

    #define Y_MAX_POS 210

    ***Do I need to correct any other values such as the PID values referenced in the E3D wiki?

  • MatterHackers

    You don't *need* to if the temp stays stable at the target.

    You can change them to the default values on the wiki, or you can run a PID autotune to get exact values for your machine/setup.
    In MatterControl, open a Terminal window (Options > Show Terminal). Then enter the command, M303 S250

    This will run the PID autotuning for 250C. You can tune to any temp you'd like - 250 is good because it's in the middle of the average functional range for 95% of filaments (200-300C).

    When it's finished, it will spit out Kp, Ki, and Kd constants. You don't need to flash new firmware to enter these - they can be changed via EEPROM. You can access EEPROM through the Options tab in MatterControl.

    Enter them in the appropriate spots and be sure to save it.

    Done and done.

  • Thank you guys so much! I'm so excited to get back to printing - now with faster speed and better resolution!

Log in to reply

Looks like your connection to MatterHackers Community was lost, please wait while we try to reconnect.