Multi-sensor fusion meets operational intelligence, applied to trees.
- irrigation
- v0.2 · planned
- defense
- v0.4 · planned
- mind agent
- v0.3 · planned
- alerts
- 0 · nominal
- plants live in inventory · Y1 target met
- 165
- accepted revenue · YTD 2026 from accepted quotes
- $4,260
- treatment events · YTD Iowa 206 compliant
- 11
- PHI plants gated no harvest blocks
- 0
Lorax Watch · Range · Hammer · The Lorax · Ledger · Channel · Atlas · Lab — eight modules, one platform.
A multi-sensor fusion platform that watches every plant, every sensor, every customer interaction, and every dollar.
Watch every plant.
Multi-sensor fusion: soil moisture, leaf wetness, canopy temp, lysimeter mass, PoE camera vision, weather station, drone NDVI. Edge nodes on WiFi 6 mesh feed a Pi 5 + Hailo-8L gateway. Sensor reads land in the dashboard inside 30 seconds.
- edge nodes
- ESP32-S3 · M5Stack · Seeed XIAO
- gateway
- Pi 5 8GB · Hailo-8L M.2
- telemetry
- Postgres + TimescaleDB · MQTT
Sell every plant.
Customer CRM, quote drafting with live PDF preview, B2B wholesale portal with ACH net-30, a public DTC storefront with Stripe Tax. Quote-to-order conversion tracked. Year-5 endgame: per-plant photo timelines for premium specimens.
- crm + quotes
- shipped v0.1
- storefront DTC
- v0.4 · Stripe Checkout
- wholesale B2B
- v0.5 · Stripe Invoicing
Stay legal automatically.
Iowa Code 206 pesticide records auto-generated from every treatment event. Iowa Nursery Grower annual inspection assembled from the schema, not maintained by hand. REI/PHI gating on plant transitions is enforced in code, not vibes. Multi-state modules queued for the SaaS pivot.
- iowa code 206
- shipped · auto from treatment_event
- REI / PHI
- schema-enforced · cannot bypass
- states queued
- WI · MN · NE · IL
The named surface area.
Lorax OS is opinionated. Eight modules with hard responsibility lines. Each tile below is honest about what ships today versus what arrives with the sensor mesh in v0.2 and the AI agent in v0.3.
Lorax Watch
Live monitoring. Sensors, alerts, weather, defense status, and the common operating picture. Always-on at 30-second refresh on the shop tablet.
Lorax Range
Sensor mesh management. Node health, calibration, OTA firmware. Filter by pasture, zone, sensor type, status.
Lorax Hammer
Irrigation, frost protection, deer-deterrent actuators. Deterministic control loops — never an LLM in the path.
The Lorax
The AI agent. Claude in the cloud, Llama 3.3 fallback on the Pi. Chat in the web admin, push-to-talk on phone, wake-word on LilyGo handheld.
Lorax Ledger
Compliance records, financial reporting, tax exports, grant tracking. Iowa Code 206 pesticide log + Iowa Nursery Grower annual auto-assembled from the schema.
Lorax Channel
Sales surfaces. Customer CRM, quote builder with live PDF, public DTC storefront, B2B wholesale portal with Stripe Invoicing ACH net-30.
Lorax Atlas
Digital twin. Property twin from drone photogrammetry, zone twin with simulation mode, per-plant schematic twin and (later) Gaussian splat photoreal.
Lorax Lab
Research mode. Control vs treatment cohort designer, methodology attachments, grant-format exports — SARE Farmer/Rancher, USDA SBIR, NIFA AFRI.
The plant is the center.
Every table fans out from a single plant row. Sensor reads, treatment events, photo timelines, cost rollups, compliance gates, customer interactions — all addressable from one identifier.
‘Forest Pansy’live · growingintake 2026-04-18 · 30 days
Schema fields
- plant_id
- PLT-A05-04-12
- species_cultivar
- Cercis canadensis 'Forest Pansy'
- intake_date
- 2026-04-18
- location
- Block A · Row 4 · Pos 12
- sensor_zone
- Z03 · north pasture
- status
- live · growing
- size_caliper
- 0.875"
- stock_plant_lineage
- SP-007
- phi_until
- (none)
- phyto_cert_required
- Iowa interstate-ship 2026
- treatment_events
- 4 logged · YTD
- photo_count
- 11
- cost_per_plant
- $8.42 intake + $1.18 ops
- research_cohort
- EQIP control row 4
Every row carries organization_id — RLS isolates tenants from day one so the Year-5 SaaS pivot is free.
Four layers. Hard separation.
Local-first edge. The Pi is the operational system of record for control loops. Cloud is the system of record for business data. Loss of internet means irrigation and defense keep running with cached state; writes queue and replay.
01 · Edge
layer 1/4ESP32-S3 · PoE cameras · solenoids · weather · lysimeters
- ›Capacitive moisture · SHT41 air · BH1750 PAR · DS18B20 chains
- ›HX711 + 50kg load-cell pot lysimeters
- ›Reolink PoE PTZ + Duo 3 wide-area
- ›OTA firmware · MQTT to Pi · TFLite-Micro motion classify
02 · Gateway
layer 2/4Raspberry Pi 5 8GB · Hailo-8L M.2 · UPS · shop-mounted
- ›Mosquitto MQTT · Postgres + TimescaleDB hypertables
- ›Hammer control daemons · Hailo CV runtime
- ›Whisper.cpp STT · Piper TTS · Ollama Llama 3.3 8B fallback
- ›MCP server · sync agent · outbox + replay
03 · Cloud
layer 3/4Supabase · Vercel · Anthropic · Stripe · Resend · Trigger.dev
- ›Supabase Auth · Postgres · pgvector · PostGIS · Realtime · Storage
- ›Next.js 16 on Vercel · admin + storefront + wholesale subroute
- ›Stripe Checkout DTC · Stripe Invoicing B2B · Stripe Tax
- ›Claude Sonnet via API · Sentry · PostHog · Grafana Cloud
04 · Interaction
layer 4/4Tab S9 Ultra primary · phone PWA · LilyGo handheld
- ›Admin: lorax.mlmpower.ai · dark · tablet-landscape-first
- ›Storefront: dctreefarm.mlmpower.ai · public · softened brand
- ›Wholesale: dctreefarm.mlmpower.ai/wholesale · auth-gated
- ›Voice: PWA push-to-talk · LilyGo T-Display S3 wake-word
Honest timeline through Sep 2030.
Compliance + EQIP ledger close-out
Phyto certs CRUD · weather snapshot on treatments with NOAA pre-fill · grant_payment ledger · Iowa Nursery Grower annual scaffold.
v0.1.2·shippedFirst sensors land
5 sensor nodes · MQTT ingest · Pi Postgres + TimescaleDB · manual irrigation · container-yard lysimeters · mobile PWA.
v0.2·plannedSensor-driven ops + The Lorax
ET-driven irrigation · The Lorax chat · property twin v1 from drone · Lorax Lab v1 · SARE proposal data ready.
v0.3·plannedPublic storefront live
DTC storefront with Stripe Checkout · first container sales online · camera nodes · YOLO deer detection on Hailo.
v0.4·plannedWholesale + voice + leaf-vision
B2B wholesale subroute · Stripe Invoicing ACH net-30 · vision-language leaf diagnosis · voice agent on LilyGo.
v0.5·plannedDefense + SBIR readiness
Defense robotics fully integrated · SBIR Phase I submission readiness · Gaussian splat per-plant pilot.
v0.6·plannedSelf-host shipped
Caliper-measurement CV · drone NDVI ingestion · harvest-readiness scoring · zone twin with sim · Docker Compose self-host installer.
v0.7·plannedHarvest workflow + multi-tenancy
First major B&B harvest workflow · customer-facing photo timelines · multi-tenancy hardening begins · role-scoped seasonal-help PWA.
v0.8·plannedFirst external self-hoster
Iowa compliance modularized · WI + MN modules drafted · SaaS auth flows · tenant onboarding self-serve · first external self-hoster.
v0.9·plannedHosted SaaS pilot
2–5 paying tenants · commercial license offering live · per-plant photoreal twins as premium feature.
v1.0·plannedWhat ships under those version cuts.
Functional epics
- 01Plant Lifecyclev0.1.2·shipped
Intake, location, batch operations, stock-plant lineage, REI/PHI gating, photo timelines.
- 02Sensor Meshv0.2·planned
ESP32-S3 nodes on WiFi 6, MQTT to Pi, calibration history, OTA firmware.
- 03Irrigationv0.2·planned
Manual zone control v0.2 · ET-model sensor-driven v0.3 · lysimeter feedback.
- 04Pest / Diseasev0.1.2·shipped
Treatment-event log shipped · vision-language leaf diagnosis v0.5 · disease pressure modeling.
- 05Defensev0.4·planned
PoE PTZ + YOLOv11 on Hailo · water spray, acoustic, strobe deterrents · deterministic firing only.
- 06Voice + Chat Agentv0.3·planned
The Lorax chat web v0.3 · LilyGo wake-word v0.5 · MCP tool server on Pi · Claude + Llama fallback.
- 07Quotes + Salesv0.1.2·shipped
Quote builder w/ live PDF + public access-token URL shipped · storefront v0.4 · wholesale v0.5.
- 08CRMv0.1.2·shipped
Customer pipeline, interaction timeline, follow-up bookkeeping, stale-account flagging.
- 09Compliancev0.1.2·shipped
Iowa Code 206 pesticide log + PDF · Iowa Nursery Grower scaffold · phyto certs · sales-tax routing · multi-state v0.9+.
- 10Financialv0.1.2·shipped
Per-plant cost rollup · treatments-amortized COGS · EQIP grant ledger · Date/Account/Amount CSV for QB/Xero/Wave.
- 11Propagationv0.2·in dev
Stock-plant lineage tracking, propagation events, success-rate analytics, cohort assignment.
- 12Customer-Facingv0.4·planned
DTC storefront with Stripe Tax v0.4 · per-order photo timelines v0.8 · tier-priced wholesale catalog v0.5.
- 13Research Mode (Lab)v0.3·planned
Control vs treatment cohort designer, methodology docs, SARE/SBIR/NIFA export packs.
- 14Digital Twin (Atlas)v0.3·planned
Property twin from drone v0.3 · zone twin sim v0.7 · per-plant Gaussian-splat pilot v0.6 → production v1.0.
Iowa is the v0.1 baseline.
Compliance is modeled in the schema from day one. Retrofitting it into a system designed without it is multi-week pain — so we don't. WI, MN, NE, IL modules queued for the multi-state SaaS pivot.
All treatment events carry product, EPA reg no., rate, area, REI, PHI, applicator, weather snapshot, and signed PDF on demand.
A plant cannot transition to harvest_ready until its phi_until has passed. This is legal compliance, not a UI suggestion.
Inspection record auto-assembled from plant + treatment_event + phyto_cert. Submit via IDALS.
Iowa requirement → schema source
| Requirement | Iowa ref | Schema source | Status |
|---|---|---|---|
| Pesticide application records (24-month retention) | Iowa Code 206 §21-45 | treatment_event | compliant |
| REI / PHI enforcement on plant transitions | Iowa Code 206 + label law | plant.status gating | compliant |
| Iowa Nursery Grower annual inspection records | IDALS Entomology & Plant Science | plant + treatment_event + phyto_cert | compliant |
| Phyto cert tracking (5-year retention) | USDA APHIS · IDALS | phyto_cert | compliant |
| Iowa sales tax handling (taxable / resale / statutory exempt) | Iowa DOR | customer.tax_treatment + Stripe Tax | compliant |
| Iowa LLC biennial report reminder | IA Sec. of State | organization.next_biennial_report_due | compliant |
| 1099 tracking for contracted labor | IRS + IA DOR | vendor_payment | v0.2 pending |
AI suggests. Deterministic systems act.
LLMs draft, summarize, advise, and route. Deterministic code fires actuators, enforces compliance rules, and runs control loops. No LLM in the irrigation path. No LLM in the defense path. No LLM in any path where a hung API call could kill a tree.
The Lorax · advisor
Anything off in Block A this morning?
PLT-A05-04-12 (Forest Pansy) shows powdery mildew on three lower leaves in last night's PoE-04 frame. Pressure forecast moderate (RH 78%, low wind). Suggested treatment: PHC ESP at 15 ml/gal, REI 4h, PHI 0. Block A REI window clears 2026-05-19 06:00 CDT. Draft a treatment_event?
Yeah, draft it.
runtime · Anthropic Claude Sonnet (cloud) · Llama 3.3 8B (Pi offline read-only fallback) · MCP server on Pi
Lorax Hammer · actuator log
- 181430ZZ03 · soil-moisture 18.2% · threshold 17% · skip
- 181400ZZ01 · scheduled cycle · ON · 8 min · 4.2 gal
- 181352ZZ01 · solenoid-02 · OPEN ack
- 181244Zlysimeter L-04 · pre-mass 6.812kg
- 180230ZZ05 · soil-moisture 12.4% · threshold 17% · CYCLE
- 180200ZZ05 · scheduled cycle · ON · 12 min · 6.3 gal
runtime · Python control daemon on Pi · MQTT to ESP32 solenoid drivers · no network dependency · same code runs offline
Lose internet. Plants live.
The Pi is the operational system of record for control loops. Internet drops, cloud goes dark, Anthropic 500s — irrigation keeps running, defense keeps watching, treatments still get logged. Writes queue locally and replay on reconnect. Full 7-day operational tolerance is the design target.
Cloud · unreachable
Supabase unreachable · Anthropic API timeout · Stripe webhooks queueing. Vercel admin loads cached read views from service worker.
Pi · system of record
Postgres + TimescaleDB local · Mosquitto routing MQTT · Hammer control daemon scheduling irrigation · outbox queue accumulating writes for replay.
Plants · watered
Z01 irrigation cycle completed 4.2 gal. Z03 skipped (soil 18.2% > threshold). Z05 cycle armed. Lysimeter pre/post masses logged locally.
Built in the open. AGPL v3.
Lorax is open source from v0.1. The hosted SaaS at lorax.mlmpower.ai is the commercial offering — self-hosting is supported and welcomed. The AGPL network-share clause preserves the hosted SaaS as the default commercial play while keeping the code genuinely free.
Why AGPL v3
Genuine OSI-recognized open source matters for SBIR credibility, university and extension service adoption, and the “built in the open” narrative. AGPL is battle-tested by Plausible, Cal.com, Mastodon, and Matrix.
- license
- AGPL-3.0-or-later
- cla / dco
- DCO sign-off on every PR
- trademark
- USPTO TEAS Plus pending
Repository
pnpm workspaces monorepo · Next.js admin + Pi edge agent + shared packages. CI runs license audit (REUSE) on every build — a single GPL-incompatible dependency blocks the merge.
github.com/dbavey22/lorax →Every file is signed
REUSE-compliant SPDX headers on every source file. Validated in CI via pnpm reuse:check.
// SPDX-FileCopyrightText: 2026 Major League Measurables
// SPDX-License-Identifier: AGPL-3.0-or-later- self-host
- free · AGPL v3
- hosted SaaS
- $99–149/mo · v1.0 Sep 2030
- commercial license
- available · v1.0+