§3.1 · Research question
Does edge-local processing of a single-greenhouse telemetry stream produce materially different operational outcomes than cloud-centric processing when both consume the same sensor stream under identical operational conditions? “Materially different” is operationalised under §3.4.
DRAFT — final framing pending defence-committee review (2026-Q3).
§3.2 · Hypothesis
H₀ — Under steady-state operation, edge and cloud paths produce statistically indistinguishable results across the four measured variables (latency, energy, monetary cost, data integrity).
H₁ — Under failure conditions (network partition, MQTT broker outage, hub power loss), the two paths diverge in operationally significant ways that can be characterised quantitatively.
DRAFT — numeric thresholds for “significant” pending §3.4 calibration.
§3.3 · Experimental setup
Identical sensor stream, two parallel processing paths, no operator intervention during a measurement window.
- Sensor layer (shared) — three ESP32 boards (greenhouse-interior, greenhouse-exterior, outdoor) publishing temperature, humidity, soil moisture, light, and air-quality samples to a Mosquitto broker on the Raspberry Pi hub.
- Edge path — Pi-local subscriber writes a SQLite ring buffer and computes derived metrics in-process. No cloud dependency.
- Cloud path — Pi-local bridge forwards the same MQTT topics to AWS Aurora Serverless v2 via a thin Lambda ingest. Derived metrics computed by scheduled Lambda over Aurora rows.
Both paths see the same publish events at the broker, so any divergence is attributable to processing, not sampling.
DRAFT — wiring diagrams + part numbers in §1; cross-reference once §1 lands.
§3.4 · Variables
| Variable | Edge measurement | Cloud measurement | Significance threshold |
|---|---|---|---|
| Latency (publish → derived metric available) | ms via local timestamp | ms via Aurora recorded_at − publish ts | TBD |
| Energy (per 1k samples) | Pi wall-meter Wh | Lambda invocation count × billed-MB-ms × upstream MQTT bytes | TBD |
| Monetary cost (per month, normalised to 1 node) | amortised hardware + electricity | AWS bill (Aurora ACU-hours + Lambda + Data API) | TBD |
| Data integrity | gap-count, gap-duration, samples-lost | same metrics computed over Aurora | TBD |
DRAFT — threshold values pending §3.5 confounder analysis.
§3.5 · Confounding factors
Captured as a checklist for the audit committee. Each row will be addressed by a measurement protocol decision and any residual risk recorded in the published dataset.
- WAN flap during cloud-path write (logged as a gap, not a value divergence — see §3.6).
- Lambda cold-start latency vs warm-start (sample windows tagged).
- Aurora ACU autoscale events (timestamped in the run log).
- Pi thermal throttling under sustained edge processing (CPU temp recorded in the edge dataset).
DRAFT — protocol decisions per row pending.
§3.6 · Data integrity protocol (ADR-010)
When a node has been silent past its threshold, the dashboard
surfaces STALE: N hours next to the reading, and the daily archive
for that day records the gap as a gap. This is a methodology
decision, not a UX one — it is why the public dataset and the
methodology dataset are the same dataset, with the same gaps, treated
the same way.
The 2026-04-23 four-day gap (docs/thesis-incidents-log.md INC-001)
is the cautionary tale: detected by manual row-count audit, not by
any alarm. The remediation (LIVE-001..LIVE-004 watchers in Phase 5.9)
is itself part of the methodology — if the data integrity protocol
must include alarms, then the alarms are part of the apparatus and
are documented as such.
§3.7 · Limitations
- Single greenhouse, single operator. No cross-site replication in this iteration. Calibration against a second greenhouse is a follow-on study.
- Polish electricity price baseline assumed for the energy variable. Cross-region cost comparison requires regional price inputs and is out of scope.
- Datacenter-region locality — AWS eu-central-1 chosen to approximate cross-Atlantic-free conditions. Different regions introduce different latency floors.
- Budget ceiling — the cloud path is run within the AWS Free Tier
- a small overage budget. If a measurement window pushes past the ceiling, that window is recorded but excluded from the steady-state analysis, and the exclusion is documented.
Status: structural draft v0.1, 2026-05-06. Citation:
https://plantir.garden/thesis/2026/methodologyis locked per ADR-011 — citable in this state, although the prose will be replaced before defence (target 2026-08). Related ADRs:docs/adr/010-public-sensor-data-policy.md,docs/adr/011-thesis-url-schema.md.