feat: add irrigation control, camera water assessment, and sensor integration layer (HA, MQTT, LoRa, RF, B-hyve)
This commit is contained in:
parent
462bdf985d
commit
73305d12b9
1 changed files with 25 additions and 6 deletions
31
README.md
31
README.md
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
# Waxwing
|
# Waxwing
|
||||||
|
|
||||||
**Local-first gardening assistant. Grow schedules, plant tracking, tree and graft registry — no cloud required.**
|
**Local-first gardening assistant. Grow schedules, plant tracking, tree and graft registry, camera health assessment, and smart irrigation control — no cloud required.**
|
||||||
|
|
||||||
[](https://git.opensourcesolarpunk.com/Circuit-Forge/waxwing)
|
[](https://git.opensourcesolarpunk.com/Circuit-Forge/waxwing)
|
||||||
[](LICENSE)
|
[](LICENSE)
|
||||||
|
|
@ -52,6 +52,10 @@ Add plants and trees to your registry (species, variety, planting date, location
|
||||||
- **Light mapping**: track sun exposure per bed across seasons; input sunrise/sunset angles for your coordinates or log direct observations; Waxwing recommends plant placements based on actual light hours rather than generic "full sun / part shade" labels
|
- **Light mapping**: track sun exposure per bed across seasons; input sunrise/sunset angles for your coordinates or log direct observations; Waxwing recommends plant placements based on actual light hours rather than generic "full sun / part shade" labels
|
||||||
- **Graft tracker**: union success rate, scion-rootstock compatibility notes, photo log
|
- **Graft tracker**: union success rate, scion-rootstock compatibility notes, photo log
|
||||||
- **Diagnosis**: photo upload or symptom description; visual model suggests deficiencies, pests, or disease
|
- **Diagnosis**: photo upload or symptom description; visual model suggests deficiencies, pests, or disease
|
||||||
|
- **Water needs assessment**: point your camera at a plant and the visual model evaluates water stress indicators (leaf curl, turgor, color shift, soil surface); output is a recommendation, not a command
|
||||||
|
- **Smart irrigation control**: integrates with Home Assistant and Orbit B-hyve (IoT irrigation controllers) to trigger watering runs; each plant or zone runs in one of two modes:
|
||||||
|
- *Suggest mode* (default): Waxwing sends a notification with the assessment and recommended run time; you approve before anything opens
|
||||||
|
- *Automate mode* (opt-in per plant): watering triggers automatically within parameters you set (maximum daily volume, soil moisture floor, blackout windows); alerts you when readings fall outside your configured bounds
|
||||||
- **Harvest log**: yield by variety and season; searchable history
|
- **Harvest log**: yield by variety and season; searchable history
|
||||||
- **Offline-first**: all data stays local; no account required for core features
|
- **Offline-first**: all data stays local; no account required for core features
|
||||||
|
|
||||||
|
|
@ -59,7 +63,7 @@ Add plants and trees to your registry (species, variety, planting date, location
|
||||||
|
|
||||||
**Privacy:** Your grow data stays on your device. No account required for core use. Cloud sync (Paid tier) is opt-in and encrypted in transit.
|
**Privacy:** Your grow data stays on your device. No account required for core use. Cloud sync (Paid tier) is opt-in and encrypted in transit.
|
||||||
|
|
||||||
**Safety:** Diagnosis suggestions are starting points, not prescriptions. Pesticide and treatment recommendations always link to label instructions and require user confirmation before logging.
|
**Safety:** Diagnosis and water stress assessments are starting points, not instructions. Automated watering (automate mode) requires per-plant opt-in and explicit parameter bounds; no valve opens without either user approval or your pre-configured limits being met. Pesticide and treatment recommendations always link to label instructions and require user confirmation before logging.
|
||||||
|
|
||||||
**Accessibility:** Plant names displayed in both common and Latin. Care reminders support multiple notification modes. High-contrast and large-text modes follow system preferences.
|
**Accessibility:** Plant names displayed in both common and Latin. Care reminders support multiple notification modes. High-contrast and large-text modes follow system preferences.
|
||||||
|
|
||||||
|
|
@ -67,9 +71,9 @@ Add plants and trees to your registry (species, variety, planting date, location
|
||||||
|
|
||||||
| Tier | What you get |
|
| Tier | What you get |
|
||||||
|------|-------------|
|
|------|-------------|
|
||||||
| **Free** | Full plant registry, grow calendar, harvest log, local LLM diagnosis |
|
| **Free** | Full plant registry, grow calendar, harvest log, local LLM diagnosis, water stress assessment, sensor integration (local network) |
|
||||||
| **Paid** | Cloud sync across devices, photo backup, community variety library |
|
| **Paid** | Cloud sync across devices, photo backup, community variety library, irrigation controller integration (Home Assistant, Orbit B-hyve) |
|
||||||
| **Premium** | Fine-tuned visual model for your specific varieties, multi-site support |
|
| **Premium** | Fine-tuned visual model for your specific varieties and conditions, multi-site support, sensor fleet management |
|
||||||
|
|
||||||
## Product code
|
## Product code
|
||||||
|
|
||||||
|
|
@ -88,11 +92,26 @@ Early issues shape what gets built first. Star the repo to follow progress.
|
||||||
## Tech notes
|
## Tech notes
|
||||||
|
|
||||||
- Built on the shared [circuitforge-core](https://git.opensourcesolarpunk.com/Circuit-Forge/circuitforge-core) scaffold
|
- Built on the shared [circuitforge-core](https://git.opensourcesolarpunk.com/Circuit-Forge/circuitforge-core) scaffold
|
||||||
- Visual model: local vision LLM for leaf and fruit diagnosis
|
- Visual model: local vision LLM for leaf/fruit diagnosis and water stress assessment
|
||||||
- Calendar integration: iCal export for reminders
|
- Calendar integration: iCal export for reminders
|
||||||
- Data format: SQLite local store, JSON export for portability
|
- Data format: SQLite local store, JSON export for portability
|
||||||
- Graft registry: tracks rootstock, scion, union date, take confirmation, and annual vigor notes
|
- Graft registry: tracks rootstock, scion, union date, take confirmation, and annual vigor notes
|
||||||
|
|
||||||
|
**Sensor integration layer:**
|
||||||
|
|
||||||
|
Waxwing ingests readings from a wide range of garden sensor hardware. Any sensor that can publish data over the local network is a candidate:
|
||||||
|
|
||||||
|
| Transport | Example hardware | What it provides |
|
||||||
|
|-----------|-----------------|-----------------|
|
||||||
|
| Home Assistant entity | HA soil moisture, temperature, humidity sensors | Direct pull via HA REST or WebSocket API |
|
||||||
|
| MQTT broker | DIY Arduino/ESP32 builds, Zigbee soil sensors | Subscribe to topic per bed or per plant |
|
||||||
|
| LoRa / LoRaWAN | Custom field sensors, The Things Network nodes | Long-range soil and microclimate readings from far corners of a property |
|
||||||
|
| RF (433 MHz / 915 MHz) | Budget wireless soil probes, weather stations | Received via RTL-SDR or dedicated gateway |
|
||||||
|
| Orbit B-hyve API | Smart irrigation controllers | Trigger watering runs; read zone history |
|
||||||
|
| HTTP polling | Any sensor with a local REST endpoint | Generic fallback for anything with a web interface |
|
||||||
|
|
||||||
|
Sensor readings fuse with visual model output and grow calendar data to produce the water needs assessment. Camera vision and sensors are complementary: sensors give ground-truth soil state, camera gives above-ground plant response.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
[Business Source License 1.1](LICENSE) — free for personal non-commercial self-hosting. Converts to MIT after four years. Commercial use requires a [paid license](https://circuitforge.tech/pricing).
|
[Business Source License 1.1](LICENSE) — free for personal non-commercial self-hosting. Converts to MIT after four years. Commercial use requires a [paid license](https://circuitforge.tech/pricing).
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue