BrewPi@ESP8266, no need of RPI and Arduino.

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
I can see that button on v2.6rc only, unfortunately.

Is it possible that mistake is OTA update and not over USB?
 
I've built and started using the Brewpiless setup on an ESP32 with iSpindel. I absolutely love this project. I have a RPI on hand, so I may try that out as well, but the idea of just using the ESP chip on its own really appealed and makes it super portable. I have a father in law who really likes brewing, but this kind of thing he's less comfortable with. By using this project I can put it together for him and it's a really small investment to the 8266 chip.

The only thing that bothered me (about both) was the rats nest of wires on the breadboard I was dealing with. I ended up making a little PCB to handle that part of it.

It's currently fermenting a fresh batch of Belgian Dubbel, so I haven't soldered this all together yet.

Such a great project, thanks for putting this together. Really love it!

here's my current batch
Screenshot 2020-06-03 at 15.26.54.png


Update:
I was informed that Thorak already made a PCB for the ESP8266's, I had a look and it looks wonderful. I didn't realise that, and I had created one of my own for personal use

Screenshot 2020-06-03 at 16.21.44.png
 
Last edited:
which is the most reliable BPL version if I want classic UI and use OLED?
 
What would be the process for using a Brewpi PCB with the brewpiless software? Would it be just changing the pins in the code?
I see there are a couple of PCB's specific to this project, would it be better to just grab one of those to make it easier?
I am in the same boat as @iduncant above where my father in law might like the brewpiless and after my brewpi build I have heaps of leftover parts. Plus having it post straight to brewfather is all I really need so I can assess the two together and see which one would work best for me.
@iduncant where are you posting you info to, that graph / interface looks great!
 
What would be the process for using a Brewpi PCB with the brewpiless software? Would it be just changing the pins in the code?
I see there are a couple of PCB's specific to this project, would it be better to just grab one of those to make it easier?
I am in the same boat as @iduncant above where my father in law might like the brewpiless and after my brewpi build I have heaps of leftover parts. Plus having it post straight to brewfather is all I really need so I can assess the two together and see which one would work best for me.
@iduncant where are you posting you info to, that graph / interface looks great!
https://github.com/vitotai/BrewPiLess/blob/master/bins/BrewPiLess.v4.0r1.thorrax.newui.4m2m.bin
 
I'm sorry but I have no idea what to do with your post... I guess you're saying that that file will map the flash to the correct pins?
It seems it's already in the Brewpiless bins.
I tried searching for it in the config.h file and found the #define Thorrak_PCB 2 and then below the list of the correct pins.
I'm not sure where to set 'Board Definition' to 2?
I can see thorrax listed in the paltform.ini section and the dboard listed as thorrak_PCB for the thorrax environment.
 
What would be the process for using a Brewpi PCB with the brewpiless software? Would it be just changing the pins in the code?
I see there are a couple of PCB's specific to this project, would it be better to just grab one of those to make it easier?
I am in the same boat as @iduncant above where my father in law might like the brewpiless and after my brewpi build I have heaps of leftover parts. Plus having it post straight to brewfather is all I really need so I can assess the two together and see which one would work best for me.
@iduncant where are you posting you info to, that graph / interface looks great!
Hi there @Taps , my experience is that there is a series of pins that are pre defined in the software. You can find them in the documentation or under the src folder open the config.h header and scroll down. You'll see there that the different pins are listed. There's a couple of different configurations based on your board target. Just make sure you're looking at the esp32 or 8266 depending on your board.

You can redefine these and then compile and flash your board. I tested it with my esp32 and it did work. However the PCB I made for the 8266 followed the default pins so I haven't tested changing with that board. I know there are some limitations on what pins can do what, but that is a hardware restriction so I would say just give it a try.

In terms of the interface, that's the interface that's provided with the software when you go to view your BPL on a web browser! I'm not currently posting the data points anywhere just saving logging it right on the esp. But I have been eyeing up writing a simple API with flask to put the data into a postgres database for review later.

I really love this system in that it can truly be run off the microcontroller alone. I finished up that dubbel I was brewing and finally had a taste. This is the first beer I'd made with full temperature control. It is the best I have ever made. I'm so happy with this!

Depending on where you live I'd be happy to give you one of my boards. I had to get 5 as a minimum, and I really only needed 3 for myself.
 
In terms of the interface, that's the interface that's provided with the software when you go to view your BPL on a web browser! I'm not currently posting the data points anywhere just saving logging it right on the esp. But I have been eyeing up writing a simple API with flask to put the data into a postgres database for review later.
Just a note to @iduncant's answer, this is the newui version of BPL. There is also a classic which is less "sexy"... (or is that removed in v 4? I haven't checked v4, yet...)

If you want to send the data somewhere, I can recommend Brewfather, which has integrations for both PBL and a lot of other "things". Brewfather is free, but I'm a very satisfied user, so I'm paying for it to support the development... (Brewfather)
 
ok so i was doing some reading on the github and from what I can tell I need to use the NodeMCU flasher to almost preprepare the board before going into platformIO and flashing the board? So just use the bin file that Bigdaddyale posted and then flash the brewpiless git?
Other than that im not sure how to actually configure anything in config.h?
 
ok so i was doing some reading on the github and from what I can tell I need to use the NodeMCU flasher to almost preprepare the board before going into platformIO and flashing the board? So just use the bin file that Bigdaddyale posted and then flash the brewpiless git?
Other than that im not sure how to actually configure anything in config.h?
You don't need to use the flasher. You can use Visual Studio Code with the PlatformIO addon to do the flashing.
 
Heres how I flashed my esp8266
download and install
https://github.com/nodemcu/nodemcu-flasherhttps://github.com/thorrak/brewflasher/releases/tag/v1.0.1https://github.com/vitotai/BrewPiLess/blob/master/bins/BrewPiLess.v4.0r1.thorrax.newui.4m2m.binRun brewflasher and connect to the esp8266. run the program that wipes the 8266 clean so you start with a fresh 8266. I had to disable my virus program (MSE) in order to run brewflasher
open up nodemcu-flasher and load in the bin file BrewPiLess.v4.0r1.thorrax.newui.4m2m.bin
connect and flash 8266
once you play around and get familiar with each program it's pretty painless
Good Luck
EDIT: brewflasher installed without disabling my antivirus program. Read the instructions on Github for nodemcu-flasher- to load the bin file saved on your computer you need to click on the gear looking button and make sure the small box is checked or it won't flash
 
Last edited:
I feel it's worth noting that if you flash a pre-compiled binary instead of building yourself, you cannot modify the pin assignment. But you mentioned thorak's board so you shouldn't have an issue.

PlatformIO let's you build from source and flash the board right inside visual studio code. You can modify the code and flash over again. You will need to use this to modify config.h and then flash it to your board. (Or some other way to build)

If you use nodemcu flasher, you'll provide a binary that is pre-compiled. So you won't be able to change the config file.

Depends on if the thorak board file works for you. Since it's simpler if you haven't done it before, I'd say go for flashing the binary before getting platform.io set up. Just my 2¢

Such great knowledge in this forum!
 
I feel it's worth noting that if you flash a pre-compiled binary instead of building yourself, you cannot modify the pin assignment. But you mentioned thorak's board so you shouldn't have an issue.

PlatformIO let's you build from source and flash the board right inside visual studio code. You can modify the code and flash over again. You will need to use this to modify config.h and then flash it to your board. (Or some other way to build)

If you use nodemcu flasher, you'll provide a binary that is pre-compiled. So you won't be able to change the config file.

Depends on if the thorak board file works for you. Since it's simpler if you haven't done it before, I'd say go for flashing the binary before getting platform.io set up. Just my 2¢

Such great knowledge in this forum!
I wish I had the ability to work with PlatformIO. I have it installed but the learning curve is a little to steep for me. that being said I just cleaned and flashed an 8266 and got BPL running in less than a half-hour-
 
Hey thanks so much for the last few replies. Sorry, its probably really painful dealing with someone who has no previous coding/electronics experience but your more detailed guidance really helped. I was trying to do my due diligence with finding my answers myself but couldn't get anywhere. Ill give it a crack and get back to you! thanks again
 
Hey thanks so much for the last few replies. Sorry, its probably really painful dealing with someone who has no previous coding/electronics experience but your more detailed guidance really helped. I was trying to do my due diligence with finding my answers myself but couldn't get anywhere. Ill give it a crack and get back to you! thanks again
Have you had any luck with it?

@Bigdaddyale I fully understand. PlatformIO was a hassle to understand and I work in tech, I use VSCode everyday for my work (mostly python though). It took me a good while to understand and get it running. And then when I switched from esp32 to 8266 it was like starting over. I'm glad I did though, seems helpful if you end up wanting to make changes to the software. There is something very satisfying to flashing your software to a microcontroller!
 
Haven't had a chance yet. I got it working with brewpi and just finished brewing so about to take it in its maiden voyage. Fingers crossed
Will hopefully get around to it once this beers finished!
 
Haven't had a chance yet. I got it working with brewpi and just finished brewing so about to take it in its maiden voyage. Fingers crossed
Will hopefully get around to it once this beers finished!
Thought I would check in. How is it going @Taps ?
 
I'm having an issue when trying to connect the LCD screen, relays, and wifi I get a continuous reboot loop until I unplug the LCD screen or turn off WIFI, and then everything works normally.

BPL also works normally if I have D0 which is pointed at a relay set up as inverted but then the fridge runs when it's inactive and turns off when it's supposed to be cooling so I set it non-inverted and then the whole thing just goes through another reboot loop until I either disconnect the LCD screen or turn off the WIFI.

I'm currently using a 2.0 amp 5v power supply, is this a power issue or a firmware issue?
 
So, uh ... why not REMOVE it? :p

Good point. Done!


What program did you use to design it? I want to try and put text over the "hot" and "cold" side of the outlet.

OpenSCAD - The source for it should be on Thingiverse, and OpenSCAD is free. If you end up adding the text, post it to thingiverse and I'll link it from my repo. ;)

Thanks, Would you happen to have a picture of it fully loaded and rockin and rolling?

I don't, unfortunately. We're currently out of town, and all of my builds are currently sitting back home in my apartment. :(
 
Just discovered this project, and I’m very excited to have a better way to control my fermentation than the STC-1000+!

My question today is less about the software than it is about the hardware implementation. Is there a recommendation for the fridge probe? Should it be buffered at all - say in a White Labs vial full of gel? I know there are setting minFridgeIdle and minFridgeCool to protect the compressor - but free dangling probes make me a little anxious - except for maybe the “room temp” which is just informational.

The beer probe will go into a thermowell, so it’s just the fridge probe that I wonder about...

Thanks,

Mylo
 
Nah, no need for that really. The fridge probe, when used with a beer probe, is used in the PID loop as part of the input. The logic decides, based on the way the system runs, how far to let it run. You could put it in a mass but then you'd, in essence, be adjusting a buffered system with another buffered system who's buffering has no bearing on the first. It would work, eventually, but there's no real need.
 
yes exactly, sensor in small thermowell is fine enough. I just naked ds18b20 but I put it in plastic laboratory container, it acts better when opening the fridge as it does not hit immediately with the warm air but I used both and both are fine. It is all about the beer sensor which suppose to be inside the fermenter, not glued to the wall.
 
One VERY important thing: Always use a fan in the fridge. Stagnant air is the enemy. I use one of these in my kegerators/fermentation chambers. They are on the loud side if the kegerator is in a living space, but fine in the garage. I do not turn them on/off with the heating or cooling, that's not important and actually, if you consider the effects of stagnation, it's important to have air moving all the time - not just when the fridge is running.
 
well I did not use fan at all and nothing bad happened, beer fluctuates by 0.2C max. But my freezer was small, one fermenter only.
 
"Nothing bad happened" is not the same thing as "it worked well." All you know is the system was able to regulate those two specific points in your fermenter and fridge - not that the entire system was well-regulated. When you add multiple probes, you begin to see the effects of stagnation and stratification.
 
yes there might be like 2c difference top and bottom of the fridge, I guess it was even less in mine, fermenter took 90% of space and it is a huge thermal mass, outside of the fridge is 20C and I set beer to be 16-18 usually so not a big difference either. I can say it "worked well" as it did the job without any issues. I have a fan now when I turned it into keezer but I do not see a lot of benefit from it, no difference when it is turned on or off. I do not have a tower, my taps are attachned to collar. The only things I am not happy with are shanks I used from china as they are too bore inside.

Fan might play a role when you have bigger chamber or different than mine, or a tower for your keezer.

But yeah why not, it is not a negative thing to add, and my 12V fan is quiet so it cant be heard from outside.
 
One VERY important thing: Always use a fan in the fridge. Stagnant air is the enemy. I use one of these in my kegerators/fermentation chambers. They are on the loud side if the kegerator is in a living space, but fine in the garage. I do not turn them on/off with the heating or cooling, that's not important and actually, if you consider the effects of stagnation, it's important to have air moving all the time - not just when the fridge is running.

I actually have a commercial, glass door fridge that I've completely hacked all the wiring. I have ON-OFF-AUTO switches on the evaporator fan, both sets of lights (top logo, and interior). I also have a ON-OFF override on the compressor. I use the AUTO setting on the interior lights to tie into a door switch to turn on when I open the door. I use the AUTO setting on the top logo light to indicate if I am heating or not. And the AUTO setting on the evaporator fan is there to circulate whenever heating or cooling is happening (although I usually leave it manually on during the ferment).

I was debating on whether or not to go to an ESP32 for the extra pins. It would be great to expose all those sensors and outputs to my home automation platform (Home Assistant) via MQTT. But, maybe there is beauty in simplicity of just a few things with hardwired "logic". I mean. It's nice to know when the heater is running / has run - but I assume I can get that via MQTT to a reporting platform like InfluxDB w/ Grafana to visualize (as I currently do with my iSpindel).

Plus - I'm not are of an ESP32 that has an external antenna, like this D1 Mini Pro has. I've been testing the WiFi out in my garage with it, and it's rock solid - which is more important than a few extra pins.



Mylo
 
Believe me, I appreciate the thought process that goes into "if I had a few more pins ..." One thing is nice about simpler though, it keeps working and making you beer while you try to get other things to work. :)
 
Back
Top