Ce tutoriel détaillé vous guidera à travers toutes les étapes nécessaires pour convertir votre firmware Marlin en firmware Klipper, en expliquant chaque fichier de configuration et de paramétrage. Vous trouverez également un lexique des termes courants, un tableau de correspondance des commandes et réglages, ainsi qu’un convertisseur HTML pour faciliter la conversion.
Table des Matières
- Introduction aux Firmwares
- Préparation de la Conversion
- Fichiers de Configuration Klipper
- Tableau de Correspondance des Commandes et Réglages
- Lexique des Termes Courants
- Convertisseur HTML Marlin / Klipper
- Conclusion
Introduction aux Firmwares
Marlin
Marlin est un firmware open-source utilisé dans de nombreuses imprimantes 3D FDM (Fused Deposition Modeling). Il offre une vaste gamme de fonctionnalités et est configurable via des fichiers de configuration .h dans le code source.
Klipper
Klipper est un firmware innovant qui utilise un processeur hôte (comme un Raspberry Pi) pour effectuer des calculs complexes, permettant ainsi à la carte de contrôle de se concentrer sur les tâches de bas niveau. Cela permet d’augmenter les vitesses d’impression et d’améliorer les performances globales de l’imprimante.
Préparation de la Conversion
Sauvegarde de la Configuration Marlin
Avant de commencer, assurez-vous d’avoir une copie de votre configuration Marlin, généralement stockée dans les fichiers Configuration.h et Configuration_adv.h.
Installation de Klipper
- Raspberry Pi Setup : Suivez les instructions sur le site de Klipper pour installer Klipper sur votre Raspberry Pi.
- Firmware pour la Carte de Contrôle : Vous devrez flasher votre carte de contrôle avec le firmware généré par Klipper.
Fichiers de Configuration Klipper
printer.cfg
C’est le fichier principal de configuration pour Klipper. Il contient toutes les informations nécessaires pour configurer votre imprimante.
Sections de printer.cfg
1. [stepper_x]
[stepper_x]
step_pin: arduino_pin_a1
dir_pin: arduino_pin_a2
enable_pin: !arduino_pin_a3
step_distance: .0125
endstop_pin: ^arduino_pin_a4
position_endstop: 0
position_max: 200
homing_speed: 50
step_pin,dir_pin,enable_pin: Pins de contrôle du moteur pas à pas.step_distance: Distance parcourue par pas.endstop_pin: Pin de l’endstop.position_endstop: Position de l’endstop.position_max: Position maximale de l’axe.homing_speed: Vitesse de retour à la maison.
2. [extruder]
[extruder]
step_pin: arduino_pin_b1
dir_pin: arduino_pin_b2
enable_pin: !arduino_pin_b3
step_distance: .0106
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: arduino_pin_b4
sensor_type: EPCOS 100K B57560G104F
sensor_pin: analog10
control: pid
pid_kp: 22.2
pid_ki: 1.08
pid_kd: 114
nozzle_diameter,filament_diameter: Dimensions de la buse et du filament.heater_pin,sensor_type,sensor_pin: Contrôle et capteur de température.control,pid_kp,pid_ki,pid_kd: Contrôle PID de la température.
3. [heater_bed]
[heater_bed]
heater_pin: arduino_pin_c1
sensor_type: EPCOS 100K B57560G104F
sensor_pin: analog11
control: pid
pid_kp: 10.0
pid_ki: .02
pid_kd: 305
Tableau de Correspondance des Commandes et Réglages
Tableau de Correspondance
| Fonction/Commande | Marlin | Klipper |
|---|---|---|
| Déplacement X, Y, Z | G0/G1 X Y Z | G0/G1 X Y Z |
| Home (origine) | G28 | G28 |
| Auto Bed Leveling | G29 | BED_MESH_CALIBRATE |
| Température Hotend | M104 S | SET_HEATER_TEMPERATURE extruder= S |
| Température Bed | M140 S | SET_HEATER_TEMPERATURE heater_bed= S |
| Ventilateur | M106 S | SET_FAN_SPEED fan= S |
| Réglage PID Hotend | M301 P I D | SET_PID extruder= pid_kp= pid_ki= pid_kd= |
| Réglage PID Bed | M304 P I D | SET_PID heater_bed= pid_kp= pid_ki= pid_kd= |
| Définir Pas par mm | M92 X Y Z E | SET_STEPPER_STEP_DISTANCE stepper_x= step_distance= |
| Vitesse Déplacement | M203 X Y Z E | SET_VELOCITY_LIMIT axis_x= max_velocity= |
| Accélération | M201 X Y Z E | SET_ACCELERATION axis_x= max_accel= |
Lexique des Termes Courants
| Terme | Marlin | Klipper | Description |
|---|---|---|---|
| step_pin | X_STEP_PIN | step_pin | Pin de pas pour le moteur |
| dir_pin | X_DIR_PIN | dir_pin | Pin de direction pour le moteur |
| enable_pin | X_ENABLE_PIN | enable_pin | Pin d’activation pour le moteur |
| endstop_pin | X_MIN_PIN / X_MAX_PIN | endstop_pin | Pin de l’endstop |
| step_distance | DEFAULT_AXIS_STEPS_PER_UNIT | step_distance | Distance parcourue par pas |
| homing_speed | HOMING_FEEDRATE | homing_speed | Vitesse de retour à la maison |
| nozzle_diameter | NOZZLE_DIAMETER | nozzle_diameter | Diamètre de la buse |
| filament_diameter | DEFAULT_NOMINAL_FILAMENT_DIA | filament_diameter | Diamètre du filament |
| heater_pin | HEATER_0_PIN | heater_pin | Pin de contrôle du chauffage |
| sensor_type | TEMP_SENSOR_0 | sensor_type | Type de capteur de température |
| sensor_pin | TEMP_0_PIN | sensor_pin | Pin du capteur de température |
| control | PIDTEMP | control | Mode de contrôle de la température |
| pid_kp, pid_ki, pid_kd | DEFAULT_Kp, Ki, Kd | pid_kp, pid_ki, pid_kd | Paramètres PID pour le contrôle de la température |
| heater_bed | HEATER_BED_PIN | heater_pin | Pin de contrôle du lit chauffant |
| velocity_limit | DEFAULT_MAX_FEEDRATE | max_velocity | Vitesse maximale de déplacement |
| acceleration | DEFAULT_MAX_ACCELERATION | max_accel | Accélération maximale |
Convertisseur HTML Marlin / Klipper
Marlin -> Klipper
Voici un programme HTML avec JavaScript intégré pour convertir des commandes Marlin en commandes Klipper.
Conclusion
En suivant ce tutoriel, vous pouvez convertir efficacement votre firmware Marlin en firmware Klipper, améliorant ainsi les performances et les capacités de votre imprimante 3D. Ce guide couvre les configurations nécessaires, les correspondances des commandes, et inclut un programme HTML pour automatiser une partie de la conversion. N’oubliez pas de tester chaque fonctionnalité après la conversion pour vous assurer que tout fonctionne correctement.



