0 Votes

Raspberry Pi

Version 1.1 par john le 2026/09/18 20:12

Système

ÉlémentValeur
MachineRaspberry Pi 4
OSDebian 13, sans environnement graphique
Cible systemdmulti-user.target
RéseauWi-Fi
Stockage des sauvegardesSSD USB

Services

Conteneurs

ServiceRôle
AdGuard HomeDNS local, blocage, réécriture DNS
OLED StatsStatistiques sur l'écran OLED du boîtier
Portainer + Portainer AgentGestion Docker
WatchtowerMise à jour automatique des images

Natifs

ServiceRôle
meshtasticdNœud Meshtastic LoRa (HAT SX1262 en SPI)
JellyfinServeur multimédia
MariaDBBase de données
fail2banBlocage des tentatives SSH
smartmontoolsSurveillance du SSD
sysstat, acctStatistiques système, comptabilité des processus
chkrootkit, LynisAudit nocturne par timer
led-animAnimation du bandeau LED

Outils

Plakar (dépôt), uhubctl, yt-dlp et client meshtastic (pipx), outils RTL-SDR.

Configuration

Wi-Fi : désactiver l'économie d'énergie

Le lien décroche sur les gros transferts SFTP quand l'économie d'énergie est active :

sudo nmcli connection modify "<SSID>" 802-11-wireless.powersave 2
sudo nmcli connection up "<SSID>"

SSD USB sur pont ASMedia

Le pont se déconnecte sous forte charge en mode UAS. Forcer le mode usb-storage en ajoutant à la ligne unique de /boot/firmware/cmdline.txt (identifiants donnés par lsusb) :

usb-storage.quirks=<VID>:<PID>:u

Montage à la demande dans /etc/fstab, sans bloquer le démarrage si le disque est absent :

UUID=<UUID>  <POINT_MONTAGE>  <FS>  defaults,nofail,x-systemd.automount  0  2

Empêcher l'écriture sur la carte SD quand le SSD n'est pas monté (à faire sur le point de montage vide) :

sudo chattr +i <POINT_MONTAGE>

SPI pour le module LoRa

Dans /boot/firmware/config.txt :

dtparam=spi=on
dtoverlay=spi0-0cs

meshtasticd

Les réglages vont dans /etc/meshtasticd/config.d/ : ces fichiers survivent aux mises à jour du paquet, contrairement à config.yaml.

99-lora.yaml, valeurs pour le HAT Waveshare SX126X :

Lora:
 Module: sx1262
 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

Outils Python

sudo apt install pipx
pipx install meshtastic
pipx install yt-dlp
pipx ensurepath

Mise à jour : pipx upgrade-all.

led-anim

Le script dépend de rpi_ws281x, installé dans un venv dédié :

sudo python3 -m venv /opt/led-anim/venv
sudo /opt/led-anim/venv/bin/pip install rpi_ws281x

Il doit tourner en root : rpi_ws281x accède directement au DMA et au PWM.

Portainer Agent

L'agent doit être à la même version que le Portainer qui le pilote : épingler son tag sur celui du serveur plutôt que latest.

Services désactivés

ModemManager (sonde les ports série et peut perturber un nœud Meshtastic en USB), bluetooth, hciuart.