RoastRacc

A roasting app built to speak up, not stay quiet.

RoastRacc is a roast monitor, logger and profile player for the Mill City MCR-2D. It runs in your browser, logs every batch, draws the curve live and can replay a saved profile, while the roaster's own panel stays in charge. Full automatic control, with full manual override always live. Over a hundred alarms watch for the stuff you don't want to forget — and when gas or fan drifts off script mid-roast, whether that's the app or your own hand on the panel, you'll know.

Includes the app, the full manual and a sample profile. No roaster? The built-in demo runs a simulated roast so you can try every screen.

RoastRacc's Roast tab mid-roast: live bean, exhaust, drum and inlet temperatures, rate of rise, charge/turning-point/yellowing markers, and the full readout column.
A real roast, played back in DEMO mode — not a live connection.

What it does

One thing to keep in mind: this app was created to meet specific needs of one roastery, so there are features that you might find missing or features you do not need. Having said that, all the basic components are of fairly universal use and they work reliably.

Logs every roast

Coffee, batch size and batch name are saved at drop, together with the full curve. Same-day batches are named in order (roast1, roast2, and so on), green kilograms add up per coffee, and you can close out a billing period with one export.

Shows the roast live

Bean, exhaust, drum and inlet temperatures with rate of rise, plus gas, fan and drum speed. Turning point and yellowing are auto-detected; first crack and second crack are marked by hand, tap to mark or re-mark. You can lay a reference roast behind the live curve as a ghost to follow.

Replays profiles

Save any roast as a JSON profile, or import .rpath files you already have from your own roasts. RoastRacc then sends the gas, fan and drum changes on the profile's timeline. It replays from the profile itself, never from a recording of a replay, so nothing degrades over generations, and gas is never cut to zero at the start.

Plans the day

Build a batch list, see how much green you need by lot, and sort hottest charge first. A checklist screen shows what the profile will do next, and keeps working even if the connection to the machine drops.

Watches the machine, lets you know when it needs attention

A preheat monitor tells you when the drum has settled. Cool Down holds the fan at 55Hz and only declares it safe to power off once drum temp holds at or below 140°F for three straight readings with gas confirmed clear — and if gas keeps reading as flowing, it's the one thing RoastRacc will command down on its own, alarming until you clear it. A sudden, sustained change to gas or fan on the panel during a live roast gets caught too — automation hands back control and alarms rather than carrying on unaware. An ignition watchdog and around a hundred other alarms cover sensors, the drum gate, hopper, tray and the USB link. A reading that stops updating greys out and alarms instead of looking live.

A roasting app built to speak up, not stay quiet. When gas or fan goes off script mid-roast, you'll know.

Ever dropped a hot batch on top of a cool one still sitting in the tray? Ever left the hopper open? Ever dumped a batch and only then noticed the chute was open? Never again.

Tracks color sorter loss

An optional log of weight before and after the sorter, with a running loss percentage per coffee.

Full tracking of everything you want — and nothing you don't.

Keeps your data with you

No corporations having your roasts, no email, no sign-up, no account and no cloud. History, curves and profiles are stored in the browser on the computer that runs RoastRacc. That makes back-ups your job: use the built-in exports, and point the browser's download folder at a synced folder. Want a cloud backup? You got your own.

No one can see your roasts without you wanting them to.

Tired of dealing with green coffee?

Program your blends on RoastRacc and green management is automated. You'll know exactly how much green you need, lot by lot, before you open a single bag.

Every blend knows its greens

Give a profile its own green lots once, and every plan built with it pulls the right amounts on its own — nothing to recalculate by hand each morning.

Blends, single origins — all sorted out in a way that makes sense.

The plan totals the pull

Build the day's batch list and the Plan tab adds up exactly how many kilograms of each lot you need, so you know what to bring up from storage before the first charge.

Tight stock gets flagged

Mark the coffees you can't run out of, and a shortfall shows up on the plan itself, not at the scale.

Two ways to start

Just curious, or no roaster

The demo plays a simulated roast through the real screens: chart, events, profiles, checklist and plan.

  1. Download the testing package, unzip it and open roastracc-1.18.html in Chrome or Edge.
  2. On the Profiles tab, import the sample profile from the package.
  3. On the Roast tab, pick that profile and press DEMO. If the button is missing, switch it on in Config.

Demo roasts are never written to History, so simulated runs cannot end up in your real records. Nothing to break — have fun.

On a real Mill City MCR-2D

Read the manual first. Then start by watching: run the machine by hand and let RoastRacc only observe until its readings match what you see on the panel. Your machine may be wired differently than mine, read the manual some changes are a toggle away on the settings tab.

  1. Connect the computer to the roaster's PLC over USB.
  2. Open roastracc-1.18.html in Chrome or Edge and press Connect. Pick the port.
  3. Roast a full batch or two by hand and compare every reading with the panel.
  4. Only then load a profile and engage the automation.

The manual in the package walks through every tab, the alarms, and what it doesn't do yet.

Manual control always wins

RoastRacc is built around one rule: when something safety-related cannot be verified, it says so loudly and hands control back to the physical panel. It never carries on quietly. Engage or disengage the executor from the Roast tab at any time.

Worst comes to worst, just unplug the USB — you're back to full manual control immediately. Plug it back in whenever you want automation again; the chart will show a gap for that stretch, but it won't end the roast.

  • The panel always works. Nothing in the app locks it, the temperature setpoint on the panel is read but never written, and RoastRacc doesn't write to the safety interlocks the machine's own PLC already handles.
  • Every gas and fan change is read back from the machine. If it cannot be confirmed, automation disengages and alarms.
  • If the USB link drops, the alarm repeats, the chart shows the gap instead of bridging it, and automation pauses on reconnect rather than resuming blind.
  • Profile controls lock during a live roast, so you cannot swap or delete the running profile by accident.
  • As of v1.18, a sudden, sustained change to gas or fan on the panel during a live roast is detected on its own: the executor disengages and alarms, and you can re-engage whenever you're ready. A small nudge is left alone. This doesn't yet cover the drum, and doesn't apply during warm-up staging — a change to either of those still isn't detected unless it happens to break one of the executor's own scheduled writes.

If you want to take manual control, disengage the executor, and if necessary to cut all connection hit the stop button. Connection can be re-engaged at any time by hitting the connect button. Command a -/+ 0.3 Kpa in gas or -/+ 3 Hz on airflow and executor will disengage automatically. Hit stop at any time to return the machine to full manual control and cease all monitoring and automation

RoastRacc is an independent project, built by Racc Roasters in El Salvador. It has no relationship with Mill City Roasters, any of their affiliated companies, or RoastPATH — not made, supported, sponsored, or endorsed by any of them.

It controls a gas-fired machine, so you're responsible for how you use it: stay with the roaster, know your emergency shut-off, and keep the panel within reach. Volume on, and loud — RoastRacc won't bug you unless it needs to. Over a hundred alarms, and we hope you never hear most of them. But when gas or fan goes off script mid-roast, whether that's the app or your own hand on the panel, you'll know. In plain English.

Requirements and limits

  • A computer at the roaster running Chrome or Edge. RoastRacc uses the browser's serial port support, which Firefox and Safari do not have.
  • A USB connection to the roaster's PLC (MODBUS).
  • Built and tested on one machine so far: a Mill City MCR-2D with a Delta PLC. Sensor registers are mapped to that unit, so on another machine check that bean, exhaust and drum readings look right before trusting anything else. Tell us if they do not.
  • Data lives in one browser on one computer. Profiles move between computers; roast history does not. Use the exports to back up what you can.
  • Past curves can be downloaded as CSV. There is no in-app viewer for them yet.

Download

  • RoastRacc v1.18 testing package A zip with the app (one HTML file), the operator's manual (PDF) and a sample profile. Unzip it, then open the HTML file in Chrome or Edge.
    Download the testing package

Questions, or readings that do not look right on your machine? Get in touch through thegoodbeans.com.
The software is provided as-is, free of charge. Use your best judgment.

If you want to support this project, order a pack of coffee from our roastery in El Salvador, we ship worldwide at thegoodbeans.com