This week I focused on stabilizing the Raspberry Pi 5 Python environment so our backend dependencies install cleanly, collecting and organizing delivered materials, and refactoring the codebase and documentation to match our current use case.
Key contributions included:
- Raspberry Pi 5 virtual environment and dependencies: I spent most of my time getting a
venvon the RPi5 set up so that installing fromrequirements.txtcompletes without failures or crashes. The goal was a repeatable, smooth setup path for FastAPI, database drivers, MQTT-related packages, and the rest of the stack we need for integration on the Pi. - Materials pickup and organization: I picked up materials that were delivered to the front office and sorted everything so we know what we have on hand for the physical demo and wiring (and what still might be pending).
- Codebase refactor for current use case: I refactored a large portion of the code to align with the system we’re building now (web-first building control, MQTT, subsystems as we’ve scoped them in the Design Report). This included cleaning up structure and behavior so it’s easier to maintain as we hook up hardware.
- Documentation and polish: I improved overall code quality where it touched the refactor and updated the README so setup on the Pi, repo layout, and how to run things match the current project state.
Is your progress on schedule or behind?
I am on schedule relative to my own track: the RPi5 environment is in a much better place for backend install and testing, materials are accounted for, and the repo reflects our current architecture and use case. The next bottleneck is joint progress on physical assembly and firmware bring-up with Cindy, but my software and Pi-side prep are moving forward as planned.
What deliverables do you hope to complete in the next week?
- Backend on RPi5: Finish or verify full backend bring-up over SSH (FastAPI, MQTT broker, TimescaleDB/Docker as applicable) using the working
venv, and run at least one end-to-end smoke test (e.g., health check + MQTT publish/subscribe or a single API path). - Hardware integration support: As soon as the frame and nodes are ready, help wire or validate one path (e.g., access control or one room’s environmental node) against the live backend on the Pi.
- CI and tests: Keep GitHub Actions green after the refactor; add or adjust tests for any new MQTT/API paths or settings so coverage stays above our target and regressions are caught during integration.

