retour

Notes d’exploration LoRa n°6

 

Plusieurs amis ont des projets ou sont en train de s’équiper, c’est cool ! Et je reçois plein de questions. Voilà des réponses à certaines des plus courantes.

photo de six hommes blancs tous habillés de manière différente des années 90 et portant de la technologie portable et lunettes de réalité augmentée, ils prennent des poses cool mais ont l’air de geeks
Moi et mon crew quand on se retrouve pour bidouiller nos radios LoRa. Photo des membres du MIT Wearable Computing Project, © Steve Mann, 1995.

Je choisis quoi comme matériel ? Est-ce que je m’équipe avec un module solaire dès maintenant ?

Ça, ça dépend de ton emplacement. Tu ne peux pas trop savoir tant que tu n’as pas laissé un module à ta fenêtre pendant quelques jours, ou alors tu as pu consulter le réseau capté par un pote qui s’est déjà équipé et qui est dans ton coin.

Les cartes sur le web sont pas super fiables, la carte officielle MeshCore doit être la plus à jour. Mais souvent elles ne vont pas remonter un node proche. Beaucoup de gens préfèrent que leur position ne soit pas remontée. Perso, je n’ai qu’un répéteur qui est visible sur la carte MeshCore.

La stratégie que je recommande, c’est de prendre un module simple (voir mes 📻 Notes n°3), de tester les coins de ton logement qui captent le mieux, et d’attendre de recevoir les messages de Meshtastic ou les annonces de MeshCore (j’en parle plus loin)).

Pour ce qui est du module solaire (ou branché, en tous cas un truc statique sur ton toit), ça sera à décider selon ce que tu reçois. S’il y a plein de nodes autour de chez toi et que tu n’as pas de soucis de propagation, pas besoin. Mais bon, je peux apporter une réponse plus complexe :

En Meshtastic ça sera pas forcément très pertinent d’ajouter un node solaire. Une grosse majorité des nodes répètent tous les messages qui leur arrivent, donc ça sature la bande passante, qui elle-même est limitée (voir l’aspect légal dans ma présentation 📟 Notes n°4). Et si tu insères un node entre deux nodes utiles, ça peut ajouter un saut dans la route. Et comme le nombre de sauts est limité… c’est contre-productif. Et surtout, n’utilise pas le rôle “Router”, il exacerbe ces problèmes s’il n’est pas très bien situé.

J’ajoute en complexité : si tu captes mal chez toi, un node solaire Meshtastic peut être nickel en rôle « Client Base » : il ne répètera que les messages qui sont adressés à ses nodes préférés (donc tes nodes à toi). Résultat, il n’ajoute pas au bruit du réseau et te permet quand même d’y accéder depuis chez toi.

En revanche MeshCore n’a pas ce problème de limite de sauts, et en plus le réseau est bien moins bruyant (il gère mieux le routage, donc moins de nodes essayent de transmettre ton message), donc un node solaire peut quand même être super pertinent.

Mais bon, après, les soucis de réception peuvent être résolus avec une meilleure antenne ou un meilleur placement, sans besoin d’ajouter un module en hauteur et donc de devoir mettre à jour les firmwares, etc.


J’achète où ?

Il y a plusieurs boutiques qui ont des entrepôts en UE, c’est mieux pour les délais et les frais genre douane. D’un côté tu as des fournisseurs chinois qui ont un entrepôt en UE (regarde du côté de Seeed Studio ou Lilygo), d’un autre tu as les revendeurs officiels (RAKWireless chez Hexaspot).

Les boutiques des fabricants ou des revendeurs officiels garantissent que tu ne passes pas par un intermédiaire… j’ai lu des histoires de fausses boutiques Etsy ou autres qui prennent ton argent et ne t’envoient rien.

Après, il y a Aliexpress, ça marche aussi.


Je choisis quoi, MeshCore ou Meshtastic ?

Le choix est déjà un peu répondu dans mes 🗼 Notes n°5. Ça dépend de ton usage et de ton environnement. Donc je réitère ma stratégie un peu plus haut : laisse un module correctemnt configuré à un endroit où il reçoit les signaux, genre pendant une semaine pour chaque protocole, et regarde ce qui est mieux fourni autour de toi.

Techniquement, le flashage se passe rapidement : tu commences par effacer le firmware existant, puis tu charges le nouveau firmware. Sur les deux systèmes tu peux sauver et restaurer tes clés privées (via les applications). C’est utile si tu testes un protocole puis que tu passes à l’autre, quand tu repasses au premier tu reprends ta clé privée initiale pour retrouver ton identité.

Un module avec une seule antenne ne peut pas faire les deux en même temps, mais la quasi-totalité des modules peuvent être flashés en Meshtastic et en MeshCore donc c’est pas vraiment un facteur de choix.


Comment est-ce que je m’y connecte ?

Je le mentionnais un peu dans mes 📻 Notes n°3. Même avec un module “simple” sans clavier, tu peux le gérer sans smartphone. Un ordinateur peut utiliser les apps web de chaque système mais il faut un navigateur basé sur Chromium pour les faire tourner, c’est pas au goût de tout le monde (et à raison). Un ordinateur peut aussi s’y connecter en ligne de commande, c’est moins beau mais super puissant.

Avec un smartphone on peut se connecter aux modules via Bluetooth Low Energy (BLE) ou, si c’est pas un iPhone, directement via liaison USB. Je suis raisonnablement confiant que ça marchera pour les modèles que je recommande (même si je ne peux pas tester toutes les configurations)


Tu parlais d’annonces je sais pas quoi ?

Un aspect dont je crois pas avoir parlé, c’est la découvrabilité dans le réseau.

Chaque module a une clé privée, sur laquelle est dérivée une clé publique. La clé publique peut déchiffrer les messages chiffrés par la clé privée, et vice versa. En revanche une clé publique ne peut pas déchiffrer un message chiffré avec la même clé publique. La clé publique est aussi utilisée comme une adresse, ou du moins un identifiant du destinataire d’un message.

Donc pour pouvoir t’envoyer un message, il faut que je connaisse ta clé publique. D’une part pour connaître ton adresse, mais aussi pour que le module chiffre le message qui t’es destiné.

Meshtastic et MeshCore ont un fonctionnement un peu différent pour ce qui est de faire connaître ta clé publique.

Sur Meshtastic il y a tout un tas de paquets visibles ou invisibles qui circulent sur le canal Public (ou “MediumFast”/“LongFast” sur certaines applications) du réseau : ça comprend les messages publics, les messages privés (ils sont chiffrés donc n’apparaissent pas s’ils ne sont pas pour toi), mais ça peut être un envoi de coordonnées GPS. Tous ces messages font connaître au reste du réseau la clé publique de l’envoyeur, et c’est ce qui fait l’ordre d’apparition des contacts dans l’onglet “Nœuds” de l’app (iOS pour ce qui me concerne).

Sur MeshCore, c’est pas automatique. Il y a un type de transmission qui s’appelle une “annonce” (ou un “advert” avant traduction). Les nodes répéteurs font des annonces à intervalle régulier—étant donné qu’ils sont cruciaux pour le routage des paquets, c’est attendus qu’ils soient connus sur le réseau. Les nodes compagnons doivent faire les annonces à la main. Il y a trois manières d’annoncer sa clé : de manière publique à tout le réseau (les répéteurs vont relayer l’annonce, donc tous les nodes qui la reçoivent savent que ton node existe), de manière privée “zéro saut” (les répéteurs ne relayent pas, seuls tes potes à portée de ton node savent que ton node existe), ou en ne passant pas par la radio (option “copier dans le presse-papiers”), à ce moment-là tes destinataires doivent ajouter manuellement ton contact en collant le texte de l’annonce dans l’option d’ajout de contact.

À noter que sur MeshCore, l’adressage comme le routage ne se font pas avec la clé publique entière, mais avec les quelques premiers octets—suffisamment unique pour ne pas risquer de collision, suffisamment courts pour ne pas gonfler la taille des messages ni laisser découvrir le reste de la clé. (Sur ce détail je ne sais pas comment Meshtastic se comporte.)


Finalement, d’où vient cet engouement ?

Lors de l’entretien avec Nastasja Hadjadji pour Le Monde (voir mes 🗼 Notes n°5), elle m’a posé une question qui n’a pas pu terminer dans l’article mais qui était très intéressante : d’où vient l’engouement de ces temps-ci pour les réseaux maillés et surtout MeshCore ou Meshtastic ?

Si je me souviens bien, ma réponse tournait autour de l’envie de découvrir autre chose. On navigue sur le net depuis vingt ans, on a vu le réseau monter, tout recouvrir, coloniser toutes les facettes de notre vie, puis redéfinir nos habitudes et nos attentes. On a vu les nouvelles technologies arriver, et chaque fois des milliardaires qui en tiraient partie. On voyait un horizon sans limites et on s’est fait capturer par les silos que sont les réseaux sociaux concurrents. Je pense que l’idée de faire notre propre infrastructure, redéfinir nos modalités de communication, c’est reprendre la maitrise de cet aspect de nos vies. C’est pas fait pour remplacer le net, mais c’est un espace à défricher et à s’approprier. Et surtout, c’est un espace qui sera difficile à monétiser, donc on se sent à l’abri le la merdification qui jusqu’ici a touché la majeure partie des outils et technologies qu’on a adopté.

Et toi qui lis mes notes, comment est-ce que tu expliques cet engouement ?



On en discute ?…

Sur le Fediverse : boitam.eu/@joachim/116539202199164539


Billets liés

mesh