Connecting...

Dave's Icebox 101

Powered by IBM Confluent, Watsonx.ai, Watsonx.data & Raspberry Pi

Current Temperature
--°C
OK
Asset ID
COOLER-001
Threshold
5.0°C
System Uptime
00:00:00
Last Update
Never
Temperature Trend (Last 24 Hours) 0 readings
AI Predictions (watsonx.ai)

Waiting for AI predictions...

Recent Alerts

No alerts yet

About Dave's Icebox 101

Sitting in a house in Toronto, Canada is a real cooler containing a bag of ice. Inside that cooler is a DS18B20 waterproof temperature sensor — a tiny digital probe wired to a breadboard connected to a Raspberry Pi 4. Every second, the sensor reads the internal temperature and streams it as a live event to Confluent Cloud (Apache Kafka) running in AWS us-east-1.

From there, a WebSocket server running on the Pi consumes those events and broadcasts them in real-time to this dashboard — accessible anywhere in the world via ngrok. Every reading is also persisted locally to a SQLite database on the Pi, building a continuous historical record of the cooler's thermal behaviour.

When the temperature exceeds 5°C for 5 consecutive seconds, an alert fires. That alert is consumed by an IBM watsonx.ai service running on the Pi, which calls IBM Granite 4 — a foundation model — with a context-aware prompt that has been tuned to detect three scenarios:

🧊 Slow rise (< 0.2°C/sec): Ice pack degradation — the bag of ice is melting
đŸšĒ Moderate rise (0.2–1.0°C/sec): Cooler door open or sensor displaced
đŸ–ī¸ Rapid spike (> 1.0°C/sec): Sensor handling suspected — someone grabbed it

The model responds with a structured CAUSE, ACTION, and URGENCY level. That prediction is published back to Kafka, consumed by the dashboard in real-time, and simultaneously sent as an SMS via Twilio to Dave's phone — including the AI analysis.

Every morning at 6AM, an automated daily report is generated from the SQLite historical data and emailed to Dave — summarizing the 24-hour temperature profile, alert count, AI root cause analysis for each event, and overall cold chain status. As data accumulates over time, it will be streamed into IBM watsonx.data — an Apache Iceberg lakehouse — enabling long-term pattern analysis and predictive AI: forecasting when the ice will need replacing before the threshold is ever breached.

The entire stack runs autonomously on boot with no manual intervention:

  • Confluent Cloud (Apache Kafka) → real-time event streaming
  • IBM watsonx.ai (Granite 4) → AI-powered root cause analysis
  • IBM watsonx.data (Apache Iceberg) → lakehouse for historical analytics and prediction
  • SQLite → local edge storage and daily reporting
  • Raspberry Pi 4 → edge compute and sensor interface
  • DS18B20 → waterproof digital temperature sensor
  • Twilio → SMS alerting with AI predictions
  • ngrok → secure public tunnel for remote access
  • Gmail → automated daily cold chain report

Built with IBM Bob.