TH3D Unified 1 Firmware Package

This firmware is for 8 Bit based printers only. If you have a 32 Bit board or one supported by Unified 2 check out our Unified 2 Firmware site here:


Thank you for checking out the Unified Firmware. Sales from our store and donations are what help fund this project and others. If this firmware helped you out and you are not already a customer please consider making a purchase from our store to help support us or donate below. Happy Printing! Learn about our team here: About Us

How to use the firmware: Read the README file in the package to get started and read the top Configuration.h file for directions.

Setup Change Notes (from video directions):

  • EZABL_ENABLE is NOT needed or present anymore in new releases. Only uncomment the probe mount and it will enable the EZABL system.

Download Link

What’s in the download?

  • TH3D Unified Firmware
  • EZOut Installation Guide
  • EZABL™ Pro Installation Guide/Manual
  • Windows TH3D Arduino IDE – Pre-Setup for Flashing
    • Windows 7 required or higher. Windows 10 Recommended
  • Mac OS X Arduino IDE with Libraries
  • EZABL STL Mount Pack that contains all Pre-Supported Sensor Mounts and basic printable Solid Bed Spacers for Multiple Printer Models
  • EZABL Enclosure STL Files if you want to change color or make your own
  • TH3D Bed Leveling test STL files in multiple sizes
  • 3D Printer/Uno USB Drivers – CH340 & FT232R
  • Pronterface GCode Sender Utility

Have a question? Make sure to read the Unified Firmware FAQ page before contacting us. Most questions are already answered on this page.

NOTE: The included library files in our IDE should NOT be updated. There are issues with the latest libraries from Arduino that will result in display corruption. If you have any other Arduino IDEs installed please remove them before using our version to avoid any possible issues when compiling the firmware.

PLEASE NOTE: You must have a bootloader already on the printer to flash the firmware over USB. Printers with the 1284p chip need a bootloader. Here is how to load the bootloader with links to the hardware needed: See the printer support table below to see if your particular model needs a bootloader. Printers that need the bootloader on the support table below have a “ᵇ” after their name.

ALL slicers (Simplify3D, Cura, Slic3r, etc) or anything else that connects to the COM port must be CLOSED for the firmware to be flash. If anything is connected to the COM port when flashing it will fail, typically “access denied” is listed in the error section of the Arduino IDE.

You MUST use the Included Arduino IDE to flash the firmware if on Windows and if you are on a Mac or Linux follow this guide to setup your IDE to work with the firmware if our automated installer for Mac isn’t working on your machine. -> Arduino IDE for Mac OS X Setup Guide

Looking for just the firmware? Download from our releases on our Github Page.

Donate to the Marlin Project

Marlin is used on over 90% of printers worldwide. Scott Lahteine is the project manager for the Marlin Project. Please consider becoming a Patreon below or donate one time with his PayPal link below. TH3D supports the Marlin project through PayPal and through donating equipment that they may need for testing. Scott’s Patreon Page & PayPal Donation

Supported Printers – Check our Unified 2 if a printer is not listed here anymore.

ModelStockEZABL/EZABL MiniEZOut Filament Sensor
Aibecy DY-H9X– Custom Mount 
CTC i3 Pro BX– Custom Mount 
Geeetech A10 V1XX 
Geeetech A10 V2XX 
Geeetech A10MXX 
Geeetech A20XX 
Geeetech A20MXX 
Folgertech FT-5XX – Custom MountX
Tevo TornadoXXX
Tevo Tarantula ProXXX
TronXY X3SXX – Custom Mount 
TronXY X5SXX – Custom Mount 
Lulzbot TAZ5XX 
Wanhao Duplicator i3(and re-brands)XXX
Wanhao Duplicator i3 Plus(and re-brands)XX 
Wanhao Duplicator D6(and re-brands)XMINI ONLY^^X
  • ᵇ – Printers with this after the name needs a bootloader installed. We have a full flashing package here: TH3D Uno Bootloader Flashing Kit and a guide here: TH3D Bootloader Guide (Video)
  • ^^ – The Wanhao D6 has a compact head. The EZABL Mini does not reduce any print space using the mount supplied. You can use the regular EZABL however we do not have any pre-supported sensor mounts for it. The physical hardware works with the D6 board but we do not have a mounting option supplied for it. TLDR; Go with the EZABL Mini (12mm) if you have a Wanhao D6.
  • ᴸ – Printers with this after the name need a LCD conversion to work with our firmware and supported products.
  • Custom Mount – This means the firmware is set up and ready for the EZABL kit but you will need to locate a probe mount for that particular machine. We may add official mounts in the future but if this note is here you will need to supply your own probe mounting solution. If you have a mount that works with these machines on the stock hotend please email and we’ll get it officially added into the firmware and download package.


  • Automatic Probe Point Setup
  • Bed Leveling Assistant (4 Corners) for users not using ABL
  • BL Touch Support*
  • CR-10S Disable Filament Sensor for those with issues
  • Customize your printer name
  • Custom EStep Option
  • Support for TH3D CR-10S Dual Extruder Board
  • E3D V6/Volcano Hotend Support
  • EZOut Kit Support (See table above)
  • Hotend and Bed PID regulation
  • Hotend and Bed Protection
  • Home offset tuning
  • Individual Axis Homing
  • Instant BabyStepping for Z Axis
  • Junction Deviation Jerk Control
  • Keenovo Thermistor Support for Heated Bed (when used with SSR)
  • M48 Probe Test
  • Manual Print Timer Support (M73 GCode)
  • Manual Mesh Leveling Support (for users without EZABL)
  • MKS Gen L Board Support
  • No volumetric extrusion
  • PID Autotune menu
  • SD Printing Power Resume
  • Preheat for ABS & PLA
  • Slow or Fast Probe Option (Test Printer with M48 if using fast, some cannot handle it)
  • Skew Correction
  • S-Curve Acceleration
  • TH3D Bootscreen
  • Thermal Runaway Protection Enabled
  • TinyMachines3D Bootscreen Option
  • Titan Extruder Support
  • Tornado Bootscreen for Tevo Tornado
  • Tornado Fan Speed Option for noise reduction

* The BL Touch settings and configuration are provided in the firmware so you can use a BL Touch sensor with our firmware. TH3D Tech Support will not provide technical support for BL Touch users. If you need technical support with an ABL probe our EZABL comes with technical support with it when using this firmware.


The Unified Firmware has been tested with the above features in the “Features” list. Any deviation from the TH3D configurations can cause issues and is not supported. If you are a customer and have made changes in the features our support will have you use our standard configuration to rule out any issues. This is done for stability and quality assurance reasons as well as to minimize possible end-user issues.

The Unified Firmware Package and all files in the said package are provided AS-IS with no warranty or guarantee, use at your own risk. TH3D is not to be held liable for any damages or issues due to using anything in this package. This is provided for anyone to use at their own risk.

If you are an EZABL customer – support on the EZABL kit and the Unified Firmware features is provided free of charge. For MKS Gen L users the support is limited to the EZABL kit itself meaning support for setting up your MKS Gen L machine is NOT included under the EZABL support. Anyone is welcome to use this firmware as it is under the GPL V3 license but there is NO support if you are not a customer. If you contact support and are not a customer you will have the option to purchase support at an hourly rate.

Next Unified 1 Firmware FAQ
Table of Contents