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

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

Help Support Homebrew Talk:

Bago-0

Supporting Member
HBT Supporter
Joined
Jul 16, 2020
Messages
130
Reaction score
56
Location
Clearwater
Same thing happened to me when I tried the update. It ended up being quicker to just started over with a fresh install of Pi using the newest installer. It lets you configure the wifi up front so it was easy. Then I installed the latest fermentrack.
 
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
I do not know what a docker is, so I guess I have the non docker version? I did not install docker on my Pi.

Yeah - you almost certainly have the non-docker version then. As @chucknorris101 suggested, the first recommendation is to restart your Pi. Following that - depending on how old the installation is - you might want to try running the Django 3.0 upgrade steps listed here.

Issues like this are, unfortunately, why I decided to switch to Docker-only support. :( My recommendation is - either once you recover your installation, or if you decide to install anew instead - to switch to a Docker-based install once feasible.

how would one migrate from the non-docker to the docker version? will the new auto script move all my settings/etc to the new format?

also for the webflasher, i assume i cant flash them over wifi/need to connect via usb yet?

It's pretty easy! As SD cards are cheap, my recommendation is to do a fresh Raspberry Pi OS install to a new SD card, preserving your old setup until you are 100% migrated. Aside from that, all you have to do is backup the old installation and restore to the new one.

If you prefer a video of the process, you can see one here:



Settings for things like gravity sensors, BrewPi controllers, etc. will all transfer automatically. Certain site-wide settings maintained via the Django admin and Constance (such as the brewery name and graph line colors) will not transfer and will have to be re-set manually.

Second, has anyone mocked up a 3D printed case based around that PCB? I have a big ol' junction box I was going to try and build the setup in, but if there was an existing purpose-built case, that would be lovely. No one wants to see what happens when I get the rotary tool out to try and cut nice squares for the power sockets.

I might be mistaken, but I'm pretty sure all of my PCB designs fit in the same 3D printable case. That PCB design doesn't require/allow the use of a "sensor" breakout board, but the hole for the RJ-45 jack is more than large enough to support routing the cables for your sensors through directly instead.
 

chucknorris101

Well-Known Member
Joined
Jul 17, 2014
Messages
91
Reaction score
16
Thanks - if i wanna be lazy and just delete it from my existing pi and reinstall - is all i need to do delete the folder? i dont see it in my list of installed pkg but may have used the wrong command

edit: it installed after killing off redis server, but now it wont load the gui well and gives a 413 error when trying to load either backup i made. im going to putz with it a bit more before calling it and starting fresh

edit edit: wiped it clean and backup went perfectly
 
Last edited:
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
Thanks - if i wanna be lazy and just delete it from my existing pi and reinstall - is all i need to do delete the folder? i dont see it in my list of installed pkg but may have used the wrong command

edit: it installed after killing off redis server, but now it wont load the gui well and gives a 413 error when trying to load either backup i made. im going to putz with it a bit more before calling it and starting fresh

Which error is 413? "Entity too large"?
 

marshodbrew

marshodbrew
Joined
Sep 11, 2019
Messages
23
Reaction score
1
Four years in the making, it's time to finally release the (beta version of the) latest BrewPi-ESP8266 firmware. This release contains a number of enhancements vs the previous "v11" firmware, including:
  • File system initialization enhancements
  • Substantial refactoring and upgrades (e.g. JSON handling)
  • Unified handling of Serial and WiFi output
  • Add ability to add human-readable names to probes (Thanks @speshak)
  • Add support for logging to Prometheus (Thanks @speshak)
  • Added new “low delay” mode (preliminary glycol support)
  • Swap SPIFFS for LittleFS for ESP8266 Builds
  • Fix message displayed with temperature control is set to “OFF” (rather than IDLE)
  • Added WiFi information command to get signal strength
  • Add mandatory confirmation to firmware to prevent accidental EEPROM resets (“network scanner” bug)
...most excitingly, however, this firmware adds support for ESP32 modules. In comparison to the ESP8266, the ESP32 brings additional pins and other new hardware which enables a number of features beyond the capabilities of the ESP8266 including:
  • Adds support for TFT LCD Displays
  • Adds support for "extended settings" not previously supported in BrewPi
  • Adds Bluetooth scanning support
  • Adds support for using Tilt Hydrometers as a temperature sensor
  • Adds support for using @inkbird wireless temperature sensors (TH2 and TH2-Plus)
  • Adds support for using TPLink Kasa WiFi switches
The above enhancements mean that - for those who are willing to accept the risk of bluetooth/network failures - a fully solder-free BrewPi can be built using TPLink Kasa WiFi switches to control temperature alongside a Tilt or Inkbird bluetooth sensor for beer/fridge temperature monitoring.

As with all of my firmware, The v14 beta firmware is available via BrewFlasher and BrewFlasher Web Edition. This version of the firmware can be directly accessed through the links below:

One word of caution -- Although I've done my best to test this firmware (including fermenting/cold crashing a beer using a Tilt and Kasa Switch) there may be bugs -- potentially severe ones. Use caution when testing, and let me know if you encounter any issues or anything that otherwise seems off.

Good luck, and happy brewing!
@Thorrak

Does the ESP8266 have the ability to use the Kasa wifi switches?

Does the ESP32 have the ability to use a wired temperature sensor?
Concerns for me with using Tilt as the primary temperature sensor is having the battery go out, resolution of temperature to 1F instead of 0.1F (not sure if this is accurate or not but my one-wire probes read out to 0.1), and of course connectivity problems.
 
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
@Thorrak

Does the ESP8266 have the ability to use the Kasa wifi switches?

Currently, no. It's a possibility, but not something I have tested.

Does the ESP32 have the ability to use a wired temperature sensor?
Concerns for me with using Tilt as the primary temperature sensor is having the battery go out, resolution of temperature to 1F instead of 0.1F (not sure if this is accurate or not but my one-wire probes read out to 0.1), and of course connectivity problems.

Yes - the ESP32 supports all of the same hardware as the ESP8266 (though I haven't compiled a version that uses the LCD2004 screens). I'm actually working on a new PCB for the ESP32 right now (literally - I have Eagle open on my other monitor!), but if you're looking for a board to play with sooner that supports wired sensors, shoot me a PM and I might be able to hook you up.
 
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
One thing I will mention about using the Tilt -- my strong recommendation for anyone thinking of using it as a temperature sensor is to get a Tilt Pro. Those things are amazing, provide temperature readings in 0.1deg increments, and also have stronger signal strength.
 

chucknorris101

Well-Known Member
Joined
Jul 17, 2014
Messages
91
Reaction score
16
Which error is 413? "Entity too large"?
yes, im guessing it was related to the half-failed install where one of the handlers? if thats the right term, wasnt loaded to allow the full upload and it defaulted to some other max allowable upload
 

nhannath

Active Member
Joined
May 1, 2013
Messages
30
Reaction score
6
Location
Charlotte
th1.jpg
th2.jpg
th3.jpg
th4.jpg
th5.jpg


Hi - Anybody any idea why I can't see the one wire sensors in fermentrack. I ended making 5 boards and have them all connecting to the wifi and displaying the readings on a display. In fermentrack I can connect to the controller but only see pin setting and no one wire settings. I just bought a pack of small cat6 cables on amazon for the connections and did not do anything special with the pins. Any ideas. I've tried a few main boards and sensor boards and have seen any one wire sensors coming up yet ?

Thanks in advance

Neal
 
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
View attachment 767427 View attachment 767428 View attachment 767429 View attachment 767430 View attachment 767432

Hi - Anybody any idea why I can't see the one wire sensors in fermentrack. I ended making 5 boards and have them all connecting to the wifi and displaying the readings on a display. In fermentrack I can connect to the controller but only see pin setting and no one wire settings. I just bought a pack of small cat6 cables on amazon for the connections and did not do anything special with the pins. Any ideas. I've tried a few main boards and sensor boards and have seen any one wire sensors coming up yet ?

Thanks in advance

Neal
It's hard to tell from the photo, but what pins do you have bridged with OW_VSEL?

1651197382728.png
 

nhannath

Active Member
Joined
May 1, 2013
Messages
30
Reaction score
6
Location
Charlotte
That was it Thorrack. Thanks. I had bridged it as 5v left and middle on a board and then realized it was a board that I was waiting the 4.7V resistor on and forgot to move - Just put it on a board with a 4.7K resistor and it popped straight up in fermentrack. Thanks.
 
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
That was it Thorrack. Thanks. I had bridged it as 5v left and middle on a board and then realized it was a board that I was waiting the 4.7V resistor on and forgot to move - Just put it on a board with a 4.7K resistor and it popped straight up in fermentrack. Thanks.
Perfect! Glad it worked :)
 

nhannath

Active Member
Joined
May 1, 2013
Messages
30
Reaction score
6
Location
Charlotte
HI Guys - More questions :) Hopefully my questions are helping other users. I for the transformers suggested that converts the 110V down to 5V. What looks like the AC side has holes that are two wide apart for the screw terminals I have. What kind of connector would I use for this side of the device ?

Thanks in advance.

Neal
 

Attachments

  • power1.jpg
    power1.jpg
    103.7 KB · Views: 0
  • power2.jpg
    power2.jpg
    83 KB · Views: 0
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
HI Guys - More questions :) Hopefully my questions are helping other users. I for the transformers suggested that converts the 110V down to 5V. What looks like the AC side has holes that are two wide apart for the screw terminals I have. What kind of connector would I use for this side of the device ?

Thanks in advance.

Neal
It looks like you need 5mm screw terminals, and have 2.54mm ones.
 

nhannath

Active Member
Joined
May 1, 2013
Messages
30
Reaction score
6
Location
Charlotte
It looks like you need 5mm screw terminals, and have 2.54mm ones.
Thanks again Thorrack. I looked on Amazon at that based on the description on the box I do have, but the images on there didn't make them look any different. - ordered today. I may have this working by the end of the weekend :) 80% there.
 
Last edited:

diatonic

Well-Known Member
Joined
Jan 12, 2009
Messages
718
Reaction score
12
Location
Boise, ID
Would be cool if the ESP32 firmware would support displays like these… maybe too many types in the wild.
 
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
Would be cool if the ESP32 firmware would support displays like these… maybe too many types in the wild.
Unfortunately I have far too much experience trying to support the multitude of display/board types from building TiltBridge to try to support anything but the bare minimum of screens!

I've got hardware currently being shipped from OSHPark (and, separately, China) which I think will ultimately become the "one board to rule them all" for the ESP32 port. @LBussy convinced me to support the LCD2004 screens with the ESP32 in order to provide a softer upgrade pathway, but aside from that it's TFT or bust:


1651545451400.png


While it looks like theres a lot going on here, this is simultaneously an all-TH board for those who prefer TH components, or an SMD board for those who prefer to go that route, with support for the LoLin D32 Pro or LoLin D32 (non-pro), and either the LoLin D32 Pro-compatible TFT display or most third party TFT displays that have similar specs with a PCB that breaks its pins out for the correct cable. It also supports the LCD2004 if you add the optional SMD level shifter, to provide an upgrade pathway for those who want it.

Assuming this works, it's going to be the one official PCB I plan to release for the ESP32.

Of course - you can always go the completely solder free route, and recycle the official TiltBridge hardware. That's what I tested with, after all. ;)
 
Last edited:

Caltuckian

New Member
Joined
Feb 9, 2021
Messages
4
Reaction score
2
Hi @Thorrak,

I was running a pre-docker build of Fermentrak, and decided to upgrade to the docker version. Went ahead and flashed a fresh image to a SD card (Bullseye 64-bit on RPi 3B+), did all the typical pre install work (apt get update & upgrade), and then ran the install script. This first issue I ran into was that on docker & docker-compose install, the install couldn't find them right after the script installed them, so Iogged back out and in, and then relaunched from the install.sh. Then I started getting errors:

Bash:
 /home/pi/fermentrack-tools/install.sh
::: Checking for Internet connection:
::: Internet connection Success!
::: Verifying free disk space...
::: Sufficient free disk space is available
::: Checking/installing Docker prerequisites using apt-get
::: Docker is already installed. Continuing.
::: Docker-compose is already installed. Continuing.
::: pi already belongs to the 'docker' group
::: Able to access docker - Proceeding.
::: Downloading required files from GitHub for setup
cp: cannot stat 'sample.docker-compose.yml': No such file or directory
::: The default port for Fermentrack to run on is port 80 (which is standard
::: for most websites). If you have another service currently running on port 80
::: then this install will likely fail unless another port is selected.

What port would you like to access Fermentrack on? [80]:
/home/pi/fermentrack-tools/install.sh: line 190: nc: command not found
::: 80 is a valid port for installation. Continuing.
/home/pi/fermentrack-tools/install.sh: line 207: nc: command not found
/home/pi/fermentrack-tools/install.sh: line 212: nc: command not found
::: Creating Fermentrack environment configuration at ./envs/django
mkdir: cannot create directory ‘envs’: File exists
cp: cannot stat 'sample_envs/django': No such file or directory
sed: can't read envs/django: No such file or directory
sed: can't read envs/django: No such file or directory
::: Creating Fermentrack Postgres environment configuration at ./envs/postgres
cp: cannot stat 'sample_envs/postgres': No such file or directory
sed: can't read envs/postgres: No such file or directory
sed: can't read envs/postgres: No such file or directory
sed: can't read docker-compose.yml: No such file or directory
sed: can't read docker-compose.yml: No such file or directory
::: Downloading, building, and starting Fermentrack containers
sh: 1: ./docker-update.sh: not found
::: Waiting for Fermentrack install to initialize and become responsive.
::: Fermentrack may take up to 3 minutes to first boot as the database is being initialized.
..........................................................................................missing.
*** ERROR: Unable to find an initialized, responsive instance of Fermentrack


UPDATE1:
190, 207, and 212 are all due to nc not being available due to nmap not being installed, which seems to be the case in Bullseye light. Installing nmap cleared them. The rest Im not sure about, any ideas?
 
Last edited:

Caltuckian

New Member
Joined
Feb 9, 2021
Messages
4
Reaction score
2
Normally I would agree, but the documentation on GitHub says Buster or later, and (I'll have to find this again), but there was something about it being targeted against Bullseye in the release notes. But who knows with software 😂. At the very least, I'm going to submit an issue and maybe a pull request that nmap be added to the dependencies on install.
 
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
Normally I would agree, but the documentation on GitHub says Buster or later, and (I'll have to find this again), but there was something about it being targeted against Bullseye in the release notes. But who knows with software 😂. At the very least, I'm going to submit an issue and maybe a pull request that nmap be added to the dependencies on install.
Always a good idea. ;)

I have no idea what is going on with your installation of Raspberry Pi OS. I actually built a new RPi box last week using the latest OS, and can see nc as available:
Screen Shot 2022-05-11 at 7.22.27 PM.png



Are you using RPi OS 64-bit?

Edit: Yes you are - you mentioned that - sorry for missing it! That's the issue. nmap (and maybe other packages?) aren't included by default in the 64-bit build when they are included in the 32-bit build.

I don't have a spare pi at the moment to do a 64 bit test build, but if apt-get install nmap solves the problem, let me know and I can get that added to the install script. Fermentrack (and it's required packages) are all built for aarch64, so there is no reason it shouldn't work.
 
Last edited:

Caltuckian

New Member
Joined
Feb 9, 2021
Messages
4
Reaction score
2
Always a good idea. ;)

I have no idea what is going on with your installation of Raspberry Pi OS. I actually built a new RPi box last week using the latest OS, and can see nc as available:
View attachment 768584


Are you using RPi OS 64-bit?

Edit: Yes you are - you mentioned that - sorry for missing it! That's the issue. nmap (and maybe other packages?) aren't included by default in the 64-bit build when they are included in the 32-bit build.

I don't have a spare pi at the moment to do a 64 bit test build, but if apt-get install nmap solves the problem, let me know and I can get that added to the install script. Fermentrack (and it's required packages) are all built for aarch64, so there is no reason it shouldn't work.


Okay, so I just nuked the SD card and started from a fresh Bullseye 64 install, then:
Bash:
sudo apt update
sudo apt upgrade
sudo apt install ncat
sudo apt install docker
sudo apt install docker-compose
sudo shutdown -r

Logged back in, and then the install script (curl -L install.fermentrack.com | bash) ran fine and installed with no errors. So I don't know what went sideways. But it definitely seems like ncat (I was a dummy earlier and said nmap :smh:) helped clear the errors @Thorrak, so maybe that needs to make it into the install script. If you have any other questions, lemme know.

Now, if you'll excuse me, I have a blood orange gose that needs to go into the bright tank.
 
Last edited:
OP
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
3,160
Reaction score
2,081
Location
New York, NY
Okay, so I just nuked the SD card and started from a fresh Bullseye 64 install, then:
Bash:
sudo apt update
sudo apt upgrade
sudo apt install ncat
sudo apt install docker
sudo apt install docker-compose
sudo shutdown -r

Logged back in, and then the install script (curl -L install.fermentrack.com | bash) ran fine and installed with no errors. So I don't know what went sideways. But it definitely seems like ncat (I was a dummy earlier and said nmap :smh:) helped clear the errors @Thorrak, so maybe that needs to make it into the install script. If you have any other questions, lemme know.

Now, if you'll excuse me, I have a blood orange gose that needs to go into the bright tank.
Done!
 

diatonic

Well-Known Member
Joined
Jan 12, 2009
Messages
718
Reaction score
12
Location
Boise, ID
I see that the LCD data can be grabbed from /api/lcd/1/ as the string values that populate the LCD. Is there a way to get the raw data with more resolution? I'd like to be able to pull temperature with more significant digits and state/time in state without decoding strings if possible.
 
Top