Émetteur-récepteur HF — gestion des versions

Versionnement et livraison du firmware

Associer chaque firmware à une révision matérielle, une configuration, des tests et un paquet reproductible.

SemVerVersion lisible
Build IDRévision exacte
Hardware revCompatibilité
Release notesChangements documentés

Organisation fonctionnelle

Code sourceBuild reproductibleTestsImage signéeManifestNotes de versionArchive
Point critique : Distribuer plusieurs fichiers nommés simplement « firmware.bin » rend les erreurs de version presque inévitables.

Identification

Le firmware affiche version, date, identifiant de commit et révision matérielle.

Le fichier binaire seul est insuffisant.

Le manifest décrit taille, hash et compatibilité.

Livraison

Une release contient binaire, bootloader si nécessaire, procédure et notes.

Les paramètres par défaut sont versionnés.

Les images de développement sont clairement séparées des versions stables.

Retour arrière

Conserver les dernières versions stables.

Documenter les incompatibilités de configuration.

Tester le downgrade lorsque la procédure l’autorise.

Repères d’ingénierie

Release complète = binaire + manifest + hash + compatibilité + notes + tests
Build reproductible = même source et outils → même résultat
Version affichée doit correspondre à l’image réellement exécutée

Contrôles systématiques

  • Conserver RX comme état sûr par défaut.
  • Valider chaque commande avant action matérielle.
  • Mesurer le pire temps d’exécution.
  • Tester les capteurs invalides et pertes de communication.
  • Associer chaque correction à un test de régression.

Procédure recommandée

Adopter une convention de version.
Inclure le commit dans le build.
Créer un manifest.
Automatiser les tests.
Calculer le hash.
Rédiger les notes de version.
Tester l’installation et le rollback.
Archiver le paquet complet.
Validation : toute panne logicielle simulée doit ramener le matériel vers un état réception sûr et explicite.