Repository navigation
quorum v0.1.4
Timed readings: chains, a test clock, and a bench test through time.
- Chains. A timed reading may watch another timed reading, for example
reading hot_twice "..." when ran_hot 2 times in 1h. The compiler orders them so each comes after those it watches, and refuses loops. A timed reading still cannot watch a conclusion: the rules' answers would feed back into their inputs, and the check over every combination of readings would no longer cover what the board does. - No missed writes. The board now steps its timed readings just before and just after every Modbus write, so a reading the controller writes is never missed, however briefly it is set. What the board cannot see is a pulse on the plant that the controller never writes.
- Test clock. Modbus map version 2 adds registers 10 to 12, which move the board's clock forward so an hour-long window can be tested in seconds. The test clock can be turned on only before anything else has been written since the board started, and it stays on until the board is reset. Reset the board before it goes into service, and have the controller check that register 10 reads 0.
- Bench test for timed rulebooks. The commissioning sheet of a timed rulebook now carries a script: each timed reading just inside and just outside its window, then every line of the sheet. The expected answers come from replaying the script through the definitions over the whole history, not from the board's timer code. "Test the board" plays it on the test clock, or in real time with
-real-time(a box in the studio). - Fixed: an event a full turn of the 32-bit millisecond clock old (49.7 days) could look recent again.
Measured on a Raspberry Pi Pico 2: the timed example rulebook passed 19 of 19 on the test clock and 19 of 19 in real time (71 minutes), the chained example 17 of 17, and the 5-minute and 1-hour windows were waited out for real (6 of 6). The Uno R4 has not run the new firmware or the timed bench test yet.
Limits: when a timed reading is set is shown by tests and board runs, not by the exhaustive check; a timed reading cannot watch a conclusion; the bench test does not cover raw sensor channels.
Boards with older firmware refuse a chained image rather than run it wrongly; quorum studio writes the new runtime with the image.
Downloads
- Windows:
quorum-studio-windows-setup.exe. It is not code-signed, so SmartScreen may warn. - Linux:
quorum-studio-linux-amd64.tar.gz. - macOS:
quorum-studio-macos.zip. It is not notarized: the first time, Control-click the program and choose Open.
Verify the downloads against SHA256SUMS.
Licence: PolyForm Noncommercial 1.0.0. Commercial licences from BioDream LLC (firstmind@biodream.ai). Not certified for safety-critical use.