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

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.
  1. Is there a way to monitor activity when i'm not on my home network? (ex. google docs/tiltpi)
  2. Is there a way to safely change temp control settings when I am not on my homenetwork in fermentrack? I am a dunce when it comes to networking so I fear opening my network up to outside connections.
Cheers!
Josh

I run a OpenVPN tunnel with certificates, It is perfectly safe.
 
@Thorrak Thanks very much for your version, I currently have setup the hardware and software here, and just awaiting some parts before getting the first brew on.

Is there any plans to transition fermentrack into a docker build? I have just moved over all of my home environment to a docker setup and I think this project would also be great (I've see a few people requesting it in other forums also) as the hardware is more reliable than a rpi.
 
I should also mention, on docker hub there is a version of fermentrack, by scooch, although I was unable to get it working as it threw an error:

docker: Error response from daemon: cannot mount volume over existing file, file exists /var/lib/docker/overlay2/xx/merged/etc/timezone. See 'docker run --help'.
 
@Thorrak Thanks very much for your version, I currently have setup the hardware and software here, and just awaiting some parts before getting the first brew on.

Is there any plans to transition fermentrack into a docker build? I have just moved over all of my home environment to a docker setup and I think this project would also be great (I've see a few people requesting it in other forums also) as the hardware is more reliable than a rpi.

Not at this time, though honestly if anyone gets one set up, I don’t expect it to require too much maintainance to keep running - and to the extent that I can help keep it that way, I’m happy to try.

Docker isn’t something I have too much experience with (and the one time I tried getting it set up on an RPi a few years back did not end well).
 
I've finally decided to try my hand at the PID game with my new brewery build, and running through the tutorials I am hitting a wall trying to install BrewPi on my RPi 3B V1.2. When I try to run the brew-tools install.sh I keep getting the following errors:

E: Package 'libapache2-mod-php5' has no installation candidate

E: Package 'php5-cli' has no installation candidate

E: Package 'php5-common' has no installation candidate

E: Package 'php5-cgi' has no installation candidate

E: Package 'php5' has no installation candidate

and with those the setup is NOT complete.

I'm sure there is some step that I've missed but running through the tutorials a few times has netted me the same problem and a search through this thread pulls no results with those errors. I've not dealt with coding since bumbling my way through my required FORTRAN classes so any help at that level or lower is greatly appreciated. I'm looking forward to getting this build up and running!

Cheers
 
I've finally decided to try my hand at the PID game with my new brewery build, and running through the tutorials I am hitting a wall trying to install BrewPi on my RPi 3B V1.2. When I try to run the brew-tools install.sh I keep getting the following errors:

E: Package 'libapache2-mod-php5' has no installation candidate

E: Package 'php5-cli' has no installation candidate

E: Package 'php5-common' has no installation candidate

E: Package 'php5-cgi' has no installation candidate

E: Package 'php5' has no installation candidate

and with those the setup is NOT complete.

I'm sure there is some step that I've missed but running through the tutorials a few times has netted me the same problem and a search through this thread pulls no results with those errors. I've not dealt with coding since bumbling my way through my required FORTRAN classes so any help at that level or lower is greatly appreciated. I'm looking forward to getting this build up and running!

Cheers
Are you running Raspbian Stretch?
 
Yup I downloaded Stretch, do I need to go find Jessie and start from the beginning?
 
Thx for the heads up, I’ll dig in to that and come back with my hands in the air if I get hung up on the setup.
 
Yup I downloaded Stretch, do I need to go find Jessie and start from the beginning?

BrewPi no longer works with Stretch, unfortunately, as there is no longer packaged PHP5 support. To run BrewPi proper, you would need to install Jessie.

Fermentrack works with Stretch, and provides all the same functionality. I like it better. I also am biased. ;)
 
Well then my path is clear, thanks for the new direction and thanks for all the hard work putting these products together and providing the constant support on the forums.
 
I just pushed out a new version of the firmware which contains a few changes which I'm hoping will make things easier for new users. I've restructured the "EEPROM" code such that it should now consistently allow devices to be added to new controllers without the need to constantly mash the "reset eeprom" button. This also places the LCD reset code somewhere that it will actually get called which should allow scrambled LCDs to properly reset within ~3 minutes of scrambling. Thanks goes to @alexlark for that one!

One thing of note - If you're updating to this firmware on an existing controller, there is a chance that your mDNS settings and existing devices will be erased & the controller will need to be re-set up. As a result, I recommend waiting to upgrade until you're between brews.

As always, let me know if you encounter any bugs/issues!
 
@Thorrak Some weird bug with the new firmware running serial. I also did a Flash_Erase and reset EEPROM. Back on my firmware all is good :-/
 

Attachments

  • Capture.PNG
    Capture.PNG
    3 KB · Views: 92
Because this thread has evolved, I am having a hard time figuring out the starting point. I think the Fermentrack is something I will want so I want to start pricing/purchasing parts.

I am finding it difficult to see the links between BrewPi, chipsets, and Fermentrack. Is there a HOWTO that starts with what to purchase, how to wire it, and what to install?
 
Because this thread has evolved, I am having a hard time figuring out the starting point. I think the Fermentrack is something I will want so I want to start pricing/purchasing parts.

I am finding it difficult to see the links between BrewPi, chipsets, and Fermentrack. Is there a HOWTO that starts with what to purchase, how to wire it, and what to install?

I’m working on one that it a comprehensive start to finish, but given I’m still missing some hardware, that’s still a week or two out. In the mean time, there are five (six?) main components that you need to get:

2 channel relay board
5v 2a power module
LCD2004 LCD Module /w i2c backpack
Lolin D1 Mini (formerly WeMos D1 Mini)
A PCB for the D1 mini
DS18b20 Temperature Sensors


I've linked primarily to Amazon to provide examples, but I can't guarantee that any/all of the above sellers will provide parts that work. Additionally, almost all of the above can be purchased SIGNIFICANTLY cheaper on either AliExpress or eBay. Shop around a bit - you'll be glad you did. So you know, I would ballpark ~$20 for the above parts, excluding wire/parts to hook it all together from AliExpress.

In addition to the above, you'll need the parts on the Bill of Materials for your D1 Mini PCB. The BoM is listed next to each PCB in that link above. Only thing to note - You will only need one D1 Mini and one LCD2004 module per build - You don't need a separate one if listed in the PCB BoM.
 
Last edited by a moderator:
Sorry, thought it was a vendor switch not a rename.

The real problem is that while the Wemos/LoLin manufactured boards have not given me any issues, I think a number of people have had issues with clones. Like so many things, the difficult part is telling the OEM ones from the knock-offs.

Of course, in saying that, I have to add the note that while it seems like most people with issues have clone boards, all of the clone boards I have personally used have worked just fine.
 
Sorry, thought it was a vendor switch not a rename.

I figured that was what you were assuming, just wanted you to know it was the same hardware, different name.

The real problem is that while the Wemos/LoLin manufactured boards have not given me any issues, I think a number of people have had issues with clones. Like so many things, the difficult part is telling the OEM ones from the knock-offs.

Of course, in saying that, I have to add the note that while it seems like most people with issues have clone boards, all of the clone boards I have personally used have worked just fine.

The only way to know for sure is probably to order them from the Wemos/Lolin store on Aliexpress.

I haven't had any issues with the clones I ordered from Alice something or other...

The one issue I did have while doing the assembly of your items was that the antenna on the D1 Mini Pros didn't seem to be as reliable as my D1 Minis
 
The one issue I did have while doing the assembly of your items was that the antenna on the D1 Mini Pros didn't seem to be as reliable as my D1 Minis

I saw a comparison someone did between signal strength coming off the D1 Mini (with the PCB antenna) and the D1 Mini Pro (with the ceramic antenna) and as I recall, the PCB antenna substantially outperformed the ceramic one in signal strength.
 
I’m working on one that it a comprehensive start to finish, but given I’m still missing some hardware, that’s still a week or two out. In the mean time, there are five (six?) main components that you need to get:

2 channel relay board
5v 2a power module
LCD2004 LCD Module /w i2c backpack
Lolin D1 Mini (formerly WeMos D1 Mini)
A PCB for the D1 mini
DS18b20 Temperature Sensors


I've linked primarily to Amazon to provide examples, but I can't guarantee that any/all of the above sellers will provide parts that work. Additionally, almost all of the above can be purchased SIGNIFICANTLY cheaper on either AliExpress or eBay. Shop around a bit - you'll be glad you did. So you know, I would ballpark ~$20 for the above parts, excluding wire/parts to hook it all together from AliExpress.

In addition to the above, you'll need the parts on the Bill of Materials for your D1 Mini PCB. The BoM is listed next to each PCB in that link above. Only thing to note - You will only need one D1 Mini and one LCD2004 module per build - You don't need a separate one if listed in the PCB BoM.

That helps a lot. I am planning a build soon as well. And plan on running Fermentrack on my home server.

I feel confident in the software setup. The hangup for me is in the wiring. I feel like I've seen several wiring diagrams out there, is there a recommended wiring guide out there? Is the wiring the sameas if I wsas doing a Brewpiless build?
 
Last edited by a moderator:
Yep! Things at work have been pretty crazy for the last few weeks and my first 'free' day since Christmas was this past Saturday. That said, we're now through year end & holiday season, so I should be able to go back to things that don't involve Excel shortly. First up is the great gravity showdown. ;)

I'm looking to kick it off (hopefully!) later tonight for the non-Tilt/non-iSpindel hydrometers. Tilt & iSpindel will be after I get iSpindel support into Fermentrack. (It will double as a test for the Fermentrack sensor support)




(almost) All of these things are currently planned - but are probably 3-6 months out.
Hey there! I just started using Fermentrack and I really like it! I could make use right away of my brand new Arduino Uno and the temperature control looks really good. I love that my Tilt was built in and easy to integrate.

Theree minor questions / observations:
- On the Arduino, the OneWire temperature devices need to go on pin A2. I had to dig to find that out, is there maybe a place to prompt people that A2 is the pin on the Arduino for OneWire?
-The Tilt SG shows up on the dashboard trend with 2 decimal places (the axis just shows 2 decimals). What would be involved in getting it to show up with three decimals?
-My beer log started with a couple of out-of-whack beer temperatures for unknown reasons a zero and a 138 or thereabouts). This zooms the temperature trend out quite a lot. I haven't managed to find where the brew data is being stored so I can edit those points and fix the zoom issue. Is it on a sqlite database somewhere!
 
Hey there! I just started using Fermentrack and I really like it! I could make use right away of my brand new Arduino Uno and the temperature control looks really good. I love that my Tilt was built in and easy to integrate.

Theree minor questions / observations:
- On the Arduino, the OneWire temperature devices need to go on pin A2. I had to dig to find that out, is there maybe a place to prompt people that A2 is the pin on the Arduino for OneWire?

That's awesome! I'm glad you like it!

Unfortunately, with the Arduino there are a number of different versions of the firmware floating around out there, many of which use different pins. I can add some notes to the Fermentrack documentation pointing people to sample pinouts, but there isn't a way to detect what pin configuration a specific build is using. :(

-The Tilt SG shows up on the dashboard trend with 2 decimal places (the axis just shows 2 decimals). What would be involved in getting it to show up with three decimals?

This will be fixed in an upcoming release of Fermentrack:

Screen Shot 2018-07-12 at 11.13.56 PM.png

I'm guessing it's a few weeks out at this point, but I may release it sooner if I get all the features complete & tested.

-My beer log started with a couple of out-of-whack beer temperatures for unknown reasons a zero and a 138 or thereabouts). This zooms the temperature trend out quite a lot. I haven't managed to find where the brew data is being stored so I can edit those points and fix the zoom issue. Is it on a sqlite database somewhere!

Nope. Originally I wanted it to be in a sqlite database, but found that after a few weeks of data had been stored, retrieving the data points would cause the graph to take several minutes to appear. Not good.

Instead, it's stored across three files - two CSV and an annotations file that is almost JSON. (It's JSON without the final, closing brackets)

In a default installation, the data files are stored here:
/home/fermentrack/fermentrack/data

As a side note, if anyone out there is an expert using pandas and would like to write some kind of "cleanup" script that could be used to delete data points that are outliers, I can certainly see where that would be helpful for situations like this. I've not yet managed to wrap my head around how to successfully use pandas, so it's not something I see myself creating any time soon, sadly.

If you have any other questions, don't hesitate to ask!
 
That's awesome! I'm glad you like it!
As a side note, if anyone out there is an expert using pandas and would like to write some kind of "cleanup" script that could be used to delete data points that are outliers, I can certainly see where that would be helpful for situations like this. I've not yet managed to wrap my head around how to successfully use pandas, so it's not something I see myself creating any time soon, sadly.

I'm experienced with pandas, but not web/app development type of stuff so much.

You're thinking like some kind of "log editor" feature though? I imagine it'd come down to just removing data within a specified time interval right?
 
I'm experienced with pandas, but not web/app development type of stuff so much.

You're thinking like some kind of "log editor" feature though? I imagine it'd come down to just removing data within a specified time interval right?

Yep, or detecting “outlier” points automatically and stripping them out without a user having to define a specific time range.

Either would work - and if a basic python script can be written to process one of the log CSVs, I can write a front end for it. Just need to make sure the format being saved out is the format being fed in - just with fewer points ;)
 
Yep, or detecting “outlier” points automatically and stripping them out without a user having to define a specific time range.

Either would work - and if a basic python script can be written to process one of the log CSVs, I can write a front end for it. Just need to make sure the format being saved out is the format being fed in - just with fewer points ;)


I belive makes more sense filtering that points before loging them. Just set up a logical band and ignore readings outside it.
 
Quick hardware update: I just uploaded a new version of the case design that I've been 3D printing for use with the ESP8266 BrewPi build. This version of the case is designed to be used with a standard US outlet, and has additional holes added to help secure the outlet to the case. It also has a few other small adjustments to help (slightly) improve print time.

Nothing major, but might be of interest to anyone who is looking to do a new ESP8266-based BrewPi build!

On a side note, I'm still looking for a more "off the shelf" solution for enclosures that either doesn't require 3D printing, or doesn't require as much of it and is easy to assemble. If anyone has any recommendations that has worked for them, please post them!
 
Finally got an ispindel assembled, now having issues getting it to talk to fermentrack. Fermentrack will setup the ispindel, but never shows any data. (Note, this is the first attempt to setup a gravity device. So I'm still learning). Also fermentrack won't let me delete ispindel devices.
 
Finally got an ispindel assembled, now having issues getting it to talk to fermentrack. Fermentrack will setup the ispindel, but never shows any data. (Note, this is the first attempt to setup a gravity device. So I'm still learning).

I'm guessing that for whatever reason the ispindel isn't reporting data back to Fermentrack (or isn't including everything that Fermentrack expects).

Double check that Fermentrack & your iSpindel are on the same WiFi network, and make sure the iSpindel configuration matches what was displayed when you set up the iSpindel in Fermentrack. You need to enter all of the fields in order for it to work (Token, Address, Port, and URL). Here's what a test sensor of mine looks like - yours will be different, of course:

Screenshot 2018-07-28 07.54.36.png


Also fermentrack won't let me delete ispindel devices.

That was a bug - thanks for saying something. It should be fixed now if you upgrade to this morning's update. Sorry about that.

It's always good when you look at the broken lines of code and see a comment that reads "# TODO - Test this code to make sure it works" :no:
 
I'm guessing that for whatever reason the ispindel isn't reporting data back to Fermentrack (or isn't including everything that Fermentrack expects).

Double check that Fermentrack & your iSpindel are on the same WiFi network, and make sure the iSpindel configuration matches what was displayed when you set up the iSpindel in Fermentrack. You need to enter all of the fields in order for it to work (Token, Address, Port, and URL). Here's what a test sensor of mine looks like - yours will be different, of course:

View attachment 581122




That was a bug - thanks for saying something. It should be fixed now if you upgrade to this morning's update. Sorry about that.

It's always good when you look at the broken lines of code and see a comment that reads "# TODO - Test this code to make sure it works" :no:

Thanks for the quick reply. Another issue my ispindel temp in fermentrack is 177f, on the ispindel itself it's 26c. Think there's a conversion error.
 
So I went ahead and tried to calibrate the ispindels with the temp reading in the high 100s. Afterward I get some wild gravity calculations for the angles the ispindel is at. Doesn't look like the temp really being used in the calculation either.
 
So I went ahead and tried to calibrate the ispindels with the temp reading in the high 100s. Afterward I get some wild gravity calculations for the angles the ispindel is at. Doesn't look like the temp really being used in the calculation either.
The temp doesn’t factor into the calculation at all. The chip on the iSpindel outputs an angle directly - that’s all that matters.
 
Back
Top