5.8 KiB
OpenParcelBox Roadmap
Presentation
OpenParcelBox is an open-source project that replaces the proprietary electronics of connected parcel boxes with an autonomous, local, and sustainable solution.
The project is currently developed and validated on a Boks One, but the architecture should remain portable to other parcel boxes by adapting the hardware layer.
The firmware is based on Zephyr RTOS and follows a modular architecture to simplify maintenance and future extensions.
Project Goals
- No cloud dependency.
- No subscription.
- Local-first operation.
- Battery-powered design.
- NFC support.
- Bluetooth support.
- Zigbee support.
- Home Assistant compatibility.
- Android and iOS application.
- Beginner-friendly hardware.
- Maximum reuse of existing hardware.
- Fully documented hardware and firmware.
- Fully open source.
Current Progress
| Phase | Status |
|---|---|
| Project initialization | Done |
| Documentation structure | Done |
| Firmware architecture | In progress |
| RGB LED driver | Done |
| GPIO expander driver | Done |
| Matrix keypad driver | Done |
| Active buzzer driver | Done |
| Lock driver | Pending |
| Battery driver | Pending |
| NFC driver | Pending |
| Power management | Pending |
| Bluetooth configuration | Pending |
| Zigbee integration | Pending |
| Home Assistant integration | Pending |
| PCB V1 | Pending |
Phase 0 - Project Foundation
Objectives:
- Create the repository.
- Define the project architecture.
- Define coding conventions.
- Define the documentation structure.
- Configure the Zephyr development baseline.
Status: done.
Phase 1 - Reverse Engineering
Objective: document every reusable component of the original Boks One hardware.
Scope:
- Enclosure.
- Front panel.
- Keypad layout.
- Lock mechanism.
- Battery compartment.
- Connectors and wiring.
- PCB analysis.
Status: in progress.
Phase 2 - Development Platform
Objective: validate the development hardware and low-level firmware modules.
Hardware:
- Seeed Studio XIAO BLE nRF52840.
- Development keypad.
- PCF8574 GPIO expander.
- Active buzzer through transistor driver.
Firmware modules:
- RGB LED.
- GPIO expander.
- Matrix keypad.
- Active buzzer.
Status: in progress.
Phase 3 - Hardware Validation
Objective: validate every reusable or newly added hardware component before integration.
Components:
- Lock.
- Door or lock state feedback.
- Battery monitoring.
- NFC antenna.
- Buzzer.
- External LEDs.
Status: in progress.
Phase 4 - Firmware Core
Objective: create the autonomous firmware.
Components:
- System initialization.
- GPIO expander.
- Keypad.
- Lock.
- Door or lock state feedback.
- Battery.
- Buzzer.
- NFC.
Security:
- Administrator PIN.
- PIN timeout.
- Anti brute-force logic.
- Configuration storage.
Status: planned.
Phase 5 - Power Management
Objective: optimize battery life.
Features:
- Deep sleep.
- Wake-up on keypad.
- Wake-up on NFC.
- Battery monitoring.
- Low battery warning.
Status: planned.
Phase 6 - Bluetooth
Objective: provide local configuration through Bluetooth.
Features:
- Initial pairing.
- Administrator PIN configuration.
- NFC enrollment.
- Device information.
- Firmware information.
Status: planned.
MVP - Standalone OpenParcelBox
Required features:
- Standalone firmware.
- Battery-powered operation.
- Keypad.
- Lock.
- Door or lock state feedback.
- Battery monitoring.
- Administrator PIN.
- Administrator NFC badge.
- Bluetooth configuration.
- No cloud.
- No subscription.
At this stage, the original proprietary electronics are no longer required.
Phase 7 - Flutter Application
Platforms:
- Android.
- iOS.
Features:
- Bluetooth connection.
- Device configuration.
- Administrator management.
- Device status.
- Firmware update.
Status: planned.
Phase 8 - User Management
Objective: support multiple users.
Features:
- User creation.
- User deletion.
- Permanent PINs.
- Permanent NFC badges.
- User permissions.
Status: planned.
Phase 9 - Local Event History
Objective: store important events locally.
Events:
- PIN unlock.
- NFC unlock.
- Invalid PIN.
- Invalid badge.
- Low battery.
- Door opened.
- Door closed.
Status: planned.
Phase 10 - Zigbee
Objective: add Zigbee connectivity.
Features:
- Lock state.
- Door state.
- Battery level.
- Event reporting.
Compatibility:
- Zigbee Home Automation.
- Zigbee2MQTT.
Status: planned.
Phase 11 - Home Assistant
Objective: provide native Home Assistant integration.
Compatibility:
- ZHA.
- Zigbee2MQTT.
Features:
- Lock control.
- Door state.
- Battery.
- Event history.
- User management.
- Configuration.
Status: planned.
Phase 12 - Temporary Access
Objective: support temporary access credentials.
Features:
- Expiration date.
- Expiration time.
- Usage counter.
- One-time PINs.
- Temporary NFC badges.
Status: planned.
Phase 13 - OpenParcelBox PCB
Objective: design a dedicated PCB.
Requirements:
- Based on XIAO nRF52840.
- Easy to assemble.
- Beginner friendly.
- Low power consumption.
Status: planned.
Phase 14 - Field Validation
Objective: validate the complete system.
Tests:
- Long-term reliability.
- Battery autonomy.
- Environmental testing.
- Lock endurance.
- Zigbee stability.
- Bluetooth stability.
- Recovery after power loss.
Status: planned.
Phase 15 - Documentation
Scope:
- User documentation.
- Maker documentation.
- Developer documentation.
- Hardware documentation.
- Firmware documentation.
Status: planned.
Version 1.0
Expected features:
- Standalone firmware.
- Battery-powered operation.
- Bluetooth.
- NFC.
- Zigbee.
- Home Assistant.
- Flutter application.
- Local history.
- Permanent users.
- Temporary users.
- No cloud.
- No subscription.
- Fully open source.