L'article traite, dans le cas d'un imprimante 3D et particulièrement d'une Anet A8 de l'autoleveling.
Sur les capteurs on ne couvre que les Inductifs et Capacitifs, on délaisse les : BT Touch, piezo, capteurs optique
- Installation du capteur
- Firmware : remplacement du firmware l'origine par du Marlin
- Utilisation et test
- troubleshooting
L'article est mise à jour au faire et à mesure des avancées, ce qui peut entraîner un décalage entre les paragraphes
| Date | Commentaires |
|---|---|
| 20180909 | ajout image identifier les capteur inductif/Capacitif |
| 20180908 | modification des scripts Cura/octoprint |
| 20180907 | révision chapitre 12V. Ajout image diode Zener |
| 20180905 | Capteur Capacitif |
| 20181207 | référence diode zener |
| 20190307 | ajout capteur PINDA |
| 20190628 | level shift converter |
| 20190701 | Correction d'un bug dans le §4.2 |
| 20200510 | ajout infos pour bed leveling |
| 20210116 | details sur capteur NPN /PNP |
Pour le montage du capteur, on le fait sur l’arrière du chariot pour mse réserver de future évolution sur le chariot en lui même. De plus je ne veux pas qu'il soit placé sur les trous des tenseurs de l'axe des X.
Le temps que l'on soit livré et avant de tout démonter : Ce modèle : ANET A8 | V2 Rear Bed Level Sensor Holder - Customizable
2- 1 Choix du capteur
Je vous renvoie vers cette video : Autoleveling on 3D printers: 9 myths and 12 sensors tested!
2.2 - Choix du capteur
On utilise un capteur à Induction ou Capacitif avec des diamètres de M8 à M18
La sensibilité est donné pour du fer. Pour l'aluminium c'est 30% de moins pour du verre c'est 1/4 à 1/8 de la distance
Avantage des Inductifs:
- alimentation en 5v pour une partie d'entre eux
- précision, même s'il sont fait pour un support ferreux, il fonctionnent correctement sur de l’aluminium à plus courte distance.
- plutôt économique avec des formes différentes et une grandes gamme
Défaut des Inductifs:
- pas sur le verre
- pas avec un support magnétique (j'ai testé, ça donne des résultats étranges)
Avantage Capacitif:
- indépendant du support, notamment verre
- présence d'un potard de régalage de sensibilité
Défaut des Capacitif:
- chère, voire très cher pour du haut de gamme (ex: OMRON)
- PINDA v2 : elle incorpore une 4ieme fil (blanc) qui pilote une thermistor pour la correction d'erreur. CE fil n'est supporté que depuis Marlin 2.0.60+
- D'un point de vue détection, et après avoir utilisé plusieurs capteur en 18mm de diamètre, les capteurs de 12mm avec une détection à 4mm sont bien suffisant et moins lourd.
- la LJ8A3-2-Z/BX avec ses 8mm de diamètre est mignonne mais 2mm de détection c'est pas suffisant sur de l'alu
- l'Omron E2K-X4ME1 qui est un 12mm de diamètre donne de bon résultat mais sa plage de détection sur du verre est un peu courte. il vaut mieux opter pour une 18MM
Les enveloppes plastiques permettent de réduire le poids.
| type | modèle | Ouvert ou Fermé | Voltage |
diamètre (en mm) |
Plage détection |
|
|---|---|---|---|---|---|---|
| Inductif | LJ18A3-8-Z/BY | NPN | NO | 18 | 8mm, plage 0-7 | |
| Inductif | LJ12A3-4-Z/BX | NPN | 12 | 4mm | ||
| Inductif | LJ18A3-8-Z/BX-5V | NPN | NO | 5V | 18 | 8mm |
| capacitif | LJC18A3-H-Z/BX | NPN | NO | 6-36V | 18 | 1-10mm |
| capacitif | Omron E2K-X4ME1 | NPN | NO | 12-24V | 12 | 4mm |
| inductif | P.I.N.D.A v2 | 5V | 12 | |||
| inductif | LJ8A3-2-Z/BX | NPN | NO | 5V | 8 | 2mm |
Test des capteurs : 10 repetitions sur verre. Pour un bon capteur il faut que le range soit de l'ordre de 0.025
Le câble pour connecteur sur le carte mère est un JST XHP-3

Si ça peut aider:

Les capteur se comportent comme des interrupteurs
Fonctionnement des sorties PNP
Lorsque qu'un capteur avec une sortie PNP est activé il met en contact le fil du signal avec l'alimentation. La tension sur le fil de signal passe donc à la valeur de la tension d'alimentation. Ça a l'avantage d'être très simple, mais on ne peut pas vraiment choisir la tension de sortie.
/image%2F1607858%2F20210117%2Fob_eec359_pnp-fr-1.png)
Fonctionnement des sorties NPN
Les sorties NPN fonctionnent dans l'autre sens. Lorsque le capteur est actif, il met en contact
le fil de sortie avec la masse. Ce qui veut dire qu'il n'injecte pas de courant dans le fil de sortie donc la tension d'alimentation de la sonde est indépendante de la carte mère. Par conséquent, pour que le changement puisse être détecté, il faut que quelqu'un se charge de mettre de la tension sur le fil. C'est le rôle d'un Pull-up.
Notez qu'une sortie NPN fonctionne à l'inverse d'une sortie PNP: le signal passe à zéro quand le capteur est actif.
/image%2F1607858%2F20210117%2Fob_1e517a_npn-fr-2.png)
Pull-UP
Un pull-up consiste simplement à connecter une ligne de signal à une tension quelconque par l'intermédiaire d'une résistance. Dans notre cas, lorsque le capteur est repos, la ligne de signal est à la tension du pull-up et lorsque la capteur est actif, la tension passe à zéro. Attention, la résistance est obligatoire. Si vous branchez directement la ligne de signal à la source de tension, il va y avoir un court circuit dès que le capteur va mettre en commun la ligne de signal et la masse. La valeur typique pour une résistance de pull-up est 4.7kΩ.
La plus part des MCU (Arduino, stm32) support des résistances interne de pull-up mais il faut penser à les activer.
/image%2F1607858%2F20210117%2Fob_8959cd_pullup-fr-3.png)
L'entrée sur la carte Anet est active sur courant bas. Cela signifie qu’elle est maintenue haute à 5v avec une résistance pull-up interne et qu’elle est activement commutée sur 0V.
Si vous obtenez un capteur à collecteur ouvert, vous aurez un câblage plus facile. C'est à dire un collecteur ouvert, connectez l’alimentation (12V) au fil brun (+) et au fil bleu (-). Ensuite, prenez un multimètre et vérifiez la tension entre le noir et le bleu. S'il n'y en a pas, vous avez un capteur à collecteur ouvert, qui peut être connecté directement à la carte.
La plupart des capteurs chinois n'ont pas de sortie à collecteur ouvert (il peut s'agir du circuit à LED). Ils ont une résistance interne pull-up. C'est pourquoi le fil noir est non seulement à haute impédance lorsque le capteur n'est pas commuté, mais également sous tension. Pour ça, vous avez besoin d'ajouter au moins une résistance entre le fil noir et le fil bleu pour réduire la tension près de 5V. (comme mentionné ci-dessus, ce n'est pas pour la commutation mais la sécurisation de la carte. La commutation se fait avec 0v). Une autre façon de mettre une diode, ce qui devrait également empêcher d’endommager la carte avec les pics de tension du capteur lors de la commutation.
Si votre capteur est en 12V comme l'inductif LJ12A3-4-Z/BX ou AFAIK tous les capacitifs, il vous faut un montage pour adapter tension de sortie à celui du z-min de la carte.
Plusieurs montages sont possibles
1) Le point de diviseur de tension avec des résistances (cout : presque que les frais de ports):
2) la diode Zener : c'est simple 1 composant, rapide et efficace. Une des mes solutions préféré : (coût environ 1€50 avec les FP)
Référence de la diode : Diode Zener 0,5W 5,1V (BZX55C5V1)
4) la solution mode artillerie mi-lourde : utilisation d'un l'optocoupleur (4N35) et d'une résistance (1k Ohms), au moins là pas de doute. (Coût environ 3€ avec FP)
Le module tout fait : (PC817 en 12V) 1€ environ Les Résistance R1 et R2 sont intégré sur le module
4) Solution esthétique : Level shift converter
J'ai découvert cette solution ressèment (2019-06).
Level Shifter, Logic Level Converter 12-Channel 5V to 12V or 12V to 5V

Bleu : la masse => bord interne du connecteur de la carte
Marron : le 5V
voilà les code couleur standard des capteurs :
![]() |
![]() |
Câblage sur la carte mère de l'ANET

Télécharger l'IDE arduino en version 1.8x : https://www.arduino.cc/en/main/software
Télécharger les paramètres de la carte : https://github.com/SkyNet3D/anet-board
Clone le repertoire du firmware Marlin :
git clone https://github.com/MarlinFirmware/Marlin.gitCopier les fichier Configuration.h et le Configuration_adv.h qui sont dans Marlin-1.1.x/Marlin/example_configurations/Anet/A8 vers Marlin-1.1.x/Marlin (c'est le même répertoire que Marlin.ino)
Ouvrir Marlin.ino avec l'IDE Arduino, sélectionner Anet 1.0 board et le port COM ou est connecté l'imprimante (/dev/ttyUSB0 pour un linux, COMxx pour un windows)
Faire une mise à jour de toute les librairies dans l'IDE arduino (dans le menu Croquis/Inclure un bibliotheques/Gerer les bibliotheque/ Possible mettre à jour) avant de lancer la compilation. Toute les versions peuvent être msie çà jour, même c'elle qui change de version (genre 1.1.8 à 2.0.1)
Lancer une vérification, pour vérifier que l'on a tout.
3.1 configuration du Firmware
On modifie les lignes suivantes dans le fichier de Configuration.h il faut recompiler et déployer le firmware ensuite :
#define FIX_MOUNTED_PROBE #define LCD_LANGUAGE fr #define DISPLAY_CHARSET_HD44780 WESTERN #define Z_MIN_PROBE_REPEATABILITY_TEST // on autorise les teste de repetabilité #define AUTO_BED_LEVELING_BILINEAR #define GRID_MAX_POINTS_X 4
3.2 Offset
L'offset X/Y est celui que j'ai mesuré avec mon support imprimé. Ajustez au votre, n'utilisez pas les valeurs par défaut donné avec votre support, sinon les corrections appliquées le seront aux mauvais endroit.
// On cale le decalage entre la tete d'impression et le capteur
// en X
// #define X_PROBE_OFFSET_FROM_EXTRUDER 26 // valeur par défaut du support
#define X_PROBE_OFFSET_FROM_EXTRUDER 20 // X offset: -left +right [of the nozzle]
// en Y
// #define Y_PROBE_OFFSET_FROM_EXTRUDER 51 // valeur par defaut du support
#define Y_PROBE_OFFSET_FROM_EXTRUDER 63
// en Z
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle]
Protocole pour mesure l'Offset:
- On mesure la taille du plateau (220x220) puis on trace une croix au centre
- On amène la tête d'impression au centre (commande : G28 ; G1 X110 Y110 Z2)
- On fait doucement descendre la tête. Si elle n'arrive pas sur la croix c'est qu'il y'a un décalage voir : http://nitocris.over-blog.net/2018/08/centrage-de-la-buse-d-impression.html
- On mesure l’écart au bord du plateau de la sonde
- On mesure le diamètre de la tête de la sonde (16mm pour la mienne)
- l’écart sur les X [resp. Y] est de 110-[distance mesuré du bord à la sonde]-[diamètre sonde /2]
- On utilise ces valeur pour le X_PROBE_OFFSET_FROM_EXTRUDER et Y_PROBE_OFFSET_FROM_EXTRUDER

3.5 Zone Limite
On défini les extrémités de la zone à palper.
PROBE_BED_POSITION ici c’est la distance limite du capteur par rapport à l’origine du plateau
LEFT et FRONT limite minimal et
RIGHT et BACK limite maximal
Avec une sonde de 16mm de diametre, placé vers l’arrière et lègèrement à droite, il y'a toute la partie frontale qu'on ne peut atteindre et un petit bout sur la gauche
// on ajoute de les limite que la sonde ne peut atteindre
// Set the boundaries for probing (where the probe can reach).
#define LEFT_PROBE_BED_POSITION 5+X_PROBE_OFFSET_FROM_EXTRUDER
#define RIGHT_PROBE_BED_POSITION X_BED_SIZE-16
#define FRONT_PROBE_BED_POSITION Y_PROBE_OFFSET_FROM_EXTRUDER
#define BACK_PROBE_BED_POSITION Y_BED_SIZE-16
// ou skynet 3D il est recommander de donner directement les valeurs plutôt que de lui faire calculer
3.6 Sécurité
On rajoute une hauteur minimal pour les déplacement en Z quand renvoie la tête "à la maison"
#define Z_HOMING_HEIGHT 6 #define Z_SAFE_HOMING // surtout que l'on va avoir une valeur de Z negative Z_CLEARANCE_DEPLOY_PROBE 2 Z_CLEARANCE_BETWEEN_PROBE 5
3.7 Et Zou
On Compile le firmware et on transfert le tout dans la carte mere de l'Anet.
Après en ligne de commande et pour éviter "EEPROM CRC error, parameter mismatch", on érase l'eeprom avec les valeurs par défaut fichier de configuration
- On Charge les paramètre venu configuration.h dans l'EEPROM avec la commande M502
Puis on sauvegarde avec la commande M500
4.1 réglage du capteur en Z
Pour faire les test du capteur vous pouvez le faire avec un lit froid, mais dès qu'il s'agit de faire des mesure précise pour l'impression, placez votre lit 60°C et toute les mesure qui suivent doivent se faire dans ces conditions et en tenant compte de l'inertie thermique (lit en verre)
vous aller passer dans le terminal G-code les valeurs suivantes :
M851 Z0 // reset la valeur d’écart entre la sonde et la tête.
M500 // sauvegarde de cette valeur .
G28 // auto home sur X&Y&Z ; pré-requis obligatoire pour l'autoleveling. Si on fait le Z autrement : G28 X Y R (R depuis le 1.1.9)
G1 X110 Y110 F5000 // place la buse au centre du plateau. On tombe sur notre croix
M211 S0 // on désactive la limite de descente (Soft endstops: Off)
Maintenant on fait un leveling à la main avec la feuille de papier sur le centre du plateau d'impression. Le mouvement des Z doit se faire via des commandes passées (donc soit via cura, soit via octopi).
La surface de la tête doit être propre ou alors il faut la faire pré-chauffer.
On règle physiquement le capteur en altitude pour que la petite diode au dessus s'allume franchement. (Sur mon capteur capacitif il y'a un petit potentiomètre pour régler la sensibilité aussi - sens visser pour +sensible)
G92 Z0 : On définie un nouveau point 0 pour l'axe Z.
G91
G1 Z10 F200 : (ou directement via le panel) On fait monter le capteur de 10 pour être sur de faire une mesure à la descente
G90
G30 X110 Y110 : Place le capteur au centre du plateau (X=110; Y=110) sur la croix - si ce n'est pas le cas il y a un problème d'offset.
Et calcule la différence entre le 0 fait précédemment et la détection du plateau par le capteur. Cette commande va retourner la position de la tête sur les 3 axes, c'est la valeur du Z qui nous intéresse
Recv: X:90.00 Y:47.00 Z:2.43 E:0.00 Count X:18000 Y:9400 Z:1544
Pour vérifier, en répétant la séquence G1 Z10 F200 / G1 Z2.43 F200. On peut d’ailleurs s'en servir pour ajuster la valeur quand la diode s'allume et que le Z End-stop est "TRIGGERED" (commande M119)
M851 Z[-ValZ] // on fixe la hauteur de la sonde. Remplacez [ValZ] par la valeur négative (ici M851 Z-2.43).
M211 S1 // on active la limite de descente (software Z end-stop)
M500 : Sauvegarde la nouvelle valeur dans l'imprimante (EEPROM).
G28 // Auto-Home sur les 3 axes on doit se retrouver avec la sonde au milieu du plateau à l’altitude Z=2.43
Notes:
- Pour une mesure plus fine, on enlève une demie-épaisseur de feuille à ValZ, soit 0.05mm, donc ici Z-2.38
- Si Z est négatif, votre sonde est trop haute/pas assez sensible. Si c'est une sonde capacitive avec sensibilité réglable, vous pouvez jouer sur le potar pour rallumer la diode
- C'est la procédure pour Marlin > à 1.1.x
- avec Marlin 1.1.8 (c'est corrigé en 1.1.9+) pour calculer ValZ il faut enlever Z_CLEARANCE_DEPLOY_PROBE, ce qui donne [ValZ]=-2.43 + Z_CLEARANCE_DEPLOY_PROBE = -2.43+2=-0.43
- Negative ValZ : Nozzle tip is above the bed when the probe triggers. ("Below Nozzle");
- Positive Valz : Nozzle tip is pressing down on the bed when the probe triggers. ("Above Nozzle")]
Astuces :
- si vous imprimer du PETG, enlevez 0.05mm a Valz. Le PETG étant collant on l'imprime a une distance plus lache
- Certain capteurs ont tendance à réagir lentement, c'est le cas de mon capteur capacitif, et donnent une valeur de Z trop faible. Il suffit de faire monter un peu le capteur jusqu'à arriver au moment ou l'on ne déclenche plus le capteur avec la commande "M119" qui donne le statu des capteurs.

4.2 Activation de la compensation dans Cura ou Octoprint
Il faut rajoute la séquence suivante dans le Start GCode
G28 ; Auto Home All AXIS
M420 S1 ; active le dernier maillage stocké
M420 Z10 ; Arrete la compensation au dessus de 10mm. soit 2% par couche de 0.2
Pour note ma séquence de démarrage complète :
G21 ;valeurs métriques
G90 ;positionnement absolu
M82 ;mettre l'extrudeuse en mode absolu
M155 S5 ; active retour temperature
G28 X0 Y0 ;déplacer X / Y à des butées min
G28 Z0 ;déplacez Z en butées min
M420 S1 ; activation du mesh
M420 Z10 ; arrete la compensation au dessus de 10mm
M900 K0 ; Linear Compensation
M117 Clean ; Indicate nozzle clean in progress on LCD
G0 X5 Y15 F9000 ;Lit en avant
G0 Z0.20 ;Déposer au lit
G92 E0 ;zéro la longueur extrudée
G1 X45 E25 F500 ;Extruder 25 mm de filament sur 4 cm
G92 E0 ;zéro la longueur extrudée
G1 E-3 F500 ;Rétracter 3mm
G1 X80 F4000 ;Essuye rapidement la ligne de filament
G1 Z0.3 ;Levez et commencez à imprimer.
G5
Pour note ma sequence de d'arret complete :
M104 S0 ;chauffage de l'extrudeuse éteint
M140 S0 ;chauffe-lit chauffant éteint
G91 ;positionnement relatif
G1 E-1 F300 ;rétracter un peu le filament avant de soulever la buse, pour libérer une partie de la pression
G1 Z+0.5 E-5 X-20 Y-20 F9000 ;déplacez Z un peu et retirez le filament encore plus
G28 X0 Y0 ;déplacez X / Y jusqu'à la butée min, de sorte que la tête soit à l'écart
G90 ;positionnement absolu
G1 Y190 F9000 ;le lit se déplace vers l'avant
M84 ;steppers off
M155 S0
4.3 Pour faire une mesure de maillage
G28 ; Auto Home All AXIS
G29 ; execute ABL
L'autoleveling est une bête complexe. Une fois bien installé, il peut très bien fonctionner, mais s'il ne fonctionne pas bien pour vous, il y a quelques éléments de base à vérifier.
1) L'impression est bien sur un bord ou au milieu, mais la buse est trop près du lit dans un coin ou sur un bord. Dans ce cas, la première chose à vérifier est si les décalages de la sonde X et Y sont corrects.
2) Un autre problème courant est que la buse est trop haute au-dessus du lit lorsque l'impression commence. Ceci est souvent dû au fait que le décalage Z est incorrect. On peut par exemple enlever 20µm de plus aux 0.43mm mesurés:
M851 Z-0.45 M500
3) le plateau n'est pas très plat alors on peut augmenter le nombre de point
#define ABL_GRID_MAX_POINTS_X 5
4) Au test de la sonde vous obtenez une très grande plage ou un écart-type: vous devriez rechercher les sources de mouvement dans votre axe Z. Les coupleurs de moteur peuvent contribuer à un jeu excessif et vous pouvez envisager de les améliorer pour des meilleurs. Les coupleurs 6.35mmx8mm CNC Jaw Shaft Coupling Spider Flexible Plum Coupler Motor D25l30 n'offrent pas de mouvement verticale
A défaut, envisager d'obtenir une nouvelle sonde.
5) Si quand vous faite le bed leveling (G29) et que dans le scan votre tête touche le lit, c'est que votre tête est trop loin
6) Si la valeur que vous obtenez pour le Z de M851 est incorrecte en particulier votre tête d'impression plonge dans le lit, vérifiez que vos paramètres "CLEARANCE" car il s'ajoutent de manière inconditionnel sur le M851
Z_CLEARANCE_DEPLOY_PROBE 2 Z_CLEARANCE_BETWEEN_PROBE 5
5-1 Qualité de la mesure
On fait effectuer 10 mesures aux coordonnées (100;100)
G28 M48 P10 X100 Y100
68.2% des mesures sont dans un écart de 2.9µm et 95% des mesures dans 5.83µm d'écart. On considère que l'on est sur une bonne sonde si l'ecart type est de 50µm à 95%, ici on est presque 10 fois mieux.
Pour que la mesure soit suffisamment bonne il faut que la sonde déclanche assez tot
5-2 Circonvolution sur la précision
On a mesuré la repétabilité de la mesure mais en fait ce que l'on mesure c'est le pas d'arrêt sur l'axe Z du moteur et on moyenne le tout. Donc la précision n'est pas réduite à celle du capteur mais du système Moteur pas-à-pas +support qui bouge+ système de détection.
Pour finir sur le sujet: l'objectif de mesure est de l'ordre de 1/4 de ce que l'on veut imprimer (cf. loi de Shannon). Si on se donne comme objectif des impressions à 0.1mm (100µm) et bien il faut obtenir des mesure de l'ordre de 25µm
Une vue du plateau : à partir du plugin OctoPrint-BedLevelVisualizer avec ces paramètres :
G28
@BEDLEVELVISUALIZER
G29
Sinon vous pouvez aller sur les sites suivants pour afficher le graphique de planimétrie:


6.1 - Plateau non calibré

Pas beau hein !! Le Pic-To-Valley est de 1.6mm y'a urgence. Mais en même temps c'est une bonne indication de ce que l'on détecte.
Dans l'ordre et pas autrement :
1 - On vérifie que le pont des X est bien à la même hauteur de chaque coté, sinon ça grince sur les tiges des Z quand on commence à bouger vite. Ce graphe est la conséquence d'un axe des X qui penchait à droite et que l'on a corrigé (il manquait un bon centimètre). Pour ça un pied à coulisse est idéale, numérique au centième si possible. (Like pour : Mitutoyo Digital Caliper)
2 - On refait un plateau horizontal. On visse tous les supports à ressort du plateau complètement moins un petit quart de tour. On commence par l’arrière gauche pour les droitiers et l’arrière droit pour les gauchers. Et on fait son niveau à la feuille de papier.
Après calibration à la main : On est entre -0.18 et +0.09 ; c'est encore trop pour une couche à 0.1 mais c'est mieux. (Attention l'échelle change à chaque fois)
3- on est sur un plateau à 4 points de support : les modifications doivent se faire par paire. On doit toujours tourner les vis ensemble. Les vis sur un même bord se tournent dans le même sens. Les vis dans les diagonale en direction opposées.
4 - Si vous ne pouvez pas utiliser la règle 3, c'est n'est pas le plateau qu'il faut corriger mais le cadre.
Note: un tour complet de vis M3 c'est une monté de 0.5mm
| Vis | pas de vis |
|---|---|
| M3 | 0.5mm |
| M4 | 0.7mm |
| M5 | 0.8mm |
| M6 | 1 mm |

3 - à partir de là 2 options : soit on s'appuie sur la correction automatique soit on en remet un coup à la main. Je préfère la 2ième option.
Et après quelques itération, le PicToValley est de 90µm c'est pas trop mal pour une plateau en aluminium d'origine mais faudra améliorer ça pour descendre à 25µm dans une 2ieme temps

Ici on a fait de son mieux, il reste un trou mais ce n'est pas le plateau qu'il faut corriger c'est le cadre.
dans ce cas c'est probablemetn l'axe de Y qui sur une tige est de travers.
7.1 Auto bed leveling
Pour l'anet A8 impossible de passer en UBL (Universal Bed Leveling) car c'est trop gros en taille de firmware. Si on veut mieux, il faudra faire du "AUTO_BED_LEVELING_LINEAR" avec des commande type "G29 P5 T V4"
D'après les commentaire dans le firmware Marlin : "Marlin 1.1.0 and later allows the bilinear grid (i.e., "mesh") method to be used on all types of machines, not just deltas. This is the recommended leveling method going forward."
7.2 Matrice de test
TODO : Il faut que j'explore comment utiliser la commande G26 pour imprimer une matrice de test automatique. genre pour du PLA " G26 B60 H195" (B60 temperature du plateau ; H195 temp pour le PLA)
Si on veut annuler : une matrice de teste en cours : G29 P1
Conclusion : prend trop de place dans le firmware
7.3 gestion de la température
plutôt que d’interroger régulièrement la carte pour avoir la température, on peut lui demander d'envoyer les données a intervalle régulier.
Il faut modifier le fichier configuration "Configuration_adv.h" et de-commenter les lignes :
#define AUTO_REPORT_TEMPERATURES //290 bytes #define EXTENDED_CAPABILITIES_REPORT // 474 bytes
Et recompiler le software.
- On peut donc modifier le plugin OctoPrint-BedLevelVisualizer avec les valeurs:
G28 M155 S30 @BEDLEVELVISUALIZER G29 M155 S3
- modifier le start code G-code dans cura/octoprint pour inclure la valeur M155 S5
- modifier le stop code G-code dans cura/octoprint pour inclure la valeur M155 S0


