Roasting
Alarms and auto events
Alarms on temperature, rate of rise and time with actions and notifications; automatic turning point, dry end and DROP; Artisan .alrm files.
An alarm watches every roast for something you care about: BT too high, the roast falling behind its profile, the roaster gone quiet, an RoR crash on its way. It can just tell you, or act on the roaster: cut the heater, raise the fan, mark DROP. Alarms run on the server, so they work with no browser open. The same loop marks the turning point, DRY end and DROP for you.
Setting up alarms
Settings → Alarms. Add suggested gives a starting set; Add alarm a blank one. Each alarm has a name, a condition and a threshold, then optional extras. Click Edit to open one, and Save alarms when done.
| Condition | Fires when |
|---|---|
| BT above / below, ET above / below | the temperature crosses the threshold |
| RoR above / below | BT's rate of rise crosses it (°C/min) |
| BT ahead of / behind profile by | BT minus the profile's BT now passes it; use a negative number for behind. Not after DROP |
| Channel above / below | one of the roaster's declared channels crosses it, in that channel's unit. On a roaster without that channel it never fires |
| Time after landmark | that many seconds have passed since a landmark (CHARGE, first crack, DROP …) |
| No telemetry for | the roaster has sent nothing for that many seconds: sensor, Wi-Fi or broker lost |
| RoR crash / RoR flick / BT stall ahead within | the live prediction expects one within that many seconds (0 to 120), or sees it now. From DRY end to DROP; the message says why (prediction) |
The extras:
- Armed after: the alarm only counts once a landmark is marked (say, after the turning point, so the charge dip does not trip it).
- and if "…" fired: only after another alarm fired in this roast, to chain steps.
- Repeat when it comes back: fire again each time the condition returns, at most every so many seconds (60 by default). Otherwise an alarm fires once per roast.
- Then: actions, run in order. With none, the alarm only notifies.
Thresholds are entered in the unit the dashboard shows.
Actions
Set setpoint, Set fan, Set heater, Set mode (auto or manual), Heater off, Emergency stop, Mark landmark, Pause replay, Stop replay.
An action is a command like the one you would give from the Control tab, and it behaves the same way: it takes that control back from a running profile drive, a fan action becomes fan assist's ceiling, and it goes through the roaster's control level (roaster setup): with control off the roaster refuses every action, and at manual it refuses Set setpoint and Set mode. Marking a landmark that is already marked does nothing. The fired alarm lists each action with its result, or why it failed.
The suggested set
| Alarm | What it does |
|---|---|
| Too hot: heater off | BT above 235 °C: heater off, fan 100 % |
| Telemetry lost: heater off | nothing for 15 s: heater off |
| After drop: cool | at DROP: stop the replay, heater off, fan 100 % |
| Behind profile | BT 8 °C behind the profile, after the turning point; repeats, at most every 120 s |
| RoR crash ahead, RoR flick ahead | warns up to 60 s ahead |
| BT stall ahead | warns up to 120 s ahead |
Adjust the numbers to your roaster: 235 °C is a ceiling for a light to medium roast.
Where an alarm shows
A fired alarm shows as a message in every open dashboard, with a beep if "Sound in the dashboard" is on. It is also sent to the phones and browsers that turned alarm notifications on (push) and to every notification channel that is on, such as ntfy, Gotify, Matrix or a webhook (notifications).
Landmarks marked for you
With Mark landmarks automatically on (the default):
- Turning point: the lowest BT after CHARGE, once BT has risen 2 °C from it. A charge where BT never dips (beans charged into a cold roaster) gets none.
- DRY end: when BT reaches the profile's own dry-end temperature, else the "Dry end at BT" setting (150 °C by default), at least 60 s after CHARGE.
- DROP (its own switch): once first crack is marked or BT passed 190 °C, a sustained fall (BT 15 °C below its peak and falling 20 °C/min or faster). It is marked at the moment BT left the peak, and it ends a running profile drive.
First crack is never marked for you: an RoR dip is too unreliable. The Roast page prompts you instead.
Artisan alarm files
Import reads a Roastwarden export or an Artisan .alrm file (a file or pasted text);
Add to list keeps your alarms, Replace list swaps them. An .alrm does not record
its temperature unit, so the import asks which one Artisan ran in. Export .alrm writes
one in the unit shown. After each import or export the editor lists, row by row, what did not
carry over: Artisan has no names, no repeat and nothing like "behind profile" or the RoR
warnings, and Roastwarden has no Call Program or Event Button actions.
From the command line, roast settings roast_alarms shows the alarms as JSON, and
roast settings set roast_alarms=- writes them from stdin (it needs admin).