Beer fermentation controller
go
Find a file
2025-06-16 07:28:42 +02:00
.git-crypt Add 1 git-crypt collaborator 2024-06-18 08:45:05 +02:00
.vscode Upgrade to go 1.20 and add vendor catalog 2023-04-22 10:37:23 +02:00
build/debian Packaging 2022-07-24 10:01:28 +02:00
cmd enable logging of door events, but leave sensor disabled 2025-06-16 07:26:10 +02:00
deployments/fermentor remove cached fermentord deployment 2025-06-16 07:28:42 +02:00
internal Fix ambient and setpoint switched on LCD 2024-06-17 22:12:08 +02:00
pkg Replace ioutil with os 2024-06-15 21:37:00 +02:00
vendor update dependencies 2025-02-13 17:13:28 +01:00
.drone.yml Upgrade to go 1.20 and add vendor catalog 2023-04-22 10:37:23 +02:00
.editorconfig update README 2024-06-18 08:56:32 +02:00
.gitattributes Add git-crypt support 2024-06-18 08:47:58 +02:00
.gitignore add last known good configuration 2025-02-13 17:52:13 +01:00
go.mod update dependencies 2025-02-13 17:13:28 +01:00
go.sum update dependencies 2025-02-13 17:13:28 +01:00
Makefile disable door sensor as it is broken 2025-06-15 18:15:08 +02:00
README.md disable door sensor as it is broken 2025-06-15 18:15:08 +02:00
states.md Work since initial 2021-08-30 22:46:38 +02:00
wiring.md Add wiring.md 2022-03-13 18:30:35 +01:00

fermentord

Control the temperature of your fermentation process.

Integrations

  • NATS
  • Prometheus
  • Sentry

Metrics

Prometheus metrics

  • Ambient temperature
  • Chamber temperature
  • Wort temperature
  • Wort gravity
  • Heater state
  • Cooler state

Build

The firmware is built for gokrazy. Identify the device for your SD-Card, then run the command below to overwrite it. Ensure that no partitions are mounted on the card prior to running the command.

gok --parent_dir ./deployments --instance fermentor overwrite --full <device>

TODO

  • hardware: Fix the LCD display contrast by adding a 3v3/5v logic level converter
  • firmware: Add a way to control the runtime configuration
    • use nats to control the runtime parameters
  • ux: Add a fermentorctl CLI to:
    • Enable/disable cooler/heater
    • Set setpoint temperature
  • firmware: Integrate with Home Assistant as a HVAC:
    • max_temp: set by config
    • min_temp: set by config
    • modes: auto, cool, heat, fan_only
    • temperature_unit: C
    • temp_step: 0.1
  • hardware: Debounce the door as it frequently registers open events
  • firmware: Debounce the door as it frequently registers open events
  • firmware: Fix the BTLE connection to the Tilt