Files
OpenParcelBox/ROADMAP.md
T

7.3 KiB

OpenParcelBox - Roadmap

Présentation

OpenParcelBox est un projet open source visant à remplacer l'électronique propriétaire des boîtes à colis connectées par une solution autonome, locale et pérenne.

Le projet est développé et validé sur une Boks One.

L'architecture est documentée afin de faciliter une éventuelle adaptation à d'autres matériels par la communauté.

Objectifs

  • Aucune dépendance au cloud
  • Aucun abonnement
  • Fonctionnement autonome
  • Compatible NFC
  • Compatible Zigbee
  • Compatible Home Assistant
  • Compatible Android et iOS
  • Fonctionnement sur piles
  • Accessible aux makers débutants
  • Réutilisation maximale du matériel existant

Phase 0 - Initialisation du projet

Objectifs

  • Création du dépôt Git
  • Définition de l'architecture
  • Définition des conventions de développement
  • Mise en place de la documentation

Livrables

  • README.md
  • ROADMAP.md
  • LICENSE
  • TODO.md

État

  • Initialisation du projet

Phase 1 - Analyse matérielle

Objectifs

Documenter le matériel réutilisable de la Boks One.

Éléments à analyser

Façade

  • Dimensions
  • Position des boutons
  • Position des LEDs
  • Position de la zone NFC
  • Position des fixations

Boîtier

  • Dimensions internes
  • Compartiment électronique
  • Compartiment piles

Mécanique

  • Serrure
  • Capteur de fermeture
  • Passage des câbles

Livrables

  • Plans cotés
  • Documentation photographique
  • Relevés mécaniques

État

  • Analyse matérielle

Phase 2 - Analyse électrique

Objectifs

Identifier les caractéristiques électriques des composants conservés.

Mesures

Alimentation

  • Tension du pack piles
  • Consommation en veille
  • Consommation moteur

Serrure

  • Tension moteur
  • Courant nominal
  • Courant de démarrage

Capteur

  • Type
  • Fonctionnement

Signalisation

  • LEDs
  • Buzzer

Livrables

  • Documentation électrique
  • Tableau des caractéristiques

État

  • Analyse électrique

Phase 3 - Prototype électronique

Objectifs

Valider la compatibilité du matériel avec un XIAO nRF52840.

Matériel

  • Seeed Studio XIAO BLE nRF52840
  • Driver moteur
  • Alimentation de laboratoire

Fonctionnalités

  • Pilotage moteur
  • Lecture capteur
  • Pilotage LEDs
  • Pilotage buzzer

Validation

Ouverture et fermeture de la serrure sans électronique Boks.

État

  • Prototype électronique

Phase 4 - Firmware Core

Objectifs

Créer le firmware minimal autonome.

Fonctionnalités

  • Gestion clavier
  • Gestion serrure
  • Gestion capteur
  • Gestion batterie
  • Anti-bruteforce
  • Timeout de saisie

Validation

Ouverture avec un code administrateur unique.

État

  • Firmware Core

Phase 5 - NFC

Objectifs

Ajouter l'ouverture par badge NFC.

Fonctionnalités

  • Lecture des badges
  • Badge administrateur unique
  • Activation NFC sur appui touche
  • Fenêtre de lecture limitée dans le temps

Validation

Ouverture par badge NFC.

État

  • Fonctionnalités de base

Phase 6 - Optimisation énergétique

Objectifs

Maximiser l'autonomie sur piles.

Fonctionnalités

  • Deep Sleep
  • Réveil sur touche
  • Réveil NFC
  • Mesure batterie

Validation

Autonomie compatible avec un usage quotidien.

État

  • Optimisation énergétique

MVP - OpenParcelBox autonome

Fonctionnalités attendues

  • XIAO nRF52840
  • Fonctionnement sur piles
  • Gestion serrure
  • Gestion capteur
  • Gestion batterie
  • Code administrateur
  • Badge NFC administrateur
  • Fonctionnement 100 % local
  • Aucun cloud
  • Aucun abonnement
  • Aucun compte externe

Une fois cette étape atteinte, une Boks One devient totalement indépendante de son infrastructure d'origine.


Phase 7 - Application Flutter

Objectifs

Créer l'interface utilisateur officielle.

Plateformes

  • Android
  • iOS

Fonctionnalités

  • Connexion Bluetooth
  • Configuration initiale
  • Changement du code administrateur
  • Enregistrement du badge administrateur
  • Consultation de l'état de la boîte

Validation

Configuration complète sans Home Assistant.

État

  • App flutter - Bluetooth

Phase 8 - Gestion des utilisateurs

Objectifs

Permettre la gestion de plusieurs utilisateurs.

Fonctionnalités

  • Création utilisateur
  • Modification utilisateur
  • Suppression utilisateur
  • Codes permanents
  • Badges NFC permanents

Validation

Gestion multi-utilisateurs depuis l'application.

État

  • App flutter - Utilisateurs

Phase 9 - Historique local

Objectifs

Conserver les événements dans la mémoire interne.

Événements

  • Ouverture par code
  • Ouverture NFC
  • Tentative invalide
  • Batterie faible

Validation

Consultation de l'historique depuis l'application.

État

  • App flutter - Historique

Produit autonome complet

Fonctionnalités attendues

  • Gestion multi-utilisateurs
  • Gestion NFC
  • Historique local
  • Configuration Bluetooth
  • Fonctionnement sans Home Assistant

Phase 10 - Zigbee

Objectifs

Ajouter la communication Zigbee.

Fonctionnalités

  • État serrure
  • État porte
  • Niveau batterie
  • Remontée d'événements

Validation

Appairage Zigbee fonctionnel.

État

  • Zigbee - Remontée d'états

Phase 11 - Home Assistant

Objectifs

Ajouter l'intégration Home Assistant.

Compatibilité

  • ZHA
  • Zigbee2MQTT

Fonctionnalités

  • État serrure
  • État porte
  • Batterie
  • Historique
  • Gestion utilisateurs

Validation

Administration complète depuis Home Assistant.

État

  • Intégration Hassio - Remontée

# Phase 12 - Gestion des codes permanents

## Objectifs

Permettre l'administration complète des utilisateurs depuis Home Assistant.

## Compatibilité

* ZHA
* Zigbee2MQTT

## Fonctionnalités

* Création d'utilisateurs
* Modification d'utilisateurs
* Suppression d'utilisateurs
* Création de codes permanents
* Suppression de codes permanents
* Association de badges NFC
* Suppression de badges NFC

## Validation

Administration complète des accès permanents depuis Home Assistant.

## État

* [ ] Intégration Hassio - Codes permanents

---

# Phase 13 - Codes temporaires

## Objectifs

Ajouter les accès temporaires.

## Fonctionnalités

* Expiration par date
* Expiration par heure
* Nombre maximal d'utilisations
* Codes à usage unique

## Validation

Gestion complète depuis Home Assistant et l'application.

## État

* [ ] Intégration Hassio - Codes temporaires

---

# Phase 14 - PCB OpenParcelBox

## Objectifs

Créer un PCB dédié simple à assembler.

## Contraintes

* Basé sur XIAO nRF52840
* Composants traversants privilégiés
* Accessible aux makers débutants

## Validation

Montage reproductible sans équipement professionnel.

## État

* [ ] PCB OpenParcelBox

---

# Phase 15 - Documentation finale

## Documentation utilisateur

* Installation
* Configuration
* Dépannage

## Documentation maker

* Assemblage
* Flash firmware
* Mise à jour

## Documentation développeur

* Architecture
* API
* Contributions

## Validation

Publication officielle de la version 1.0.

## État

* [ ] Documentation

---

# Version 1.0

## Fonctionnalités finales

* Fonctionnement autonome
* NFC
* Bluetooth
* Application Android/iOS
* Zigbee
* Home Assistant
* Historique
* Codes permanents
* Codes temporaires
* Aucun cloud
* Aucun abonnement
* Aucun compte externe