10. [Optionnel] Klipper Avancé : Centraliser l'accéléromètre et l’Input Shaper

Article Optionnel (Advanced) : Après avoir configuré l'environnement thermique de notre Elegoo Neptune 4 Max, nous atteignons la frontière finale de notre dossier matériel : la métrologie des résonances. Dans cet Article 10, nous créons le fichier Axl.cfg. L'intérêt de ce module ? Centraliser en un seul script l'infrastructure de l'accéléromètre USB Mellow Fly-ADXL345, la structure historique d'usine et les macros d'analyse automatique. Une approche "tout-en-un" chirurgicale qui évite d'éparpiller ou de décommenter des lignes critiques dans votre printer.cfg au quotidien.

L'élégance du "Plug and Play" logiciel : Plutôt que de jongler entre l'activation d'un include et l'activation de blocs de paramètres au cœur du Hub central, notre charte centralise tout. L'activation ou la mise en sommeil de vos outils de mesure de résonance (*Input Shaper*) se résume désormais à une seule et unique ligne de commentaire.

1. Structure centralisée du fichier Hardware/Axl.cfg

Ce fichier doit être créé dans votre sous-dossier de configuration Hardware (chemin : ~/printer_data/config/Hardware/Axl.cfg). Voici le script de production complet intégrant la configuration active USB, l'architecture d'usine héritée et les requêtes G-code de diagnostic :

#############################################################################
#############################################################################
# ZEW-Neptune4Max V1.0 | HARDWARE COMPONENT (MEASUREMENT TOOL)
# -------------------------------------------------------------------------
# MODULE    : USB & SPI ACCELEROMETERS (Axl.cfg)
# FUNCTION  : Input Shaper Calibration & Resonance Testing
# DESIGNED BY : Frédéric IMBERT
# VERSION   : 1.0.2 (2026-05-21)
# STATUS    : PRODUCTION / STABLE
#############################################################################
#############################################################################

#############################################################################
#  HARDWARE ACTIVE : MELLOW FLY-ADXL345 (RP2040 USB)
#############################################################################

# --- MCU Configuration ---
# Dedicated microcontroller for the accelerometer.
# ID verification: ls /dev/serial/by-id/ | grep 'Klipper'
[mcu adxl]
serial: /dev/serial/by-id/usb-Klipper_rp2040_E6625495532AAD32-if00

# --- ADXL345 Sensor Settings ---
# Software SPI configuration for the Fly-ADXL345 module.
[adxl345]
cs_pin: adxl:gpio9
spi_software_sclk_pin: adxl:gpio10
spi_software_mosi_pin: adxl:gpio11
spi_software_miso_pin: adxl:gpio12
# axes_map: x, y, z                         ; Change if orientation is modified

# --- Resonance Tester Setup ---
# Defined for the Neptune 4 Max build volume (420x420).
# The probe point is centered (210, 210) to capture average bed harmonics.
[resonance_tester]
accel_chip: adxl345
probe_points:
    210, 210, 20  

max_smoothing: 0.18

#############################################################################
#  LEGACY HARDWARE ARCHITECTURE : ELEGOO NATIVE ONBOARD CONFIGURATION
#  Reference layout for direct motherboard pin mapping and stock sensor.
#############################################################################

# [adxl345 x]                                ; Hardware definition for X-axis accelerometer
# cs_pin: rpi:None                            ; SPI chip select pin (Raspberry Pi)
# spi_bus: spidev0.0                          ; SPI bus used for X-axis sensor
# axes_map: x, z, -y                          ; Sensor orientation remapping for X-axis

# [adxl345 y]                                ; Hardware definition for Y-axis accelerometer
# cs_pin: rpi:None                            ; SPI chip select pin (Raspberry Pi)
# spi_bus: spidev0.1                          ; SPI bus used for Y-axis sensor
# axes_map: -x, -y, -z                        ; Sensor orientation remapping for Y-axis

# [resonance_tester]                          ; Dual chip tester configuration
# accel_chip_x: adxl345 x                     ; Assign X-axis sensor to the tester
# accel_chip_y: adxl345 y                     ; Assign Y-axis sensor to the tester
# probe_points: 215, 215, 20                  ; Historic center coordinates
# max_smoothing: 0.18

#############################################################################
# RESONANCE MACROS
#############################################################################

# --- MACRO: ANALYSE_VIBRATIONS_X ---
# Triggers the automated Klipper resonance test for the X axis (Toolhead).
# It will home the printer first if necessary and save the results to config.
[gcode_macro ANALYSE_VIBRATIONS_X]
description: Run resonance test for X axis
gcode:
    CG28                            ; Home all axes if not done
    SHAPER_CALIBRATE AXIS=X
    SAVE_CONFIG                     ; Updates user_settings.cfg or neptune4max.cfg

# --- MACRO: ANALYSE_VIBRATIONS_Y ---
# Triggers the automated Klipper resonance test for the Y axis (Heated Bed).
# Critical for the Neptune 4 Max due to the high mass of the large bed.
[gcode_macro ANALYSE_VIBRATIONS_Y]
description: Run resonance test for Y axis
gcode:
    CG28
    SHAPER_CALIBRATE AXIS=Y
    SAVE_CONFIG

2. Le Labo sous le capot : Pourquoi l'isolation "Tout-en-un" ?

L'intégration d'un accéléromètre ADXL345 sous Klipper est souvent synonyme de chaos dans les fichiers de configuration. Habituellement, l'utilisateur doit déclarer le microcontrôleur additionnel (MCU) à un endroit, injecter les broches SPI à un autre, et ajouter ses macros de test tout en bas de son fichier principal. Un processus fastidieux et source d'erreurs logiques.

L'atout de la centralisation active

En réunissant le sous-MCU USB ([mcu adxl]), le mappage logiciel des broches du module Mellow Fly (gpio9 à 12) et les coordonnées de palpation physique au centre du volume géant de 420x420 mm (210, 210), l'activation de l'outil de mesure devient totalement hermétique du reste de la machine.

Conservation du patrimoine usine

L'architecture d'origine d'Elegoo et d'OpenNept4une (liaison SPI directe via les ports spidev0.0 du Raspberry Pi) reste inscrite en base de données historique, simplement commentée par des caractères #. Si vous devez repasser sur le matériel d'usine, la bascule s'effectue en quelques secondes au sein du même script.

Rationalisation algorithmique des macros de test

Au bas du fichier, nous encapsulons les routines de calcul d'Input Shaper : ANALYSE_VIBRATIONS_X et ANALYSE_VIBRATIONS_Y. Plutôt que de taper de longues lignes de commandes dans la console de Fluidd ou Mainsail, une simple exécution de ces macros automatise le processus :

  • Elles font appel à notre commande sécurisée de mise à l'origine CG28 (Homing conditionnel) pour s'assurer que la machine connaît sa position géométrique avant de secouer les axes.
  • Elles lancent la calibration des fréquences (SHAPER_CALIBRATE). L'axe Y est particulièrement critique sur la Neptune 4 Max : le plateau chauffant en aluminium de très grande taille représente une masse mobile colossale dont il faut impérativement analyser les harmoniques pour éliminer les effets de résonance (*Ghosting* / *Ringing*) à haute vitesse.
  • Elles forcent l'écriture immédiate des filtres mathématiques calculés dans les profils de sauvegarde (SAVE_CONFIG).

3. Raccordement : La règle d'or du commentaire par défaut

C'est ici que réside toute la puissance de la charte **ZEW-Neptune4Max V1.0**. Un accéléromètre USB externe n'a pas vocation à rester branché en permanence sur la machine (les vibrations intenses en cours d'impression finiraient par sectionner les câbles ou fausser les mesures).

Si vous laissez l'include d'un composant matériel actif dans Klipper alors que le module physique est débranché, le firmware lèvera une erreur fatale au démarrage ("MCU 'adxl' generic error") et refusera d'allumer l'imprimante. Pour pallier cela, ouvrez votre printer.cfg central et déclarez la liaison **en la laissant commentée par défaut** :

#############################################################################
# MODULAR CONFIGURATION (INCLUDES)
#############################################################################

[force_move]
enable_force_move: True

# --- HARDWARE ---
[include Hardware/Neptune4max.cfg] # Main printer configuration (Chassis & Signaling)
[include Hardware/Extruders.cfg] # Extruder and heater settings
[include Hardware/Fans.cfg] # Aerodynamic & Thermal Cooling Management
#[include Hardware/Axl.cfg] # OPTIONAL: USB Accelerometer (Uncomment only for tuning)

#############################################################################
# BASE CONFIG (MCU & PRINTER)
#############################################################################

Méthode opérationnelle : Lorsque vous souhaitez effectuer une session d'analyse de vos courroies ou de vos structures : branchez votre module ADXL en USB, retirez simplement le caractère # devant la ligne de l'include dans votre Hub central et redémarrez Klipper. Une fois les tests validés et sauvegardés, remettez le # pour isoler logiquement le script et débranchez le capteur. Votre machine redémarrera à l'infini sans jamais bloquer.

Avec cette centralisation métrologique, nous mettons un point final à la réorganisation complète et étanche de notre premier grand répertoire racine : le dossier Hardware. Notre Elegoo Neptune 4 Max dispose désormais d'une infrastructure matérielle saine, documentée et modulaire. Dans le prochain article, nous ouvrirons les vannes de notre second dossier pilier pour initier le grand nettoyage et la réorganisation hiérarchique de nos Macros algorithmiques. Restez connectés !

Choix utilisateur pour les Cookies
Nous utilisons des cookies afin de vous proposer les meilleurs services possibles. Si vous déclinez l'utilisation de ces cookies, le site web pourrait ne pas fonctionner correctement.
Tout accepter
Tout décliner
Analytique
Outils utilisés pour analyser les données de navigation et mesurer l'efficacité du site internet afin de comprendre son fonctionnement.
Google Analytics
Accepter
Décliner
Publicité
Si vous acceptez, les annonces présentes sur la page seront adaptées à vos préférences.
Publicité Google
Accepter
Décliner
Sauvegarder