
Installer un écran TFT sur une Geeetech A10 (GT2560 V3) c’est possible !
Écran couleur de 3,5″ à 7″, tactile, paramétrable, multilingue. Module WIFI (option). Plus rapide en chauffe, utilisation possible du BL Touch, calibrage facilité…
Le modèle TFT se décline en plusieurs modèles (V2 sans molette rotative, V3 avec molette) et 3 diagonales d’écran : 3,5″ TFT35, 5″ TFT50 et 7″ TFT70. J’ai opté pour le modèle TFT50, le 35 étant vraiment trop petit à l’utilisation, surtout en tactile. Le 70 est excellent, mais son tarif m’a dissuadé : 51 € sur le site BTT, 53 € sur Aliexpress et 90 € sur Amazon !


L’écran BigtreeTech TFT50

Site du fabricant : Bigtreetech TFT 43, 50 ou 70 (TFT50 : 41€* sur la boutique du fabricant, mais la livraison est un peu longue)
Achat sur Aliexpress : BigtreeTech TFT50 (46€*), disponible également sur Amazon pour les modèles 35 et 70.
*Tarif au 1er novembre 2024
La carte mère de l’imprimante
La carte mère Geeetech GT2560 V3 est une version spéciale avec un connecteur spécifique (nappe 40 pins) pour l’écran et le SD. À première vue, il n’y a pas d’autres connecteurs où l’on pourrait se brancher. Si l’on regarde attentivement la carte mère et qu’on étudie un peu son schéma, on découvre des choses intéressantes :

Le port4 UART (RXD3/TXD3) est parfaitement utilisable. Il suffit de souder 4 fils aux pins pour pouvoir y connecter la nappe fournie avec l’écran TFT de chez BigtreeTech. Quatre fils suffisent pour le TFT, il faut utiliser la liaison RS232 de la carte BigtreeTech qui elle comporte cinq fils : le 5V (+5V), GND (GND), TX (PA2), RX (PA3)
Note : le fil RESET (RST) n’est pas utilisé.
La meilleure solution est d’utiliser une barrette DIP de 4 broches à souder au pas de 2,54 mm et d’utiliser un connecteur femelle « Dupont » à 4 broches.



Les connecteurs de la carte BigtreeTech TFT50

C’est la nappe plate qu’il faudra connecter au port RS232 (en haut à droite) puis relier les fils au connecteur Port4 (UART) de la carte GT2560 v3 de l’imprimante Geeetech. Il faudra bien sûr couper la nappe et connecter correctement les fils pour qu’ils correspondent aux signaux.
Attention : Si vous avez bien regardé, vous remarquerez que le TX du TFT vient se brancher au RX de la carte. Idem pour RX du TFT qui vient se brancher au TX de la carte. (pour une CR10 pro, il n’y a pas d’inversion TX vers RX !)
Note : RX signifie réception et TX transmition d’où le TX de l’émetteur vers le RX du récepteur et vice-versa.
Le connecteur USB de la carte BigtreeTech est également fonctionnel. On pourra désormais lancer une impression depuis la clé USB qui y est connectée, mais pour ma part, je préfère utiliser la carte micro-SD.

Les écrans BigtreeTech sont des microcontrôleurs à part entière et possèdent un processeur 32 bits ARM GD32F205VCT6 plus puissants que celui de la carte mère Geeetech de l’A10, un ATMEGA2560. La carte mère de l’écran remplace pratiquement la carte mère de l’imprimante. Sur le modèle TFT70, le processeur est un ARM GD32F407VET6.

Le processeur de l’écran fait le plus gros du boulot, la carte mère de l’imprimante n’a plus qu’à mâcher du Gcode.
ATMEGA2560 (carte GT2560) vs ARM GD32F205VCT6 (carte Bigtreetech)
ATMEGA 2560 | ARM GD32F205VCT6 | |
---|---|---|
Architecture | 8 bits | 32 bits |
Clock speed | 16 MHz | 120 MHz (166 MHZ sur TFT70) |
Flash memory (Kb) | 32Kb (256Kb carte GT2560 v3) | 256Kb |
EEProm (Kb) | 4Kb | 128Kb |
SRam (Kb) | 8Kb | 128Kb |
I/O | 54 (15 PWM, 16 analogiques, 23 numériques) | +82 |
Ports | 1x USB 2, LCD, | UART, I2C, I2S, SPI, USB 2, SDIO, CAN, TFT |
Modification du firmware et mise à jour
Téléchargez et installez Visual Studio Code de Microsoft (voir plus loin la vidéo explicative pour la configuration et la modification). Il faut utiliser Vscode, car Arduino n’est plus conseillé pour les dernières versions de Marlin (version 2.1.2.2 sur ma machine)
Firmware Marlin v2.1.2.2 : télécharger
Firmware BigtreeTech
Toutes les infos et le firmware sont sur le GitHub de BigtreeTech : lien
Ne pas oublier de remplacer les fichiers Configuration.h et Configuration_adv.h de Marlin en mettant ceux correspondant à la Geeetech A10 qui se trouvent dans le dossier config/examples du firmware BigtreeTech.
Lien de téléchargement VSCode (logiciel gratuit compatible Linux, Mac & PC) : Visual Studio Code
Modification avec VSCode
Voir la vidéo explicative à la fin.
Afin d’activer ce port de la carte GT2560, il faut modifier le firmware. Modifier en premier lieu la ligne 126 dans le fichier Configuration.h et activer le PORT_2 3
/**
* Select a secondary serial port on the board to use for communication with the host.
* Currently Ethernet (-2) is only supported on Teensy 4.1 boards.
* :[-2, -1, 0, 1, 2, 3, 4, 5, 6, 7]
*/
#define SERIAL_PORT_2 3 //Modif Touch-screen
#define BAUDRATE_2 115200 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE
Il faudra par ailleurs modifier d’autres lignes du fichier Configuration.h afin que l’écran soit correctement paramétré pour la Geeetech A10 (valable aussi pour l’Ender 3 de Creality). Les lignes à modifier sont annotées :
//Modif Touch-screen
// Enable the M48 repeatability test to test probe accuracy
#define Z_MIN_PROBE_REPEATABILITY_TEST //Modif Touch-screen
/**
* Enable the G26 Mesh Validation Pattern tool.
*/
#define G26_MESH_VALIDATION //Modif Touch-screen
#if ENABLED(G26_MESH_VALIDATION)
#define MESH_TEST_NOZZLE_SIZE 0.4 // (mm) Diameter of primary nozzle.
#define MESH_TEST_LAYER_HEIGHT 0.2 // (mm) Default layer height for G26.
#define MESH_TEST_HOTEND_TEMP 190 // (°C) Default nozzle temperature for G26.
#define MESH_TEST_BED_TEMP 60 // (°C) Default bed temperature for G26.
#define G26_XY_FEEDRATE 20 // (mm/s) Feedrate for G26 XY moves.
#define G26_XY_FEEDRATE_TRAVEL 100 // (mm/s) Feedrate for G26 XY travel moves.
#define G26_RETRACT_MULTIPLIER 1.0 // G26 Q (retraction) used by default between mesh test elements.
#endif
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER //Modif Touch-screen
Commenter la ligne 1610 à l’aide de deux slash // en début de ligne :
//#define REPRAP_DISCOUNT_SMART_CONTROLLER //Modif Touch-screen
Il faudra également modifier quelques ligne dans le fichier Configuration_adv.h
// Add 'M73' to set print job progress, overrides Marlin's built-in estimate
#define SET_PROGRESS_MANUALLY //Modif Touch-screen
#if ENABLED(SET_PROGRESS_MANUALLY)
#define SET_PROGRESS_PERCENT // Add 'P' parameter to set percentage done
#define SET_REMAINING_TIME // Add 'R' parameter to set remaining time
//#define SET_INTERACTION_TIME // Add 'C' parameter to set time until next filament change or other user interaction
#define M73_REPORT // Modif Touch-screen - Report M73 values to host
#if BOTH(M73_REPORT, SDSUPPORT)
#define M73_REPORT_SD_ONLY // Report only when printing from SD
#endif
#endif
#define SDCARD_CONNECTION ONBOARD //Modif Touch-screen
#define EMERGENCY_PARSER //Modif Touch-screen
// Some clients will have this feature soon. This could make the NO_TIMEOUTS unnecessary.
#define ADVANCED_OK //Modif Touch-screen
// For serial echo, the number of digits after the decimal point
#define SERIAL_FLOAT_PRECISION 4 //Modif Touch-screen
/**
* Auto-report temperatures with M155 S<seconds>
*/
#define AUTO_REPORT_TEMPERATURES //Modif Touch-screen
#if ENABLED(AUTO_REPORT_TEMPERATURES) && TEMP_SENSOR_REDUNDANT
//#define AUTO_REPORT_REDUNDANT // Include the "R" sensor in the auto-report
#endif
/**
* Auto-report position with M154 S<seconds>
*/
#define AUTO_REPORT_POSITION //Modif Touch-screen
/**
* Include capabilities in M115 output
*/
#define EXTENDED_CAPABILITIES_REPORT
#if ENABLED(EXTENDED_CAPABILITIES_REPORT)
#define M115_GEOMETRY_REPORT //Modif Touch-screen
#endif
#define HOST_ACTION_COMMANDS //Modif Touch-screen
#if ENABLED(HOST_ACTION_COMMANDS)
//#define HOST_PAUSE_M76 // Tell the host to pause in response to M76
#define HOST_PROMPT_SUPPORT // Modif Touch-screen - Initiate host prompts to get user feedback
#if ENABLED(HOST_PROMPT_SUPPORT)
#define HOST_STATUS_NOTIFICATIONS // Modif Touch-screen - Send some status messages to the host as notifications
#endif
//#define HOST_START_MENU_ITEM // Add a menu item that tells the host to start
//#define HOST_SHUTDOWN_MENU_ITEM // Add a menu item that tells the host to shut down
#endif
Fichiers Configuration.h et Configuration_adv.h modifiés pour A10 : télécharger
Création du boitier
J’ai dessiné le boitier en trois parties (boitier, couvercle et support) avec le logiciel Solidworks puis fait trois exports en STL.




Les 3 fichiers STL sont disponibles en téléchargement ici : STL Boitier BigtreeTech

Montage







Modification, mise à jour et upload du firmware
Suivre l’excellent tuto de KaminoKGY sur Youtube. C’est pour le TFT35 E3 mais c’est la même manipulation pour le TFT35, TFT50 ou TFT70 en v3.
Tutoriel complet sur l’écran Bigtreetech TFT43 V3.0 sur la Cr-10s Pro
Une excellente vidéo Youtube du québécois Jocelyn sur les différentes fonctions disponibles avec cet écran.
Le boitier terminé et monté sur ma Geeetech A10
