Files
OpenParcelBox/TODO.md
T

3.6 KiB

TODO - OpenParcelBox

This document tracks the remaining work required to reach the first stable release of OpenParcelBox.

Tasks are grouped by development phase and updated throughout the project.


Phase 0 - Project Foundation

Repository

  • Create repository.
  • Create project structure.
  • Create README.
  • Create ROADMAP.
  • Create TODO.
  • Add LICENSE files.

Documentation

  • Create documentation tree.
  • Create firmware documentation.
  • Create hardware documentation baseline.
  • Create development documentation.
  • Create protocol documentation.

Firmware Baseline

  • Configure Zephyr.
  • Configure west and CMake.
  • Define firmware architecture.
  • Configure formatting conventions.

Phase 1 - Reverse Engineering

Mechanical

  • Measure enclosure.
  • Measure internal space.
  • Measure mounting points.
  • Measure keypad.
  • Measure NFC area.

Lock

  • Identify lock mechanism.
  • Validate lock command behavior.
  • Validate feedback contact behavior.
  • Design production lock driver circuit.

Electronics

  • Identify every connector.
  • Document original PCB.
  • Document wiring.
  • Document LEDs.
  • Validate active buzzer approach.

Phase 2 - Development Platform

Firmware Infrastructure

  • RGB LED driver.
  • GPIO expander driver.
  • Matrix keypad driver.
  • Active buzzer driver.
  • Lock driver.
  • Door or lock state driver.
  • Battery driver.
  • NFC driver.

Documentation

  • keypad.md.
  • gpio_expander.md.
  • buzzer.md.
  • debug.md.
  • led.md.
  • lock.md.
  • battery.md.
  • nfc.md.

Phase 3 - Hardware Validation

Lock

  • Drive lock through the selected circuit.
  • Validate opening pulse.
  • Validate opening detection.
  • Validate timeout.
  • Validate error handling.

Door or Lock State

  • Read feedback contact.
  • Validate state changes.
  • Validate debounce.

Battery

  • Read voltage.
  • Implement low battery detection.
  • Calibrate battery measurement.

NFC

  • Design antenna.
  • Validate tuning network.
  • Read UID.
  • Detect badge removal.

Buzzer

  • Single keypad beep.
  • Double beep.
  • Error beep.
  • Success beep.

Phase 4 - Firmware Core

Initialization

  • Complete startup sequence.
  • Initialize all peripherals.
  • Standardize error handling.

Access Control

  • Administrator PIN.
  • PIN verification.
  • PIN timeout.
  • Anti brute-force logic.
  • Lock opening sequence.
  • Door or lock state validation.

Configuration

  • Persistent storage.
  • Factory reset.
  • Version information.

Phase 5 - Power Management

  • Battery monitoring.
  • Battery warnings.
  • Sleep mode.
  • Wake on keypad.
  • Wake on NFC.
  • Measure sleep current.
  • Measure battery life.

MVP - Standalone Firmware

  • Complete firmware startup.
  • Lock opening.
  • Door or lock feedback.
  • Battery monitoring.
  • Administrator PIN.
  • Administrator NFC badge.
  • Audible feedback.
  • Standalone operation.
  • Battery-powered operation.
  • No cloud.
  • No subscription.

Later Phases

  • Bluetooth communication.
  • Flutter mobile application.
  • User management.
  • Local event history.
  • Zigbee connectivity.
  • Home Assistant integration.
  • Temporary access.
  • Dedicated PCB.
  • Field validation.
  • Complete user, maker, and developer documentation.