Includes: - Backend services: ingestion (:8001), weather API (:8002), gateway (:8003), billing (:8004) with BTCPay integration - Shared asyncpg pool, TimescaleDB hypertable, Redis, Mosquitto MQTT - React frontend: Dashboard (MapLibre) and Messaging (chat UI) - Bridge daemon for Pi + Meshtastic (Serial/TCP T-Deck support) - Production Docker Compose, Nginx reverse proxy, ops scripts - DEPLOY.md with step-by-step deployment guide
8.2 KiB
KosmoConnect Project Roadmap
A technology project of the Church of Kosmo
Phase 0: Foundation & Alignment
Duration: 2–3 months
Goal: Validate the core concept, secure resources, and establish the legal/technical bedrock.
Milestones
| # | Deliverable | Success Criteria |
|---|---|---|
| 0.1 | Project Charter Ratified | Church of Kosmo leadership approves mission, budget, and open-source licensing strategy. |
| 0.2 | License Stack Finalized | Decide whether to adopt KΛ 1.1-Draft or remain on KΛ 1.0 + AGPL-3.0 + CERN-OHL-S-2.0. |
| 0.3 | Reference Hardware Bench | Procure 2× ESP32-S3 dev boards, 2× SX1262 modules, 2× LILYGO T-Beams, reference sensors. |
| 0.4 | Reference Sensor Validation | Confirm BME680 and SPS30 accuracy against a calibrated weather station over 2 weeks. |
| 0.5 | Power Budget Proven | Build a spreadsheet-validated, lab-measured power model proving 80+ days battery autonomy. |
| 0.6 | Repo & CI Operational | All placeholder CI jobs replaced with real builds; contribution guidelines published. |
Key Decisions
- MCU: ESP32-S3 (confirmed) vs. nRF52840 (deferred to v2)
- Backhaul: WiFi-first for infrastructure nodes; LTE as v1.5 upgrade
- Cloud provider: Hetzner / DigitalOcean / AWS (to be selected)
Phase 1: Proof of Concept ("Genesis Node")
Duration: 3–4 months
Goal: One end-to-end enviro-node → bridge → cloud → dashboard chain working in a controlled environment.
Milestones
| # | Deliverable | Success Criteria |
|---|---|---|
| 1.1 | Meshtastic Fork with Sensor Module | Enviro-node firmware reads BME680 + SPS30 and injects a custom data packet into the mesh. |
| 1.2 | Local Data Buffer | Ring buffer in SPI flash stores 7 days of readings and survives reboots. |
| 1.3 | Bridge Daemon v0.1 | Python daemon on Raspberry Pi forwards mesh packets to a local MQTT broker. |
| 1.4 | Ingestion Service v0.1 | FastAPI service consumes MQTT, writes to TimescaleDB, exposes /latest and /history. |
| 1.5 | Dashboard v0.1 | React app displays a single node on a map with live temperature, humidity, and pressure. |
| 1.6 | Genesis Node Deployed | One prototype node + one bridge node installed on Church of Kosmo property, running 24/7 for 30 days. |
Phase 1 Metrics
- Data delivery success rate: >90%
- Dashboard uptime: >95%
- Mesh packet success (single hop): >95%
Phase 2: Pilot Network ("Kosmo Constellation")
Duration: 4–6 months
Goal: Deploy 3–5 enviro-nodes in one geographic region with one or more infrastructure nodes. Onboard the first paying subscribers to the web-to-mesh gateway.
Milestones
| # | Deliverable | Success Criteria |
|---|---|---|
| 2.1 | Enviro-Node PCB v1.0 | First fabricated PCB integrating MCU, radio, sensor headers, and power management. |
| 2.2 | Multi-Hop Data Offload | Nodes 2+ hops from infrastructure successfully transmit buffered data via intermediate relays. |
| 2.3 | Gateway Service v0.1 | Subscribers can send web messages to any node; delivery status tracked (queued → transmitted). |
| 2.4 | Billing Integration | Stripe subscription flow live; at least two plan tiers functional (Wanderer, Guardian). |
| 2.5 | Messaging Client v0.1 | Web inbox supports composing, receiving replies, and viewing delivery status. |
| 2.6 | Admin Panel v0.1 | Node registration, subscriber lookup, and emergency broadcast functional. |
| 2.7 | Pilot Deployment | 3–5 nodes cover a local watershed or community area; 10–20 beta subscribers active. |
Phase 2 Metrics
- Enviro-node uptime (summer): >95%
- Web-to-mesh delivery time: <10 minutes
- Subscriber churn: <10% monthly (beta expectation)
- Kit assembly time (internal test): <4 hours
Phase 3: Production Network & Kits ("The Open Mesh")
Duration: 6–9 months
Goal: Scale to 20–50 nodes, launch the enviro-node kit for sale, and stabilize all services for production load.
Milestones
| # | Deliverable | Success Criteria |
|---|---|---|
| 3.1 | Enviro-Node Kit v1.0 | Complete BOM, assembly manual, packaging, and first production run of 50 kits. |
| 3.2 | Certification (FCC / CE / ISED) | Modular radio approval + EMC testing complete for intended markets. |
| 3.3 | Gateway Delivery ACKs | Full delivery tracking including node-level ACKs (queued → transmitted → delivered). |
| 3.4 | Auto-Provisioning | New kits can self-onboard to the network via QR code + smartphone app without manual admin intervention. |
| 3.5 | Horizontal Scaling | Backend services run on 3+ hosts; database read replicas configured. |
| 3.6 | Community Infrastructure Nodes | Documented process for volunteers to host bridge nodes; at least 3 community-hosted bridges online. |
| 3.7 | Production Launch | 20–50 active enviro-nodes; 100+ paying subscribers; public weather dashboard live. |
Phase 3 Metrics
- Enviro-node uptime (annual avg): >90%
- Data delivery success rate: >98%
- Web-to-mesh delivery time: <5 minutes
- Subscriber churn: <5% monthly
- Gross margin on kits: >30% (to fund network expansion)
Phase 4: Ecosystem & Resilience ("The Continuum")
Duration: 12+ months (ongoing)
Goal: KosmoConnect becomes a platform. Other communities fork the stack, build compatible nodes, and participate in the wider mesh ecosystem.
Milestones
| # | Deliverable | Success Criteria |
|---|---|---|
| 4.1 | Public API & Webhooks | Developers can query weather data and receive mesh events via webhooks (Sanctuary tier). |
| 4.2 | Mesh Federation | Interoperability experiments with other Meshtastic community networks; shared routing where appropriate. |
| 4.3 | Enviro-Node v2.0 | nRF52840-based redesign with 50% lower sleep current and 50% smaller enclosure. |
| 4.4 | Mobile App | Native iOS/Android app for messaging and node management (extends or replaces web client). |
| 4.5 | Disaster Response Integration | Partnership with local emergency management to use the mesh for alert broadcasting during grid outages. |
| 4.6 | Open Continuum Archive | All historical designs, firmware, and docs mirrored to IPFS or equivalent durable storage. |
Phase 4 Metrics
- Forks / derivative projects: >5 active
- Nodes on the mesh (including non-Church-of-Kosmo builds): >200
- Subscribers: >1,000
- Uptime during a documented emergency event: Mesh remains locally functional for >72 hours without internet
Continuous Workstreams
These activities run in parallel across all phases:
| Workstream | Activities |
|---|---|
| Community | Discord/forum moderation, kit build-along events, contributor onboarding |
| Documentation | API docs, assembly guides, troubleshooting wikis, video tutorials |
| Legal & Compliance | Privacy policy updates, RF compliance in new regions, trademark guidance |
| Finance | Grant applications, kit pricing reviews, subscriber retention analysis |
| Security | Penetration testing of gateway, firmware signing, supply-chain verification |
Dependencies & Risk Mitigation
| Risk | Mitigation |
|---|---|
| Solar power insufficient in winter | Oversize battery + panel in v1; aggressive sleep optimization in v2 |
| Meshtastic protocol changes break custom module | Pin to stable releases; maintain a small upstream contribution relationship |
| Regulatory certification costs exceed budget | Use pre-certified radio modules; start with one market (e.g., USA) |
| Subscriber growth slower than expected | Double down on kit sales and community node sponsorships |
| Cloud infrastructure fails during emergency | Multiple community-hosted bridges; mesh functions locally regardless |
How to Read This Roadmap
- Phases are sequential but overlapping. For example, kit design (Phase 3) begins before Phase 2 ends.
- Milestones are negotiable. If a technical discovery in Phase 1 invalidates the PCB approach, Phase 2 slips to accommodate the pivot.
- Metrics are targets, not guarantees. They exist to focus effort and signal when to ask for help.
"Through openness, we preserve. Through preservation, we evolve. Through evolution, we return."