https://github.com/mkj/fridgyeast
Brewing fridge control with an integrated web interface
https://github.com/mkj/fridgyeast
Last synced: about 1 year ago
JSON representation
Brewing fridge control with an integrated web interface
- Host: GitHub
- URL: https://github.com/mkj/fridgyeast
- Owner: mkj
- License: other
- Created: 2020-10-13T15:33:18.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-03-24T14:09:32.000Z (over 1 year ago)
- Last Synced: 2025-04-09T12:21:55.967Z (about 1 year ago)
- Language: Rust
- Size: 1.06 MB
- Stars: 8
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Brewing Fridge Controller
This is a beer brewing fridge control program with an integrated web interface.
### Web Interface
The web interface is responsive on a phone, using `mousedown`/`touchstart`.
It's very satisfying to hear the fridge starting *wom* the instant you press Save.
Authentication is hardcoded in the config file, based on everlasting browser
session cookies. Unauthenticated users will see a "Register" link to email the
site owner (set in the [config file](src/defconfig.toml)).
You can try a [static copy](https://matt.ucc.asn.au/ferment.html) of the interface.
I'm currently using Telegraf/InfluxDB/Grafana to graph temperatures, pulling from the `/status` json url.
### Hardware
I'm running it on a Raspberry Pi with ds18b20 1-wire sensors. The fridge
is turned on and off via a GPIO pin (and external AC switch).
Compile it by getting the necessary targets with rustup then `cargo build --release --target arm-unknown-linux-musleabihf`
### Older Version
The previous incarnation [wort-templog](https://github.com/mkj/wort-templog)
was written in Python with the web interface on a separate server. Colocating
the webserver on the control device reduces the number of moving parts.
It remains to be seen whether this Rust rewrite is more reliable than its predecessor.
Wort temperature control is an important matter!
### TODO
* Try better temperature control algorithms, take account of fridge air temperature for overshoot