Releases ·
Roastwarden 0.7.0
Other roasters, step two: a roaster now declares its outputs (heater or burner, fan or air) with ranges and a fan floor, and its kind brings sensible defaults, so a drum no longer gets the fluid bed's CHARGE sequence or 45 % fan floor. Modbus RTU reaches PID controllers and commercial drums over RS-485, the TC4 reads stock aArtisan boards, and connections apply at once. The ESP32 works as before.
Added
- Outputs and kinds' defaults (ROADMAP Next 42, Roaster kind and control level): a roaster's
setup declares its outputs (heater or burner, fan or air; each with a range and a step) and
a fan floor while heating. The control gate refuses a command for an output the roaster does
not have (409
OUTPUT_NOT_DECLARED), clamps heater and fan to their ranges, and raises a fan below the floor while the heater is on. The four hard-coded 45 % floors (roast sequence, fan assist, Profile drive, autotune) are now the roaster's. Choosing a kind writes its defaults: a drum's or a logger's roast sequence only records, and only the fluid bed has the 45 % floor. Setup → Outputs edits them; the Roast page shows only declared outputs, with their names and ranges;roast roaster showprints them. Migration 046; the ESP32 keeps heater and fan 0–100 % and its 45 % floor. - Modbus RTU (ROADMAP Next 43, Wire formats): a serial RS-485 connection for PID controllers and commercial drums, with the same register map and commands as Modbus TCP, in the Add roaster wizard and a roaster's connections.
- The TC4 parser follows
CHAN: a serial TC4 connection reads stock aArtisan replies (only the active channels, then heater, fan and SV) withreply_format: active, so heater and fan land in the right fields and SV is no longer read as the heater %; old connections keep the fixed four-channel layout. Channels 3 and 4 come through as the live fieldst3andt4; the fan's output is a setting (IO3, OT2, DCFAN or none), and emergency stop sends the fan to full on that output.
Changed
- Pollers start, restart and stop as soon as a connection, register map or device status changes, with no server restart. Register maps and connection settings are checked when saved; a bad one gets a 400 saying what is wrong.
- Modbus reads cover coils and discrete inputs, each request has a timeout, and a read the device refuses drops only its registers. A command to a register marked read-only fails and names it.