KlipperScreen sur tablette ou téléphone Android

"La connaissance n'a de valeur que si elle est partagée"

Temps de lecture : 6 minutes

KlipperScreen Android

Vous avez déjà Klipper installé sur un Raspberry Pi (Rpi) ou un appareil similaire, mais vous n’avez pas d’écran ? Ne vous inquiétez pas, KlipperScreen vous permettra d’utiliser votre téléphone ou votre tablette comme écran de contrôle pour Klipper, un peu comme un Klipper Pad.

KlipperScreen est facile à installer et fonctionne sur les téléphones et les tablettes Android. Si vous utilisez un Btt pi avec Klipper installé depuis l’image os fournie par Bigtreetech, KlipperScreen devrait déjà être installé.

Vérification de la Présence de KlipperScreen

Pour vérifier si KlipperScreen est déjà installé sur votre Klipper, rendez-vous simplement dans l’interface web de Klipper, puis dans la section « Machine ». Vous y trouverez la liste des services installés. Si KlipperScreen est présent, vous pouvez passer directement à l’étape 2.

Si KlipperScreen n’est pas présent, passons à l’étape 1 pour l’installer.


Étape 1 : Installation de KlipperScreen sur Rpi

  1. Connectez-vous à votre Rpi à l’aide d’un client SSH (par exemple, MobaXterm).
  2. Une fois connecté, entrez les commandes suivantes :
sudo -i
cd ~/
git clone https://github.com/jordanruthe/KlipperScreen.git
cd ~/KlipperScreen
./scripts/KlipperScreen-install.sh

Ce script installera les packages nécessaires, créera un environnement virtuel Python dans ~/.KlipperScreen-env et installera un fichier de service systemd.

Configuration de Moonraker

Rendez-vous dans l’interface web de Klipper, puis dans la section « Machine ». Dans le fichier moonraker.conf, assurez-vous que l’adresse IP 127.0.0.1 est configurée comme client de confiance :

[authorization]
trusted_clients:
  127.0.0.1

Pour utiliser la fonction de gestionnaire de mise à jour de Moonraker pour KlipperScreen, ajoutez le bloc suivant à moonraker.conf :

[update_manager KlipperScreen]
type: git_repo
path: ~/KlipperScreen
origin: https://github.com/KlipperScreen/KlipperScreen.git
env: ~/.KlipperScreen-env/bin/python
requirements: scripts/KlipperScreen-requirements.txt
install_script: scripts/KlipperScreen-install.sh
managed_services: KlipperScreen

Enregistrez les modifications et redémarrez.


Étape 2 : Configuration de KlipperScreen

Dans l’interface web de Klipper, accédez à la section « Machine » et ouvrez le fichier KlipperScreen.conf ou créez-le s’il n’existe pas

ajouter les lignes suivantes :

[include conf.d/*.conf]
# Include another configuration file. Wildcards (*) will expand to match anything.

[main]
# Time in seconds before the Job Status page closes itself after a successful job/print
# 0 means disabled
job_complete_timeout: 0

# Time in seconds before the Job Status closes itself if an error is encountered
job_error_timeout: 0

# Allows the cursor to be displayed on the screen
show_cursor: False

# If multiple printers are defined, this can be set the name of the one to show at startup.
# default_printer: Nome de votre imprimante

# To define a full set of custom menues (instead of merging user entries with default entries)
# set this to False. See Menu section below.
use_default_menu: True

# Define one or more moonraker power devices that turn on/off with the screensaver (CSV list)
# screen_on_devices: example1, example2
# screen_off_devices:  example1, example2

# Define printer and name. Name is anything after the first printer word
[printer Sidewinder X2]
# 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

# Define the z_babystep intervals in a CSV list. Currently only 2 are supported
z_babystep_values: 0.01, 0.05

# Override the movement speed and set a specific for this printer.
# These setting overrides the settings configured in the UI. If specified,
# the values configured in the UI will not be used.
move_speed_xy: 500
move_speed_z: 300

# Define one or more moonraker power devices that turn on this printer (CSV list)
# Default is the printer name
power_devices: Sidewinder X2

# Define what items should be shown in titlebar besides the extruder and bed
# the name must be the same as defined in the klipper config
# valid options are temperature_sensors or temperature_fans, or heater_generic
titlebar_items: chamber, MCU, Pi

# The style of the user defined items in the titlebar
# Can be 'full' indicating that the full name is shown, 'short' for the first letter, or None (default) for no name
titlebar_name_type: None

# Z probe calibrate position
# By default is the middle of the bed
calibrate_x_position: 150
calibrate_y_position: 150

# Bed Screws
# define the screw positons required for odd number of screws in a comma separated list
# possible values are: bl, br, bm, fl, fr, fm, lm, rm, center
# they correspond to back-left, back-right, back-middle, front-left, front-right, front-middle, left-middle, right-middle
# screw_positions: ""

# Rotation is useful if the screen is not directly in front of the machine.
# Valid values are 0 90 180 270
#screw_rotation: 0

# Define distances and speeds for the extrude panel. CSV list 2 to 4 integers
extrude_distances: 5, 10, 15, 25
extrude_speeds: 1, 2, 5, 25

# Camera configuration
camera_url: http://127.0.0.1/webcam/?action=stream

[menu __main my_menu_item]
# To build a sub-menu of this menu item, you would next use [menu __main my_menu_item sub_menu_item]
name: Item Name
# Optional Parameters
#
# Icon name to be used, it can be any image in the directory:
# KlipperScreen/styles/{theme}/images/ where {theme} is your current theme
# Supported formats svg or png
icon: home
# Icon style, defined as "button.mycolor4" (for example) in the theme css
style: mycolor4
# Panel from the panels listed below
panel: preheat
# Moonraker method to call when the item is selected
method: printer.gcode.script
# Parameters that would be passed with the method above
params: {"script":"G28 X"}
# Enable allows hiding of a menu if the condition is false. This statement is evaluated in Jinja2
#   Available variables are listed below.
enable: {{ printer.power_devices.count > 0 }}

[menu __main homing]
name: Homing
icon: home

[menu __main preheat]
name: Preheat
icon: heat-up
panel: preheat

[menu __main print]
name: Print
icon: print
panel: print

[menu __main homing homeall]
name: Home All
icon: home
method: printer.gcode.script
params: {"script":"G28"}

Enregistrez le fichier et redémarrez votre système. À ce stade, KlipperScreen devrait être opérationnel sur votre Rpi.


Étape 3 : Configuration du Téléphone ou de la Tablette Android

Rendez-vous sur le Play Store Android et installez l’application XServer-XSDL.

Lancez l’application XServer-XSDL. Un écran bleu apparaîtra, notez l’adresse IP affichée dans la première ligne :

Dans notre exemple, elle est 192.168.1.146:0.

Sur votre Rpi (en SSH), entrez les commandes suivantes :

sudo -i
cd ~/KlipperScreen/scripts
touch launch_KlipperScreen.sh
chmod +x launch_KlipperScreen.sh
nano launch_KlipperScreen.sh

Ajoutez la ligne suivante dans le fichier launch_KlipperScreen.sh :

DISPLAY=192.168.1.146:0 $KS_XCLIENT

Remplacez l’adresse IP par celle que vous avez notée précédemment.

Lancez XServer-XSDL et appuyez en haut pour le configurer. Configurez-le comme suit :

“CHANGE DEVICE CONFIGURATION”
└──Mouse Emulation Modde
    └──Desktop, No Emulation

Sur le Rpi (en SSH), entrez les commandes suivantes :

sudo service KlipperScreen stop
sudo service KlipperScreen start

Après quelques instants, l’interface Klipper devrait apparaître sur votre téléphone. Vous pouvez maintenant contrôler votre imprimante comme si vous aviez un Klipper Pad.

Pour plus de détails sur la configuration de KlipperScreen ainsi que pour obtenir des réponses à d’éventuels problèmes d’installation, vous pouvez consulter le site de KlipperScreen (en anglais) : : https://klipperscreen.readthedocs.io/en/latest/

N’hésitez pas à partager votre expérience avec KlipperScreen et à poser des questions si vous en avez.

Profitez de votre nouvelle manière de contrôler votre imprimante 3D !

 

Laisser un commentaire