Meshtastic transforme des modules LoRa à quelques euros en un réseau maillé qui porte à plusieurs kilomètres, sans opérateur, sans abonnement, sans internet. J’ai monté trois nœuds — un fixe sur le toit, deux mobiles — pour couvrir mon quartier et tester la résilience du maillage.

Un nœud Meshtastic avec son antenne et sa batterie
Boîtier
Fujifilm X-T30 II
Objectif
XF 27mm f/2.8
Focale
27 mm
Ouverture
ƒ/5.6
Vitesse
1/250 s
ISO
200
Nœud fixe : ESP32 + module LoRa 868 MHz, alimenté en solaire.

Le maillage en pratique

Chaque nœud relaie les messages des autres : la portée utile n’est pas celle d’un saut, mais celle de la chaîne. Avec le nœud du toit en relais, mes deux nœuds mobiles se parlent alors qu’ils ne « se voient » pas directement.

   [mobile A] --- 1.2 km ---.
                             \
                        [toit / relais] --- 2.8 km --- [mobile B]

Le protocole est frugal : messages courts, débit faible (SF12 quand la portée prime), mais robuste. C’est fait pour du texte, de la position GPS, de la télémétrie — pas pour du streaming.

Le matériel

La piste IA

Voici l’idée qui me travaille : ajouter un nœud « passerelle » adossé à un petit serveur Go qui écoute le trafic mesh et expose un module conversationnel. Pas de dépendance au cloud — un modèle local, quantifié, tournant sur un mini-PC.

Les cas d’usage que je veux prototyper :

  1. Résumé de trafic — « qu’est-ce que j’ai raté sur le réseau depuis ce matin ? »
  2. Requêtes hors-ligne — interroger une base de connaissances locale (cartes, procédures) par messages LoRa.
  3. Alertes intelligentes — filtrer la télémétrie et ne notifier que l’anormal.
// Bridge relaie un paquet mesh vers le module d'inférence local.
func (b *Bridge) Handle(pkt mesh.Packet) {
    if pkt.Port != mesh.PortText {
        return
    }
    if q, ok := strings.CutPrefix(pkt.Text, "?"); ok {
        go b.answer(pkt.From, strings.TrimSpace(q))
    }
}

La contrainte est passionnante : réponses courtes (la charge utile LoRa se compte en octets) et latence tolérée (le mesh n’est pas temps réel). Ça force à concevoir un assistant qui va droit au but.

Suite

Le réseau tient debout ; l’étage IA est encore sur l’établi. Je documenterai le protocole de la passerelle quand il sera moins expérimental.