When fermenting beverages such as beer and wine, the majority of the fermentation process is out of the hands of the brewer, and in the hands of the yeast doing the actual fermentation. Unfortunately for us, yeast are sensitive, and even slight changes in their environment can dramatically alter the product they produce. Thankfully one of the key environmental determinants on the esters they express is temperature - and temperature is something we can take control of.
In the past, brewers would control fermentation temperature using "dumb" temperature controllers like the STC-1000 where the controller acted as a basic thermostat, controlling the temperature of the chamber/refrigerator the beer was being fermented in - but not the beer itself. This presented problems, as fermentation is exothermic, and the heat generated and retained in the beer during fermentation itself could alter the outcome.
This was resolved with the release of projects like the open source BrewPi temperature controller project which apply a PID algorithm to control the temperature of the beer/wine being fermented rather than simply keeping the fermentation chamber at a specific temperature. The legacy BrewPi project had a key limitation, however, in that it required the use of a serial-linked Arduino to act as the controller - limiting the number of chambers that could be controlled and requiring that they be physically close to the Raspberry Pi running the control software.
This project reimplements the legacy BrewPi firmware using an ESP8266. In doing so, it allows for the use of the cheaper ESP8266 microcontroller and adds the ability to use WiFi rather than Serial. It retains the majority of the BrewPi functionality, losing only the integrated rotary encoder due to a lack of pins.
Licenses & Other Consideration: