• Please visit and share your knowledge at our sister communities:
  • If you have not, please join our official Homebrewing Facebook Group!

    Homebrewing Facebook Group

Native ESP8266 BrewPi Firmware - WiFi BrewPi, no Arduino needed!

Homebrew Talk

Help Support Homebrew Talk:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
I am running the latest version of Fermentrack.
SI i tried to use the latest version, and my unit would never update. As I mentioned I had to load an earlier version that uses USB to connect to the BeerPi, it uses WiFi to transfer data to and from the Fermentrack interface. You might try that and see if it corrects your issue.
 
I just can't seem to find a hat/shield for the D1 mini for my relays that seems right. Not sure why... but these little purple boards ya'll are using, where is a link to them?

I want to recover my Pi4 for another use and am interested in dabbling with brewpiless...
 
I just can't seem to find a hat/shield for the D1 mini for my relays that seems right. Not sure why... but these little purple boards ya'll are using, where is a link to them?

I want to recover my Pi4 for another use and am interested in dabbling with brewpiless...
I am using the board from the Fermentrack build and just uploaded the firmware directly to the D1. The board from Fermentrack have to be built. I forget who I used to build them but pretty sure it was on the Fermentrack build page
 
Yup those appear to be the same ones.

I Found the link after the fermtrack mention. Much appreciated brutha.
 
I just pushed v15-beta out to BrewFlasher. This version incorporates a number of bugfixes and "under-the-hood" tweaks in preparation for additional features to come. As a reminder, features included with the v14 beta include:
  • Support for the ESP32 and ESP32-S2 chipsets
  • Support for Tilt Hydrometer and Inkbird temperature sensors (Tilt Pro recommended)
  • Support for TPLink Kasa WiFi Switches
  • "EEPROM Reset" Confirmation Requirement
  • TFT-Display Support
Bugfixes in v15 include:
  • Resolves issues preventing calibration from being properly captured/appliedm
  • Allows for calibration to be applied to Tilt and Inkbird temperature sensors
  • Fixes a bug that may prevent sensor setup from persisting through reboots

Migration to v15 is recommended for all new builds, and for any v14-based builds that are having issues.
 
Update regarding the ESP8266

Over the past several months, I've been working on a project to bring a REST interface to BrewPi controllers. Part of this work led to the discovery of a number of bugs in the v14 firmware release, which is concerning considering that firmware has been out for almost a year now. To ensure there were no bugs in the v15-beta firmware I created a testing matrix -- but this has revealed a separate, related issue: At the moment I’m maintaining way too many versions of this project.

v15-beta testing.jpg

As you may know, the Espressif controller landscape has changed considerably over the past seven years. Building on the ESP8266's popularity, Espressif has released newer chips such as the ESP32, ESP32-S2, ESP32-S3, and ESP32-C3, which offer significant new features like multiple cores and Bluetooth support. While the ESP8266 was once a popular and cost-effective choice, Espressif's level of support has dropped resulting in major, breaking issues persisting in the official framework without attention for months/years. Although I've been able to work around these bugs in many cases, time spent doing this is time I'm not able to use working on new features.

As a result of this changing landscape, I've decided to focus future development efforts on the ESP32 and ESP32-S2 platforms following the full release of v15. This means that I will no longer be testing against ESP8266-based chips and will not be providing primary troubleshooting and support for issues related to these chips. However, I will continue to release firmware - including some of the new features planned for v16 - for these chips as long as they continue to compile without significant errors.

For brand new users, my recommendation is to either use the ESP32 (preferably with a TFT!) or an ESP32-S2. The LoLin S2 Mini is a pin compatible replacement for the D1 Mini, meaning that both new and existing builds using my PCB designs should be able to directly replace the controller with a LoLin S2 Mini without other hardware changes.

If you have any questions or concerns, please do not hesitate to either post here or reach out directly. I'll post another reminder about this when v15 is released.
 
Hey Thorrak,
I reflashed my ESP32-S2 board with the 0.15 beta wifi firmware and that fixed the issue with entering an offset for the probe, but now as soon as the controller boots up, the cooling relay kicks on. The display still shows control as "Off". I can start a profile, but the cooling stays on even when it trys to heat. The controller worked fine with V 0.14 other than not being able to set an offset for the temp probe. It appears to be trying to fire both relays, as both indicator lights come on. Any ideas?
 
Hey Thorrak,
I reflashed my ESP32-S2 board with the 0.15 beta wifi firmware and that fixed the issue with entering an offset for the probe, but now as soon as the controller boots up, the cooling relay kicks on. The display still shows control as "Off". I can start a profile, but the cooling stays on even when it trys to heat. The controller worked fine with V 0.14 other than not being able to set an offset for the temp probe. It appears to be trying to fire both relays, as both indicator lights come on. Any ideas?
Yep. Sadly. The "invert" setting is wrong (which is due to a bug in Fermentrack). I know exactly how to fix this on the firmware-side, but it's going to be tomorrow before I can get another beta out. Sorry about that.
 
Thanks Thorrak, just glad it wasn't something I did
I just uploaded Beta 2 which should have the necessary fix. That said, both the coding and the release were done from my phone, so this is 100% untested. Give it a shot though, and let me know if it works for you!

I mean, it compiled (eventually)
 
Last edited:
I just released Beta 3, which adds an HTTP interface to the controller:

Screen Shot 2023-03-01 at 3.37.27 PM.png



From this interface, you can:
  • See the current status (including the virtual LCD)
  • Configure/assign pins, Tilts, Inkbird sensors, and OneWire temp sensors
  • Change the temperature control mode & set point
In other words: This provides an emergency fallback in case your local install of BrewPi Remix or Fermentrack is on the fritz on brew day.

For obvious reasons, this has only been added to WiFi controllers. Just like the "telnet" interface, anyone that can connect to the interface can change your settings, so you will want this behind a firewall (and not accessible to the open internet). This has been added to the ESP32-S2, ESP8266, and ESP32 WiFi binaries, but will not work with the "no spiffs init" versions.
 
I just uploaded Beta 2 which should have the necessary fix. That said, both the coding and the release were done from my phone, so this is 100% untested. Give it a shot though, and let me know if it works for you!

I mean, it compiled (eventually)
I used to dream about becoming a better programmer and writing ALL the programs that would make the world a better place.

And then I saw Thorrak maintain his excellent software on his phone. Now I'm happy being a minion who just consumes such things!

Thank you Thorrak and all the other creators who are fighting the good fight in their spare time and giving it away to us knuckleheads!
 
I just pushed out Beta 4, which I think is the release candidate for v15. All the features/bugfixes I wanted for v15 are now in, and everything appears to be working. That said, I'm going to leave things alone until this weekend -- if anyone wants to test this release

Main differences between Beta 3 and Beta 4 are:
  • "Low Delay" mode is now a setting rather than a specific firmware type
  • Fixed several issues with the TFT LCD

I used to dream about becoming a better programmer and writing ALL the programs that would make the world a better place.

And then I saw Thorrak maintain his excellent software on his phone. Now I'm happy being a minion who just consumes such things!

Thank you Thorrak and all the other creators who are fighting the good fight in their spare time and giving it away to us knuckleheads!

Thank you for your interest in the project! Hopefully it helps you brew better beer!
 
Slightly bad news, though I have a feeling there's an audience of one for this at the moment: Bluetooth support needs some work. There's a longstanding bug in the ESP32's bluetooth library that causes the bluetooth radio to periodically just die. It's a serious problem for something like BrewPi, as it would cause your temperature control to suddenly stop working for no reason. I've got a number of ideas for how to fix this, but - as I work through those - I recommend either being careful if you use the Bluetooth support, or waiting for the next beta release.
 
Slightly bad news, though I have a feeling there's an audience of one for this at the moment: Bluetooth support needs some work. There's a longstanding bug in the ESP32's bluetooth library that causes the bluetooth radio to periodically just die. It's a serious problem for something like BrewPi, as it would cause your temperature control to suddenly stop working for no reason. I've got a number of ideas for how to fix this, but - as I work through those - I recommend either being careful if you use the Bluetooth support, or waiting for the next beta release.
Now I'm a little confused :rolleyes:, I thought the BrewPi/Fermentrack were just using wifi for normal control. Is this just an issue with the original ESP32, or also a problem with the S2 Mini?
 
Now I'm a little confused :rolleyes:, I thought the BrewPi/Fermentrack were just using wifi for normal control. Is this just an issue with the original ESP32, or also a problem with the S2 Mini?
tl;dr: you're fine.

Brewpi and Fermentrack use WiFi to communicate. BrewPi-ESP32 can (optionally) use Tilt Hydrometers and Inkbird Bluetooth temperature sensors if you don't want to use hard-wired OneWire temp sensors. That's what the issue is with -- if you don't use Bluetooth sensors, you're fine. ;)
 
On the one hand, I think I may have found a solution — at least for now. On the other, unfortunately, it may mean that support for @inkbird sensors won’t work. :(

Unfortunately, it appears that Inkbird sensors require active scanning (which is what causes the bug to rear its head on these chips). Not Inkbird’s fault - entirely Espressif’s.

Tilts do work, so at least that’s something!
 

Latest posts

Back
Top