Files
wireclaw/scripts/README_TX_POWER.md
nicoboy 91b9295974 Ajouter scripts de contrôle de puissance TX versionés
- set_TX_power_base.sh : Contrôle TX du Jetson (Base) via iw
- set_TX_power_drone.sh : Contrôle TX du Pi Zero (Drone) via modprobe
- Index 0-63 correspondant à ~0-23 dBm
- Documentation complète avec table de conversion

Scripts séparés pour base et drone pour une gestion indépendante
de la puissance d'émission en production.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XxS1B9w9frUj86E7dPHJfx
2026-07-20 10:58:46 +02:00

3.4 KiB

WireClaw TX Power Control Scripts

Vue d'ensemble

Deux scripts bash pour contrôler la puissance d'émission (TX) du système WireClaw :

  • set_TX_power_base.sh — Base (Jetson)
  • set_TX_power_drone.sh — Drone (Pi Zero)

Utilisation

Base (Jetson)

./set_TX_power_base.sh <index>

Exemples :

./set_TX_power_base.sh 10    # Puissance faible (~3 dBm)
./set_TX_power_base.sh 31    # Puissance moyenne (~10 dBm)
./set_TX_power_base.sh 52    # Puissance haute (~20 dBm)
./set_TX_power_base.sh 63    # Puissance maximale (~23 dBm)

Interface : wlx54c9ff02f26e
Méthode : iw dev ... set txpower fixed
Requis : sudo


Drone (Pi Zero)

./set_TX_power_drone.sh <index>

Exemples :

./set_TX_power_drone.sh 10    # Puissance faible (~3 dBm)
./set_TX_power_drone.sh 31    # Puissance moyenne (~10 dBm)
./set_TX_power_drone.sh 52    # Puissance haute (~20 dBm)
./set_TX_power_drone.sh 63    # Puissance maximale (~23 dBm)

Interface : wlan-drone (via SSH)
Méthode : modprobe -r rtl88xxau_wfb && modprobe rtl88xxau_wfb rtw_tx_pwr_idx_override=<index>
Requis : SSH alias jetson-pi + sudo sur Pi Zero


Table de conversion Index → dBm

Index dBm approximatif
0 0 dBm
10 ~3 dBm
20 ~6 dBm
31 ~10 dBm
42 ~15 dBm
52 ~20 dBm
63 ~23 dBm (max)

Prérequis

Jetson (Base)

  • Commande iw disponible (/usr/sbin/iw)
  • Sudo sans mot de passe configuré
  • Interface wlx54c9ff02f26e active

Pi Zero (Drone)

  • SSH alias jetson-pi fonctionnel dans ~/.ssh/config
  • Session sudo "chaude" lancée sur Pi Zero
  • Module driver rtl88xxau_wfb chargé
  • Interface wlan-drone active

Configuration de la session sudo "chaude"

Sur Pi Zero, au démarrage de session :

sudo -v

Cela cache le mot de passe pendant 15 minutes (~5 min après dernière commande sudo).

Aide

./set_TX_power_base.sh --help
./set_TX_power_drone.sh --help

Version

  • Base script : 1.0.0
  • Drone script : 1.0.0

Auteur

WireClaw TX Power Control System

Notes

  • La conversion Index → dBm est approximative et dépend du chipset/driver
  • Modifier la puissance affecte immédiatement le trafic en cours (peut déconnecter)
  • Les limites régionales (FCC/ETSI) peuvent être appliquées par le driver
  • Le Pi Zero demande un rechargement du module (interruption de service ~2s)

Exemples d'utilisation

Configuration complète (Base + Drone)

# Tous deux à puissance moyenne (~10 dBm)
./set_TX_power_base.sh 31
./set_TX_power_drone.sh 31

Configuration asymétrique

# Base en haute puissance, Drone en faible puissance
./set_TX_power_base.sh 52
./set_TX_power_drone.sh 10

Reset (minimum)

./set_TX_power_base.sh 0
./set_TX_power_drone.sh 0

Troubleshooting

Erreur : "sudo requis"

Sur Jetson : lancez sudo -v pour activer une session sudo "chaude"

Erreur : "SSH non disponible"

Vérifiez que l'alias jetson-pi est configuré dans ~/.ssh/config

Erreur : "Module not found"

Vérifiez que le driver rtl88xxau_wfb est compilé et chargé sur Pi Zero

Changement de puissance non visible

Vérifiez avec : iw dev <iface> info | grep txpower