Hack Sonic Pad de Creality – Debian
Avant toute choses , soyez conscient que le hack du Sonic Pad est à vos risque, ni moi ou Creality ne seront responsable en cas de problème.
Ce dont vous aurez besoin :
- un sonic pad : https://www.geekbuying.com/go/7mQJlNkN
- un cable USB A vers USB A
- un cure-dents ou trombone
- les outils de flash fourni par Creality : https://github.com/CrealityOfficial/Creality_Sonic_Pad_Firmware
- l’image de klipper debian : https://github.com/Jpe230/SonicPad-Debian/releases
- Windows / Linux / Mac OS pour flasher le pad
Avant de commencer , pensez a faire une sauvegarde de vos fichier de configuration » printer.cfg »
1ere étape – Installation des drivers :
il va falloir passer le Pad en mode Burning.
Pour cela:
1- le pad doit être éteint.
2- placer votre pointe dans le trou le plus a droite et garder le bouton enfoncé
3- allumez le pad , seule la led verte dois s’allumer ( l’écran reste noir)
![](https://egamaker.be/wp-content/uploads/2023/09/burning-pad.png)
4 – branchez le câble USB sur le port camera et sur votre PC, dans votre gestionnaire de périphérique , vous devriez voir apparait un périphérique inconnue.
![](https://egamaker.be/wp-content/uploads/2023/09/inconnue-2.jpg)
Faite un clic droit et sélectionnez > Parcourir mon poste de travail pour rechercher des pilotes
![](https://egamaker.be/wp-content/uploads/2023/09/recherche.jpg)
donnez le chemin vers le dossier PhoenixSuit_V1.10\Drivers et faites Suivant
![](https://egamaker.be/wp-content/uploads/2023/09/driver.jpg)
![](https://egamaker.be/wp-content/uploads/2023/09/usb.jpg)
Voila , le Pad peu maintenant être flashé 😉
![](https://egamaker.be/wp-content/uploads/2023/09/usbfini.jpg)
2eme étape : Flash du pad
Dans le dossier Tools fourni par Creality , lancez PhoenixSuit
Dans l’onglet Firmware , donnez le chemin de la nouvelle image pour votre pad « t800-sonic-debian«
![](https://egamaker.be/wp-content/uploads/2023/09/phoenix-suite1-1.jpg)
Vous pouvez maintenant lancez votre pad en mode Burning comme expliqué dans la première étape (trombone + power 😉 )
Et si tout va bien , vous devriez avoir ceci sur l’écran :
![](https://egamaker.be/wp-content/uploads/2023/09/phoenix-suite2.jpg)
un petit YES et le flash se lance
![](https://egamaker.be/wp-content/uploads/2023/09/phoenix-suite3.jpg)
une fois terminé (+- 4min) , le Pad se relancera automatiquement , et vous devriez avoir le beau logo Debian s’afficher à l’écran
![](https://egamaker.be/wp-content/uploads/2023/09/IMG_20230909_095836-1024x467.jpg)
3eme étape : Wifi + configuration de Klipper grâce a Kiauh
Rendez-vous dans un premier temps sur le pad : MENU > Network > Wifi
un ptit clic sur la flèche de votre réseaux pour lui donner le password .
Une fois connecté , vous y trouverai l’adresse IP du pad » si vous ne voyez pas l’adresse ip s’afficher , faite un retour arriere et revenez sur wifi , cela devrais être bon cette fois »
![](https://egamaker.be/wp-content/uploads/2023/09/IMG_20230909_102059-1-1024x467.jpg)
![](https://egamaker.be/wp-content/uploads/2023/09/IMG_20230909_102152-1-1024x467.jpg)
![](https://egamaker.be/wp-content/uploads/2023/09/IMG_20230909_102318-1024x467.jpg)
passons maintenant à la configuration de Klipper , de base si vous tapez l’adresse ip de votre pad dans le navigateur , il ne se passe rien , et c’est normal 😉 il n’y a de base aucune interface installé.
Nous allons donc devoir le faire en SSH , avec Putty , mobaxterm , …
Vous allez avoir aussi besoin du login et password mis a dispo sur la release que vous avez téléchargez : Login: sonic ; password : pad
![](https://egamaker.be/wp-content/uploads/2023/09/moba1.jpg)
première choses à faire , étendre la partition pour que tout l’espace sois dispo et une petite mise a jour de Debian :
sudo resize2fs /dev/mmcblk0p5
sudo apt-get update && sudo apt-get install git -y
sudo reboot
premier lancement de Kiauh
./kiauh/kiauh.sh
Si une mise a jour est dispo , faites Y et relancer ensuite la commande
![](https://egamaker.be/wp-content/uploads/2023/09/moba2.jpg)
Par défaut , il y a une session klipper installé , sans interface
![](https://egamaker.be/wp-content/uploads/2023/09/moba3.jpg)
Vous pouvez simplement installer Mainsail ou fluid , mais bon , vous avez surement comme moi plusieurs imprimantes à brancher ?
Dans ce cas la , il va falloir supprimer Klipper et Moonraker pour refaire une belle installation multisession
– Menu 3 : Remove
![](https://egamaker.be/wp-content/uploads/2023/09/moba4.jpg)
On va donc supprimer :
1 Klipper – 2 Moonraker
![](https://egamaker.be/wp-content/uploads/2023/09/moba5.jpg)
il n’y a donc plus rien , on va pouvoir relancer une belle installation
On commence avec Klipper en laissant le choix recommandé pour la version de Python
![](https://egamaker.be/wp-content/uploads/2023/09/moba6.jpg)
il va falloir aussi maintenant lui donner le nombre de session que nous allons avoir besoin , et au passage pourquoi pas leur donner des nom facilement reconnaissable
![](https://egamaker.be/wp-content/uploads/2023/09/moba8.jpg)
une fois terminé , idem pour 2- Moonraker , 3- Mainsail ou 4- Fluid et 12 – crowsnest
apres quelques Yes , reboot …
![](https://egamaker.be/wp-content/uploads/2023/09/moba9.jpg)
vous devriez voir dans Kiauh , 2 Klipper et 2 moonraker installé
la dernière choses à installer sont les dépendance pour utiliser l’adxl
sudo apt install avrdude gcc-avr binutils-avr avr-libc stm32flash binutils-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib gcc-arm-none-eabi
maintenant vous pouvez vous rendre sur votre navigateur ou la vous allez pouvoir ajouter vos imprimantes
renseigner comme ceci :
Adresse ip du pad et ensuite le port 7125 pour la première , 7126 pour la seconde , ect …
![](https://egamaker.be/wp-content/uploads/2023/09/mainsail1-1024x549.jpg)
![](https://egamaker.be/wp-content/uploads/2023/09/mainsail2.jpg)
![](https://egamaker.be/wp-content/uploads/2023/09/mainsail3-1024x486.jpg)
Maintenant comme je suis sure que vous avez suivis mon conseil de faire une sauvegarde de votre config , vous pouvez vous rendre dans > Machine , ouvrir le fichier printer.cfg pour y coller votre propre config
Gardez uniquement les premières lignes qui corresponde a votre interface mainsail ou fluid , le virtual-sdcard (avec le nom de votre session)
[include mainsail.cfg]
[virtual_sdcard]
path: /home/sonic/MaxNeo_data/gcodes
on_error_gcode: CANCEL_PRINT
Vous devrez aussi changer le nom du serial dans la partie [mcu ]
Pour cela utilisez la commande
ls /dev/serial/by-path/*
et remplacer le /dev/serial/by-id/usb_serial_2 par /dev/serial/by-path/platform-5200000.ehci1-controller-usb-0:1.2:1.0-port0 – avec le nom de votre serial évidement 😉
Le reste vous pouvez simplement le coller dessous (mais n’oubliez pas par contre de supprimer votre virtual-sdcard )
Une fois sauvegardé et relancé , voila une imprimante de faites 😉
![](https://egamaker.be/wp-content/uploads/2023/09/mainsail4-1024x495.jpg)
Pour ce qui est du theme , je vous laisse regarder l’article : Créer votre propre thème pour Klipper
Pour le Multicam
![](https://egamaker.be/wp-content/uploads/2023/09/mainsail5-1024x298.jpg)
Il va falloir pour cela passer par le SSH , car le fichier à modifier touche toutes vos session
Si vous utilisez Mobaxterm , il vous sera très facile d’éditer le fichier directement sur le pad , rendez-vous dans le répertoire /home/sonic/printer_data/config/
et ouvrez le fichier : crowsnest.conf
Repérez la section cam 1 que vous allez simplement copier et coller dessus
Changez le cam 1 en Cam 2
Le port 8080 en port 8081
[cam 1]
mode: ustreamer # ustreamer - Provides mjpg and snapshots. (All devices)
# camera-streamer - Provides webrtc, mjpg and snapshots. (rpi + Raspi OS based only)
enable_rtsp: false # If camera-streamer is used, this enables also usage of an rtsp server
rtsp_port: 8554 # Set different ports for each device!
port: 8080 # HTTP/MJPG Stream/Snapshot Port
device: /dev/video0 # See Log for available ...
resolution: 720x480 # widthxheight format
max_fps: 25 # If Hardware Supports this it will be forced, otherwise ignored/coerced.
#custom_flags: # You can run the Stream Services with custom flags.
#v4l2ctl: # Add v4l2-ctl parameters to setup your camera, see Log what your cam is capable of.
[cam 2]
mode: ustreamer # ustreamer - Provides mjpg and snapshots. (All devices)
# camera-streamer - Provides webrtc, mjpg and snapshots. (rpi + Raspi OS based only)
enable_rtsp: false # If camera-streamer is used, this enables also usage of an rtsp server
rtsp_port: 8554 # Set different ports for each device!
port: 8081 # HTTP/MJPG Stream/Snapshot Port
device: /dev/video1 # See Log for available ...
resolution: 720x480 # widthxheight format
max_fps: 25 # If Hardware Supports this it will be forced, otherwise ignored/coerced.
#custom_flags: # You can run the Stream Services with custom flags.
#v4l2ctl: # Add v4l2-ctl parameters to setup your camera, see Log what your cam is capable of.
Dans votre interface , vous allez maintenant pouvoir définir quel camera va avec quel imprimante en modifiant les URL de cette maniere :
/webcam/?action=stream en /webcam2/?action=stream & /webcam/?action=snapshot en /webcam2/?action=snapshot
![](https://egamaker.be/wp-content/uploads/2023/09/mainsail6.jpg)
4eme étape : KlipperScreen
Dernière choses maintenant à faire , rendre les imprimante disponible sur l’écran
Go en SSH et éditer le fichier : /home/sonic/KlipperScreen/ks_includes/defaults.conf
et y ajouter les ligne suivante :
[main]
default_printer: MaxNeo
use_default_menu: True
# Define printer and name. Name is anything after the first printer word
[printer MaxNeo]
# Define the moonraker host/port if different from 127.0.0.1 and 7125
moonraker_host: 127.0.0.1
# ports 443 and 7130 will use https/wss
moonraker_port: 7125
# Moonraker API key if this is not connecting from a trusted client IP
moonraker_api_key: False
[printer X5SA]
# Define the moonraker host/port if different from 127.0.0.1 and 7125
moonraker_host: 127.0.0.1
# ports 443 and 7130 will use https/wss
moonraker_port: 7126
# Moonraker API key if this is not connecting from a trusted client IP
moonraker_api_key: False
Adaptez les lignes selon votre config
![](https://egamaker.be/wp-content/uploads/2023/09/IMG_20230909_213054-1024x467.jpg)
5eme étape : ADXL
il va falloir maintenant installer les composant de votre ADXL pour que celui-ci soit pris en compte.
il n’y a pas de grande différence avec l’installation sur Raspi que j’avais déjà expliqué dans cette article : installation-un-adlxr-dans-klipper
il y a juste quelque petite choses en moins. vous pouvez simplement copier-coller les ligne de code pour l’installation.
Installation de Mumpy :
sudo apt update
sudo apt install python3-numpy python3-matplotlib libatlas-base-dev
~/klippy-env/bin/pip install -v numpy
Installation du MCU
cd ~/klipper/
sudo cp ./scripts/klipper-mcu.service /etc/systemd/system/
sudo systemctl enable klipper-mcu.service
cd ~/klipper/
make menuconfig
Retirer la sélection de « Enable extra low-level …. « si il y a la petite etoile , et choisisez : Linux Process comme micro-controller
![](https://egamaker.be/wp-content/uploads/2023/01/linux.jpg)
quittez le menu et dans la console :
sudo service klipper stop
make flash
sudo service klipper start
le process est plutôt long ….
Vous ne pouvez activer l’adxl que dans une session à la fois.
Je vous conseille donc de créer un fichier adxl.cfg et de coller le code :
[mcu rpi]
serial: /tmp/klipper_host_mcu
[adxl345]
cs_pin: rpi:None
spi_speed: 2000000
spi_bus: spidev2.0
[resonance_tester]
accel_chip: adxl345
accel_per_hz: 70
probe_points:
150,150,10
Dans votre printer.cfg
Ajoutez la ligne :
[include adxl.cfg]
une fois utilisé , placez simplement le symbole : # devant votre include pour qu’il ne soit plus pris en charge et eviter des erreurs de connnection entre les machine.
Relancez bien le tout , surtout klipper ; une fois fait vous pouvez tester si l’adxl fonctionne en tapant la commande suivante.
ACCELEROMETER_QUERY
Ce qui devrait vous donnez un resultat du genre :
![](https://egamaker.be/wp-content/uploads/2023/09/adxl1.jpg)
Voici le moment de tester votre machine. Commencez par un home.
vous pouvez maintenant lancer le test de résonnance selon le type de machine
Pour les delta :
SHAPER_CALIBRATE
Pour les cartésienne :
SHAPER_CALIBRATE AXIS=Y ou X selon l'endroit ou se trouve votre ADLXR