0 Votes

Code source wiki de Meshtastic

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

Masquer les derniers auteurs
john 2.1 1 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.
john 1.1 2
3 == Matériel ==
4
5 |=Élément|=Valeur
6 |Module radio|HAT Waveshare SX126X (puce SX1262)
7 |Connexion|SPI, ##/dev/spidev0.0##
8 |Logiciel|meshtasticd (Meshtastic natif pour Linux), service systemd
john 2.1 9 |Version de meshtasticd (sept. 2026)|2.7.26
10 |Rôle|##CLIENT_MUTE##
john 1.1 11
12 Activation du SPI dans ##/boot/firmware/config.txt## :
13
14 {{code language="ini"}}
15 dtparam=spi=on
16 dtoverlay=spi0-0cs
17 {{/code}}
18
john 2.1 19 == Installation ==
20
21 Paquet ##meshtasticd## du dépôt Meshtastic sur openSUSE Build Service, canal ##beta## (versions stables du projet), pour Debian 13 :
22
23 {{code language="bash"}}
24 echo 'deb http://download.opensuse.org/repositories/network:/Meshtastic:/beta/Debian_13/ /' | sudo tee /etc/apt/sources.list.d/network:Meshtastic:beta.list
25 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
26 sudo apt update
27 sudo apt install meshtasticd
28 {{/code}}
29
john 1.1 30 == Configuration ==
31
32 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/##.
33
34 ##99-lora.yaml## :
35
36 {{code language="yaml"}}
37 Lora:
38 Module: sx1262 # Waveshare SX126X XXXM
39 DIO2_AS_RF_SWITCH: true
40 CS: 21
41 IRQ: 16
42 Busy: 20
43 Reset: 18
44 SX126X_ANT_SW: 6
45 {{/code}}
46
47 ##98-webserver.yaml## :
48
49 {{code language="yaml"}}
50 Webserver:
51 Port: 443
52 RootPath: /usr/share/meshtasticd/web
53 {{/code}}
54
55 Le YAML est sensible à l'indentation. Après toute modification :
56
57 {{code language="bash"}}
58 sudo systemctl restart meshtasticd
59 {{/code}}
60
61 == Accès ==
62
63 |=Accès|=Adresse
64 |Interface web|##https:~/~/<IP_RASPBERRY>## (port 443)
65 |API, clients et ligne de commande|Port TCP 4403
66
67 Pas de Bluetooth : il n'est pas pris en charge par meshtasticd sous Linux. Les applications mobiles se connectent en réseau (TCP).
68
69 == Ligne de commande ==
70
71 Client ##meshtastic##, installé avec pipx :
72
73 {{code language="bash"}}
74 meshtastic --host localhost --info # état du nœud, canaux, réglages
75 meshtastic --host localhost --nodes # nœuds entendus sur le réseau
76 meshtastic --host localhost --sendtext "<MESSAGE>"
77 {{/code}}
78
john 2.1 79 == Rôle du nœud ==
80
81 |=Rôle|=Comportement
82 |##CLIENT##|Envoie, reçoit et relaie les messages des autres nœuds
83 |##CLIENT_MUTE##|Envoie et reçoit, ne relaie pas (rôle actuel)
84 |##ROUTER##|Relais prioritaire, pour un nœud bien placé et toujours allumé
85
86 {{code language="bash"}}
87 meshtastic --host localhost --set device.role CLIENT_MUTE
88 {{/code}}
89
90 Le nœud redémarre pour appliquer un changement de rôle.
91
john 1.1 92 == Données et sauvegarde ==
93
94 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 :
95
96 {{code language="bash"}}
97 meshtastic --host localhost --export-config > meshtastic-config.yaml
98 {{/code}}
99
100 Ce fichier contient les clés des canaux : le conserver comme un secret.