0 Votes

Meshtastic

Modifié par john le 2026/09/20 13:15

Nœud Meshtastic LoRa : le Raspberry Pi fait partie du réseau maillé Meshtastic grâce à un module radio SX1262 branché en SPI. Rôle CLIENT_MUTE : il envoie et reçoit ses propres messages sans relayer ceux des autres nœuds. Il se gère par une interface web et en ligne de commande.

Matériel

ÉlémentValeur
Module radioHAT Waveshare SX126X (puce SX1262)
ConnexionSPI, /dev/spidev0.0
Logicielmeshtasticd (Meshtastic natif pour Linux), service systemd
Version de meshtasticd (sept. 2026)2.7.26
RôleCLIENT_MUTE

Activation du SPI dans /boot/firmware/config.txt :

dtparam=spi=on
dtoverlay=spi0-0cs

Installation

Paquet meshtasticd du dépôt Meshtastic sur openSUSE Build Service, canal beta (versions stables du projet), pour Debian 13 :

echo 'deb http://download.opensuse.org/repositories/network:/Meshtastic:/beta/Debian_13/ /' | sudo tee /etc/apt/sources.list.d/network:Meshtastic:beta.list
curl -fsSL https://download.opensuse.org/repositories/network:Meshtastic:beta/Debian_13/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/network_Meshtastic_beta.gpg > /dev/null
sudo apt update
sudo apt install meshtasticd

Configuration

La configuration de base est dans /etc/meshtasticd/config.yaml. Les réglages propres à cette installation sont dans /etc/meshtasticd/config.d/ : ces fichiers ne sont pas écrasés par les mises à jour du paquet. Les profils de modules fournis par le projet sont dans /etc/meshtasticd/available.d/.

99-lora.yaml :

Lora:
 Module: sx1262  # Waveshare SX126X XXXM
 DIO2_AS_RF_SWITCH: true
 CS: 21
 IRQ: 16
 Busy: 20
 Reset: 18
 SX126X_ANT_SW: 6

98-webserver.yaml :

Webserver:
 Port: 443
 RootPath: /usr/share/meshtasticd/web

Le YAML est sensible à l'indentation. Après toute modification :

sudo systemctl restart meshtasticd

Accès

AccèsAdresse
Interface webhttps://<IP_RASPBERRY> (port 443)
API, clients et ligne de commandePort TCP 4403

Pas de Bluetooth : il n'est pas pris en charge par meshtasticd sous Linux. Les applications mobiles se connectent en réseau (TCP).

Ligne de commande

Client meshtastic, installé avec pipx :

meshtastic --host localhost --info            # état du nœud, canaux, réglages
meshtastic --host localhost --nodes           # nœuds entendus sur le réseau
meshtastic --host localhost --sendtext "<MESSAGE>"

Rôle du nœud

RôleComportement
CLIENTEnvoie, reçoit et relaie les messages des autres nœuds
CLIENT_MUTEEnvoie et reçoit, ne relaie pas (rôle actuel)
ROUTERRelais prioritaire, pour un nœud bien placé et toujours allumé
meshtastic --host localhost --set device.role CLIENT_MUTE

Le nœud redémarre pour appliquer un changement de rôle.

Données et sauvegarde

L'identité et les réglages radio du nœud (région, canaux, clés) sont dans /var/lib/meshtasticd/.portduino/default/prefs/. Le Raspberry Pi n'étant pas sauvegardé par Plakar (il héberge le dépôt), exporter la configuration après chaque changement et la ranger ailleurs :

meshtastic --host localhost --export-config > meshtastic-config.yaml

Ce fichier contient les clés des canaux : le conserver comme un secret.