-
Notifications
You must be signed in to change notification settings - Fork 0
LORA Sideband
8 dépôts github : exemples-de-montages festisol CROUS-micro-python piano visio anumby jouets developpement-voiture raspberry-pico Blog ateliers numériques Repair Café d'Orsay
monter une radio LORA, avec programmation, MESHSTATIC ou RETICULUM demandent des niveaux croissants de calcul ; j'ai testé des montages pour des applications frugales pour faire des répéteurs ou des postes autonomes à faible consommation énergétique
https://github.com/markqvist/nomadnet une version en ligne SIDEBAND
mode d'emploi pour connecter SIDEBAND entre PC et smartphone
yay -S sideband
Branche les modules Heltec V2 en USB -> /dev/ttyUSB0
On doit faire parti du group uucp (sudo usermod -aG uucp $USER newgrp uucp)
rnodeconf /dev/ttyUSB0 --autoinstall --baud-flash 115200
Verif
rnodeconf /dev/ttyUSB0 --info
Dans ~/.reticulum/config
[Interfaces]
RNode LoRa
type = RNodeInterface
interface_enabled = True
port = /dev/ttyUSB0
frequency = 868000000
bandwidth = 125000
txpower = 7
spreadingfactor = 7
codingrate = 5
Install de rnsd : yay -S python-rns
lance le demon : rnsd -v on a des erreurs d'accès au module mais ca se stabilise ensuite
sideband
conversion il faut échanger la clé Identity Hash — dans : ⚙ Paramètres → About / À propos Tu devrais voir un hash de 20 caractères hexadécimaux, quelque chose comme a1b2c3d4e5f6.... C'est l'adresse que tu donnes au PC 2 pour l'ajouter en contact. Tu peux aussi la voir en ligne de commande : rnid
puis on ajoute le contact
- Lien avec le Heltec pas super stable : bug dans RNodeInterface.py , ajout d'un sleep(1.0) pour éviter l'écriture avec l'ouverture du port cf pulling request de JP https://github.com/samuk/Reticulum/pull/1
- en attendant on patch le code ligne 431 après thread.start() , on ajoute sleep(1.0)
| dBm | mW |
|---|---|
| 0 dBm | 1 mW |
| 3 dBm | 2 mW |
| 7 dBm | ~5 mW |
| 10 dBm | 10 mW |
| 14 dBm | 25 mW |
| 17dBm | 50 mW |
- txpower = 17 (max en France)
- spreadingfactor = 9 (on pourrait aller ->11) au détriment du débit
- frequency = 868200000 (pour eviter les interférences)
| SF7 | -123 dBm |
| SF8 | -126 dBm |
| SF9 | -129 dBm |
| SF10 | -132 dBm |
| SF11 | -134.5 dBm |
| SF12 | -137 dBm |
- rnsd -vv
- Install yay -S python-lxmf et Run : python lxmf_autoresponder.py (dans partage sur le PC EndaevourOs)
- rnsd -vv
- Sideband
Antenne — le Heltec V2 a une petite antenne stub par défaut. Une antenne quart d'onde externe ou une antenne directionnelle peut faire gagner 5-10 dB facilement, ce qui double ou triple la portée effective.
Attentes réalistes en urbain dense :
- En intérieur à intérieur : 100-300m
- En extérieur avec ligne de vue dégagée : 1-2 km
- Avec antennes surélevées (fenêtre haute, toit) : jusqu'à 3-4 km
- Repondeur sur le Bureau : txpower = 7 , sf =7 -> bas de chez Arnaud
- Repondeur sur le volet du balcon: txpower = 14 , sf =7 -> Abri Bus N118 , BatiColor , pas de réponse à la Troche ou sur le Plateau
- Repondeur sur le volet du balcon : txpower = 17, sf =9 -> contre la fenetre du salon chez Arnaud
- Répondeur automatique : d4858077db7446c990b36e8ad78ebb43
- JP : db2a126920752429bfc27b05ecf13f77
- Arnaud : 2d6d525231d363738360a95a3ef0adf4
[[RNode.LoRa]]
type = RNodeInterface
interface_enabled = True
port = /dev/ttyUSB0
speed = 115200
frequency = 868200000
bandwidth = 125000
txpower = 17
spreadingfactor = 9
codingrate = 5
Ajouter dans .reticulum/config
[lxmf]
propagation_node = db2a126920752429bfc27b05ecf13f77
try_propagation_on_fail = yes
- Raspberry Pi3 model A+ d'Arnaud : 512MB RAM et 15Gb carte flash , 1USB + le Wifi + 1HDMI non utilisé
- Il faut du 64bits
-
Flash l'image Debian 13 64b (Raspberry PI Imager) , OS lite (64bits) no desktop avec Wifi (configuré) et ssh ->
- hostname reticulum-jp , user jp/ciel2000
- hostname reticulum-ar , user ar/aaa
-
Démarre et connexion via ssh
-
Test
raspi-configen local pour changer le wifi : semble OK -
Mise à jour :
apt update / apt full-upgrade / apt autoremove -
RAM Disk
Créer un tmpfs de 60 Mo
- Édite /etc/fstab : sudo nano /etc/fstab
- Ajoute : tmpfs /mnt/ramdisk tmpfs defaults,noatime,size=60m 0 0
- sudo mkdir /mnt/ramdisk
- sudo mount -a
- Vérifie : df -h | grep ram
- Édite /etc/fstab : sudo nano /etc/fstab
-
apt install pip
-
En mode user
- pip install rns
- Modif de RNodeInterface.py
- pip install lxmd
-
rns -vv (démon reticulum à lancer via systemd)
-
écriture du script de répondeur via l'IA
-
Mise en route de la messagerie lxmd
-
Config reticulim avec mode transport et accès client via le Wifi
[reticulum]
enable_transport = Yes
share_instance = Yes
instance_name = default
[logging]
loglevel = 4
[interfaces]
[[RNode.LoRa]]
type = RNodeInterface
interface_enabled = True
port = /dev/ttyUSB0
speed = 115200
frequency = 868200000
bandwidth = 125000
txpower = 17
spreadingfactor = 9
codingrate = 5
[[LocalTCP]]
type = TCPServerInterface
enabled = yes
listen_ip = 0.0.0.0
listen_port = 4242
[lxmf]
propagation_node = db2a126920752429bfc27b05ecf13f77
try_propagation_on fail = yes
L'univers Arduino est vaste ; découvrez des montages en quelques clics pour faire des jouets avec des arduino, les nouveaux modules raspberry pico ou avec du wifi les petits esp CROUS-micro-python

La progression par 5 niveaux des exemples-de-montages est importante pour aborder des projets de plus en plus ambitieux. Compléter votre boite à outils avec des Capteurs, des Afficheurs en utilisant des Instruments de mesure. Regarder les Videos et montez vos propres projets pour refaire les jeux du festival festisol et commencer à utiliser les nouveaux raspberry-pico. Voulez-vous nous aider à développer d'autres applications ? Commencez un peu de code CROUS-micro-python, participez au developpement-voiture ou pour construire des jouets Anumby
