Bigtreetech tft35 v3.0 firmware

Bigtreetech tft35 v3.0 firmware DEFAULT

Introduction: How to Load New Firmware on [BTT] Bigtreetech TFT Displays

Since the instructions are not clear, and I see so many posts asking what went wrong or what am I doing wrong, I put together this instructable to make it easy.

This firmware updating method is for the following Bigtreetech TFT LCD displays:

  • TFT24 V1.1
  • TFT28 V1.0
  • TFT35 V1.0
  • TFT35 V1.1
  • TFT35 V1.2
  • TFT35 V2.0
  • TFT35 V3.0
  • TFT43 V3.0
  • TFT50 V3.0
  • TFT70 V3.0

Thanks to Ricky Djwarp Robles & Adam Baker for allowing me to use their photos.


  1. One of the displays listed above.
  2. SD card under 8GB but not less than 1GB just to be safe.
  3. Must have a minimum of 10MB clear on the SD card.
  4. For safety sake, clear of all files and folders.

Step 1: Setting Up the Files Needed on the SD Card.

  1. Get the files from this location.
  2. Select the green download button.
  3. Select Download ZIP.
  4. Save this file where you can find it.
  5. Extract all files.
  6. Get into one of these folders;
    • Copy to SD Card root directory to update
    • Copy to SD Card root directory to update - Unified Menu Material theme
  7. Select the .bin file that matches your display-version and the display folder.
    • For example, TFT35 V3.0 would select BIGTREE_TFT35_V3.0.25.1.bin and the TFT35 folder.
  8. Copy the selected file and folder to the root of the SD card.
    • See photo for what the root of the SD card should look like.
  9. Make sure you use the eject for the SD card to ensure all files got saved before removing the SD card from your system.

Note; the TFTxx folders have the fonts (.fon) & icons (.bmp) used; if you don't copy this folder, you will not be able to read the prompts and the icons will be scrambled after the update. The reason is when flashing; the location to these files has changed, but the previous files don't start at that new location.

Step 2: Flash Your Bigtreetech TFT

  1. Make sure your screen is powered off.
  2. Insert the SD card into the TFT display.
  3. Power up and wait,
    • You will see some kind of updating status % if this doesn't happen or fails; try another SD card. I think FAT32 works the best for these displays.
    • Next, you will see the font (.fon) files updating. (if you don't see this then the folders are not correct on the SD card)
    • Last, you will see the icons (.bmp) files updating. (if you don't see this then the folders are not correct on the SD card)
  4. If the update completed, then remove the SD card.
  5. If you plan to use this SD card for printing Gcode files, then delete the .bin file; if not, then on each powerup or reset, the display will update as long as that file is in the root. No issues leaving the TFTxx folder since these files are only used when updating the firmware.

Be the First to Share

Did you make this project? Share it with us!


  • Retro Tech Challenge

    Retro Tech Challenge
  • Plastic Challenge

    Plastic Challenge
  • Halloween Contest

    Halloween Contest


Warranty polity

1. Warranty period

①The machine is guaranteed for one year, except for wearing parts and gifts.

②The warranty period of wearing parts (spring steel plate, soft magnetic sticker, heat sink, etc.) is 3 months.

③Gifts (TF card, USB cable, wrench, pliers, shovel, etc.) have no warranty period. If there are missing gifts or quality problems according to the machine list, you can contact the company to apply for replacement or replacement within 3 days.

  1. Warranty during the warranty period

After the company’s investigation, if there is a quality problem, the company provides free repair or reissue service; if the non-quality problem is caused by man-made reasons, the customer shall bear the corresponding replacement parts cost.


  1. Out-of-warranty maintenance

The customer shall bear all costs incurred during the maintenance process, such as labor costs, accessories costs, packaging costs, and round-trip freight. The specific cost is subject to the company’s quotation list.

Return policy

1. Within the return time. Due to machine quality problems and non-human damage, the product logistics information shows 30 days from the date of receipt.

2. The appearance of the product must be intact, free of damage, scratches, stains, cracks, deformation, etc.

3. The machine, accessories, tools, packaging, etc. must be complete.

4. If there is any damage to the appearance of the machine product received by the returned product, incomplete accessories or problems caused by not mailing in the original packaging, the customer shall bear the relevant expenses.

5. After delivery, the package/return is directly rejected due to personal reasons such as dislike, undesired, improper use, etc. (must be in a new state), and the customer is required to bear the shipping cost sent by the seller and the package return cost.

6. The costs associated with unauthorized returns (any returns beyond the approved warranty process) shall be borne by the buyer.


After the return application is approved, the customer returns the returned product, and it takes 25 days for the company to receive the product. After the company receives the goods, it will take 2 working days to process the refund, and the refund amount will take 3 to 5 working days to arrive.

Ways to obtain technical support and warranty service:

l Purchase route/order code/purchase product

l Problems encountered/Providing problem photos or videos/What measures have been taken

The after-sales service department will try to diagnose and solve your problem via email. Guide you to download and install specific software updates. If the customer’s problem cannot be resolved by email or through application software updates, the company will arrange for replacement of parts if the problem is covered by this limited warranty.

For warranty claims related to quality, if available, factory refurbished models of the same value will be used to replace items, otherwise new items will be sent. The warranty period of all replacement products is the same as the warranty period of the original defective product.

The warranty terms of the machine remain unchanged.

Accessories: motherboard/nozzle kit/hot bed board/display/BL touch kit, enjoy 30-day warranty

Note: Non-machine quality issues, hot bed stickers/nozzles and other consumables are not covered by the warranty.

*Warranty period may vary according to local laws and regulations.

①Unable to provide a valid warranty card and product serial number;

②The machine and wearing parts exceed the warranty period;

③ Modifying the machine without authorization causes damage or malfunction of the machine;

④Damage or malfunction of the machine caused by use in a working environment other than the specified machine;

⑤Exceeding the machine load, etc. or improper maintenance (moisture/mold, etc.) causing machine failure or damage;

⑥The machine fails or is damaged due to force majeure (such as fire, earthquake, lightning, flood, etc.);

⑦The machine malfunctions or is damaged due to incorrect installation or incorrect use.


①Please read the instruction manual and after-sales service card carefully before using the machine;

②The remaining warranty service can be enjoyed after the machine is repaired during the warranty period;

③It is recommended to keep the product packaging boxes, etc.;

④When applying for warranty service, please provide a valid warranty card, product order number, machine serial

number. If it is not provided, Bite has the right to refuse to provide warranty service;

⑤After-sales service support time: Monday to Saturday 9:00-22:00, except for legal holidays


  1. Lockout kit home depot
  2. Ffbe hero ring farm
  3. Dmv oak street

BigTreeTech TFT Touchscreen

GitHubGitHub contributorsGitHub Release DateBuild Status

Important information related to BigTreeTech's TFT touchscreen 3D printer controllers

TFT35v3 Image with cable

Table of Contents

Supported Screens

Only the TFT's listed below are currently supported. Trying to install the firmware on a TFT which is not supported can harm the hardware.


MKS TFTWarning: BTT does not officially provide MKS TFT hardware support, MKS TFT is maintained by open source contributors, and BTT does not bear any risk of MKS TFT hardware using this firmware

Marlin Dependencies

Firmware source:

Minimum Marlin firmware version:

Distribution date: 2021-05-15

In order the TFT firmware is able to provide all of its functionalities/features, the following options must be enabled in Marlin firmware.

General options which MUST be activated:

(in Configuration.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

Options to support printing from onboard SD:

(in Configuration.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

Options to support dialog with host:

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

Options to support M600 with host & (Un)Load menu: (Options to support dialog with host as pre requisite)

(in Configuration.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

(in Configuration_adv.h)

Options to fully support Bed Leveling menu:

(in Configuration.h)

(in Configuration.h)

(in Configuration_adv.h)

Connect the TFT to the Mainboard

Do the following, to be able to use the touchmode of your screen.

  1. Connect the 5pin serial cable according to the manual of your mainboard.
  2. Define a serial port in Marlin, to activate the port used by the TFT.
  3. Make sure the same BAUDRATE is defined in Marlin and the firmware of your TFT (config.ini)

In case one of the three points above is not done right, "No printer attached" will be shown at the top of the screen in touchscreen mode. This is because the TFT can not "see" the mainboard through the serial cable.

Do the following, to be able to use the Marlin emulation mode of your screen.

A: In case your TFT does not have an EXP connector at all (TFT28 v1 for example), you can not use the Marlin emulator mode.

B: In case your mainboard provides EXP1 and EXP2, you have to connect 2 ribbon cables connecting EXP1 and EXP2 of the mainboard to EXP1 and EXP2 of the TFT. In the Marlin firmware of your mainboard, make sure that ONLY the "" is activated in Configuration.h and that all other controllers are Deactivated (especially the "").

C: In case you have an "E3" mainboard which provides a single EXP connector, you have to connect 1 ribbon cable connecting EXP of the mainboard to EXP3 of the TFT. In case your TFT does not provide an EXP3 connector but only two 10pin connectors (TFT24 v1.1 for example) you will need a "Y-split" cable with one 10pin connector on one side (for the mainboard) and two 10pin connectors on the other side (for the TFT). In the Marlin firmware of your mainboard, make sure that ONLY the "" is activated in Configuration.h and that all other controllers are Deactivated (especially the "").

Thomas White July 2021-1Thomas White July 2021-2Thomas White July 2021-3


Status Screen DISABLEDStatus Screen ENABLED
status screen 0Unified Material Main Screen
In config.ini define: General Settings
Enable Status Screen
# Select the Main Screen flavour
# Options: [Enable: 1, Disable: 0]
status_screen: 0
In config.ini define: General Settings
Enable Status Screen
# Select the Main Screen flavour
# Options: [Enable: 1, Disable: 0]
status_screen: 1


Update TFT Firmware

The TFT firmware update includes up to four elements and is done in three steps:


element 1: The firmware binary (). Example: :

  • : model
  • : hardware version
  • : software version

Exception: For the MKS TFT28 the binary file name must be .

Attention TFT35 owners. There are currently three different kinds of firmware available: V3.0, E3_V3.0 and B1_V3.0. Please make sure to use the firmware which matches your TFT screen.

element 2: Fonts and Icons (in the or folder):

For BTT TFTs, the ROOT FOLDER for fonts and icons is TFT*, where * is the size of the TFT (example: TFT24, TFT35, TFT50, etc). Fonts and icons folder structure:

  • : includes the fonts in .fon format and a
  • : includes the icons in .bmp format and a

For MKS TFTs the ROOT FOLDER for fonts and icons must be renamed to "MKS". Fonts and icons folder structure:

  • : includes the fonts in .fon format and a
  • : includes the icons in .bmp format and a

element 3: The config.ini or (the renamed) config_rrf.ini file

Attention RepRap Firmware users. You have to make your changes using the config_rrf.ini file and rename it to config.ini before you upload it to the TFT.

element 4 (optionally): One or several language file(s)


step 1: Copy your self compiled firmware or the BIGTREE_TFT*_V*...bin, plus the TFT` folder* of your preferred Material theme as well as the config.ini to the root of a blank SD card that is <8GB and formatted as FAT32:


Optionally, copy one or several language.ini file(s) from folder onto the SD card. Doing so will allow you to switch between English and the uploaded language(s), using the corresponding Language function of the TFT. We recommend to upload the minimum amount of languages, to keep the memory usage low. The language.ini file can be edited to change the text shown on the TFT.

Language Pack

step 2: Place the SD card with the , the folder and the config.ini into the TFT's SD card reader and reset your TFT (or optionally - power cycle your printer) to start the update process.

Failing to update your icons & fonts will result in missing icons and/or unreadable text

Update Process shown on TFT Screen

A successful update looks like this on the screen:

Screenshot 2020-09-26 at 22 10 04

... and the name of the elements on the SD card changes to this:

After Update

In case one or several parts of the update failed, an error will be shown. Follow the information on the screen to update the missing or outdated elements.

Screenshot 2020-10-23 at 14 37 36

Errors during the update can not be ignored and must be solved before using the TFT

After the update is done and the files are renamed, it is possible to reuse them again. To do so, change the name of the element(s) to the pre-update name and start the update process again.

step3: Remove the SD card from the TFT and restart the printer.

Tip: Format the SD card after the firmware update in case you would like to print from it.

Calibrate the Screen

Sometimes a calibration will be executed automatically after a firmware update, showing a white screen with a red dot in the upper right corner and the text: Touch Screen Calibration - Please click on the red dot. To calibrate the screen press with your finger or a stylus the red dot in the upper left corner, then the red dot in the upper right corner and then the red dot in the lower right corner. Even the screen asks you to press the red dot, press the black dot in the middle of the screen to finish the calibration. Repeat the process in case the message: "Adjustment failed, please try again" is shown.

Using the Configuration file

Attention RepRap Firmware users. You have to make your changes using the config_rrf.ini file and rename it to config.ini before you copy it to the TFT.

The Firmware can be modified by changing the config.ini (or the renamed config_rrf.ini) file from: using a simple text editor (make sure to use UTF encoding).

Once saved, it can be uploaded without the need to upload the firmware or the TFT folder again, as long as the firmware and the config file are from the same version.

Editing the configuration file

To edit the config file follow the instruction here: Detailed Instructions here

Updating Firmware Configuration

To update the Firmware configuration:

  1. Edit the settings like described above

  2. Copy the config.ini file to the root of the SD card. (The SD card capacity should be less than or equal to 8GB and formatted as FAT32)

  3. Insert the SD card into the TFT's SD card slot and restart the printer or press the reset buttion of the TFT.

  4. The TFT will update and store the configuration from the configuration file.

  5. Make sure to remove the SD card from the TFT and restart the printer.

  6. On the TFT click on Menu - Settings - Feature and navigate to the last page. Click on

    "Reset default settings ..."

  7. Restart the printer to finish the update


Bootscreen and Icons

See Customisation guides for detailed information.


Tip: In case there is a problem compiling the TFT firmware try to restart VSC. If this does not help and you are using macOS, delete the packages and platforms folder which you can find here: /Users/username/.platformio/.


In case the upload of a new firmware failed

First, verify that you have been using the firmware which matches your TFT. After that, try to upload the firmware, the config.ini and the TFT** folder again (like described above) using a new SD card - 8GB or smaller, FAT32 formatted. Some uploads worked fine after executing a low level format of the SD card and not a quick format.

Simple Reset

To reset the TFT's touch screen calibration, create a blank file named "reset" with the file-extension "txt", and place it in the root folder of an SD card (the SD card capacity must be less than or equal 8GB and formatted as FAT32). Insert the SD card into the TFT's SD card reader and power cycle your printer or restet your TFT to start the reset process.

Worst Case Scenario

In case the screen remains black or the brightness is not stable, the screen does not react after pressing a button or executes clicks by itself or does something similar - and the reset described above did not help - do the following. Remove the TFT from the enclosure and disconnect everything from the TFT, including the cable to the mainboard. Cut a USB cable you do not need anymore and connect the red and black wire to 5V and GND of the TFT. Do not use the unshielded wires directly but use a 2 pin connector instead. Power up the TFT and try to reset the TFT or to instal a new firmware like described in this document. With only power supplied, you should be able to navigate through the menus using the touchscreen and even to switch to Marlin Emulation (if available), even the Marlin Emulation screen will not show the interface with a proper EXP based connection.

Version History

See BIGTREETECH-TouchScreenFirmware/releases for a complete version history.


Embedded Gcode Thumbnails

The TFT is able to display embedded gcode thumbnails in the file list viewer using two different flavors: Bigtreetech-style or PrusaSlicer-style.


The first type is to store the thumbnails at a specific location in the gcode file using a dedicated Cura plugin or external post-processing script. The thumbnail's image data is raw encoded in a format which can be displayed on the TFT without any complex image transformations. Displaying these embedded thumbnails at the TFT is the fastest approach and suitable for all different BigTreeTech's TFT variants. Downside is that you either need a dedicated plugin, for example the BTT 3D Plug-In Suit, or you have to use the post-processing script.

The other type is to store the thumbnails using dedicated comments ( and ) which is implemented in stock by some slicers like Prusa-Slicer. The thumbnail's image data is a PNG file encoded in Base64 which cannot be displayed directly on the TFT: A base64 decoding and png decoding needs to be performed which is quite complex for the TFT. Displaying these thumbnails is slower but more flexible. Due to the memory requirements it is not suitable for all the different TFT variants (only for those with ).

Thumbnail generation needs to be specifically enabled in Prusa-Slicer. Under Printer Settings at the G-code thumbnails settings you have to enter the specific required thumbnail image size for your TFT.


Thumbnail image sizes are:

  • : TFT24 / TFT28
  • : TFT43 / TFT50
  • : TFT35
  • : TFT70

If this setting is not visible within the Prusa-Slicer you need to enable Expert Settings Mode: ps-expert-settings

TFT Screen Configuration and support for RRF


The most recent version of the standard bigtreetech TFT firmware has built in support for RepRapFirmware. The pre-built images have this enabled by default.

Loading the firmware:

There is now an RRF config.ini It needs to be renamed from config_rrf.ini to config.ini for flashing of the firmware.

Config.g Changes:

Add the following line to your config.g to enable the screen: M575 P1 S2 B57600

Implemented features:

Auto detect fw type + separate config.ini for easier setup -Temperature/movement/cooling status monitoring and control

  • Print status monitoring with mid-print tuneing/pausing
  • Macro support
  • Print from onboard/external SD card
  • Please see Feature request #1791 for more information.

Menu system for macros:

  • Thumbnail and menu system support for onboard gcodes
  • Load/unload menu
  • PID tune menu

Setup of BTT TFT35 E3 V3 with MKS SGEN L Mainboards

The following mainboards are covered by this document.

MKS GEN_L v1.0, MKS SGEN (LPC1769), MKS SGEN_L v1.0 (LPC1768) and MKS SGEN_L v2.0 (LPC1769)


The TFT35 E3 V3.0 has 3 cables to connect to the mainboard. Two 10 pin ribbon cables and one 5 pin serial cable. The 2 ribbon cables connect to the EXP1 and the EXP2 connections on both the TFT35 E3 V3.0 and the MKS mainboards.

The RS232 cable is connected to the RS232 connection on the touchscreen, with the other end connecting to the AUX1 connection on the mainboard. The RS232 cable has 5 wires. One end has a single 5 wire connector that goes to the RS232 connector on the touchscreen, and the other end has two connectors, one has 4 wires, and the second one has one wire. That single wire is for the Reset and is not used on these MKS mainboards. The 4-pin connector plugs into the AUX1 connection. It must connect to the top row of pins when looking at the socket with the notch facing away from the mainboard and must be also plugged in with the 5v+ wire connected to the first pin in the upper left corner of the socket. The RESET wire is not connected to anything.


NOTE: On the MKS mainboards there is an issue that involves at least the MKS GEN_L, MKS SGEN, and MKS SGEN_L models. The EXP1 and EXP2 connections have the socket shell installed wrong way around. The notch that indexes the cable should be facing towards the mainboard. If you get a blank screen on the TFT35 E3 V3.0 touchscreen after connecting the two EXP cables and turning the printer on, turn printer off and disconnect the 10 pin cables from either the touch screen or the mainboard and using small diagonal cutters trim the tab down to be as close to flush as you can get on both cables (and only on one end) and plug them back in with the trimmed tab now facing the mainboard.


The second workaround for this issue is to carefully pry the two shells surrounding the pins on the mainboard upwards until they clear the pins. Do NOT use a metal tool for this, use a sturdy plastic or whalebone prying tool. Turn the shell 180 degrees and align the pins with the holes in the shells and push the shells back on with your thumb. Do not push the shell back on with something that could cause damage if it were to slip. Once the shells are installed you can use the stock (unaltered) cables as they are.


Edit the configuration.h file and enable the line that says: #define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER Rebuild and deploy the Marlin firmware to your 3D Printer.

Show more statistics at the end of the print

Statistics as filament length, filament weight and filament cost can be embedded into the gCode. After the print is finished there will be an infobox that you can click and a popup will present you the printed filename (limited to the first 25 characters), the time needed for the print, the filament length used, the filament weight and its cost. In the case of multi-filament usage the statistics will show the sum of all individual data (sum of length, sum of weight, sum of cost). The statistic data in the gCode must have the following format (a good practice would be to include this at the beginning of the gCode):

  • L: represents the length in meters
  • W: represents the weight in grams
  • C: represents the cost without a unit

The values of every filament data can be in a brackets, parentheses, apostrophes, etc. or without them, measurement units can be there or not. So , , and so on are all valid formats. For multi-filament print statistics the data for each used filament should be written, they can be separated by comma, space, asterix, whatever, except ";" and ".". Examples for multi-filament:

    The inclusion of the filament data into the gCode can be automated. In Cura all you have to do is to insert the following into the Start G-Code:

      In case the gCode file has been generated using the BTT 3D Plug-In Suit, the data is automatically added.

      In case filament data is not present in the gCode, the filament length data is calculated during print. Length is calculated regardless of using the TFT USB, TFT SD or the onboard SD. Calculations are done in both absolute or relative extrusion mode. Filament data takes into account the flow rate also but with a caveat. It has to be the same flow rate during the entire time of the printing, because the end result is calculated based on the flow rate at the time the print has finished. If flow rate changes during the print the results will not be accurate anymore.


      However, there was still no complete saturation with femininity. The further, the more he felt dissatisfaction, he wanted more, something even more wonderful, exciting. But why. This Zhenya himself could not imagine. Often, while masturbating, he imagined walking down the street in a dress.

      Tft35 firmware bigtreetech v3.0

      Each was laid with his neck on a log. And Medvedko himself, with a quack and a hoot, cut off their heads. Figuratively speaking, the enemy's military force was beheaded.

      TFT35 E3 V3 Screen upgrade for 3d printer from Bigtreetech - Unboxing and Firmware Update

      I helped him with something, so we finished it in half an hour. In the kitchen, he was frying some kind of fish, the smell of which reached all the way to the first floor. To be honest, I hate fish and fish products, but for the sake of my beloved I could endure. Although I did not have to endure for long, because as soon as I appeared in the kitchen, the fish mysteriously disappeared somewhere.

      He hid it because he thought I was so hungry that I would eat his fish as soon as I was alone with her.

      You will also be interested:

      Can't convey what happened to him. We already had an orgasm together. Then they lay side by side.

      1597 1598 1599 1600 1601