Dashboard

Live Roasting Console

The main interface during a roast. Live temperature metrics across the top, a full-screen chat area with color-coded message types, and hardware controls at the bottom.

Nudges appear in green with a left border, memories in amber (italic), your messages in blue (right-aligned), and coach responses in purple. The phase bar tracks drying, Maillard, and development progress in real time.

  • Metrics BT, ET, ROR, Elapsed Time, ETA to target
  • Controls Fan ±1, Power ±1, Marker buttons (DRY, FC, DROP)
  • Setup Form Bean origin, processing, roast level, target temp
  • Post-Roast Reflection chips, cupping scores, session save
342°
BT
478°
ET
18.2
ROR
3:42
Time
3:10 · BT 325°F
ROR at 20 is ideal for mid-Maillard. Hold fan at 7 and power at 6.
3:25 · Reference Memory
💡 Last roast (4/5★) → fan set to 6 at 3:30 (BT was 330°F)
3:35
Should I drop fan now or wait?
3:36 · Coach
ROR is 18 and declining smoothly — no need to rush. Drop fan to 6 when you hit 340°F for a cleaner transition into FC.
Fan
7
+
Power
6
+
Chart

Real-Time Roast Curves

A dedicated chart window showing live BT and ROR curves with reference overlays from past roasts. Event markers for DRY, FC, and DROP. Fan and power adjustment markers show exactly when you made changes.

The chart calculates ETA to your target drop temperature based on current ROR trends. Reference curves from selected past roasts overlay in a muted color for live comparison.

  • Y-Axis Left Bean Temperature (150–460°F)
  • Y-Axis Right Rate of Rise (0–60°F/min)
  • Overlays Reference curves, target drop line, event markers
  • Markers Green = fan change, Orange = power change
FC F7
Bean Temp
ROR
Reference
Events
Lab

Roast Lab & Analysis

Post-roast analysis with multi-curve comparison. Select any past roasts from the sidebar, overlay their temperature curves in the center panel, and compare metadata in the detail view below.

Edit event markers on old roasts, save cupping scores, and mark roasts as targets for future PID sessions. Filter and sort by origin, roast level, date, or cupping score.

  • Left Panel Roast log list with search, filter, sort
  • Center Multi-curve overlay canvas (4-color palette)
  • Bottom Selected roast detail: events, cupping, temps, phases
  • Actions Edit markers, save scores, set as target, delete
Costa Rica · Natural
Feb 20 · 4.2★ · 395°F
Kenya · Washed
Feb 18 · 4.5★ · 402°F
Ethiopia · Natural
Feb 15 · 3.8★ · 389°F
Panama · Natural
Feb 12 · 4.0★ · 398°F
■ Costa Rica ■ Kenya ■ Ethiopia

Three inputs, one system.

Roast Coach supports multiple hardware configurations for temperature reading and roaster control.

🌡️

MS6514 Thermocouple

Dual-channel USB thermocouple thermometer. The primary temperature source — probe goes directly into the bean mass.

InterfaceUSB Serial (CP2102)
Channels2 (BT + ET)
Sample Rate~1 Hz
Accuracy±0.5°F
📡

RoastLink CORE

WiFi-connected hardware controller. Enables bidirectional communication — both reading temperatures and controlling fan/power remotely.

InterfaceWiFi WebSocket + HTTP
ControlFan 1-9, Power 1-9
DataBT, ET, Ambient, Humidity
Required ForPID Auto-Pilot mode
🎮

Elgato Stream Deck

Physical button panel for hands-free roasting. Map buttons to fan/power adjustments and event markers while your hands are on the roaster.

InterfaceHTTP API triggers
ActionsFan ±, Power ±, FC, DROP
FeedbackVisual button states
OptionalYes — UI works alone

From raw data to synthesized knowledge.

Every temperature reading passes through six stages — captured, processed, and assembled into the context that drives AI coaching.

🔌
Serial Read
MS6514 bytes parsed to BT/ET values at 1 Hz
📈
Smoothing
Artisan-matched weighted moving average
📊
ROR Calc
Delta BT per minute with trend line
🎯
Phase Detection
Drying, Maillard, Development auto-tracked
🧠
Context Build
7-source context assembled for Claude
💬
Nudge
Claude generates coaching message (<80 tokens)

Full REST API for control and data.

Every feature is accessible via API. The UI, Stream Deck, and PID controller all use the same endpoints.

MethodEndpointPurpose
GET/api/statusCurrent roast state, live temps, phases, control mode
GET/api/historyFull roast history (temps, ROR, events, adjustments)
GET/api/startCHARGE — begin roast, start recording
GET/api/stopDROP — end roast, compute phases
GET/api/mark?event=FC|DRY|DROPMark roast events with automatic timestamping
GET/api/adjust?control=fan|power&level=1-9Set fan or power level (manual mode only)
GET/api/mode?mode=manual|pidSwitch control mode mid-roast
GET/api/override?duration=30Temporary PID override (user takes control)
POST/api/chatSend message to Claude with full roast context
GET/api/nudge-statusRecent nudges and response tracking
GET/api/logsList all saved roast session logs
POST/api/cuppingSave cupping scores → triggers learning updates

See where the knowledge engine is headed.

The roadmap for Roast Coach — deeper learning, richer data capture, and the long-term vision.

View Roadmap →