Fermentrack: Fermentation monitoring & BrewPi-www Replacement for Raspberry Pi

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

Help Support Homebrew Talk:

OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
So, normally my dashboard is setup to list the Controllers, Chamber 1, 2, and 3 listed top to bottom. This morning when I went to adjust chamber 1 temp in prep for a brew day, it was rotated to the bottom of the list (on save I presume). I then changed the temp on Chamber 2 to see if it would happen, and sure enough, Chamber 2 was moved to the bottom of the list. (I’m on current Master.) Is there a setting I’m missing?
View attachment 727685
Uh. Fermentrack has been out for what, ~5 years now? And you're the first person to notice that I never applied ordering rules to that object.

Anyways, tweak is in dev branch - update when you have a few.
 

garzlok

Well-Known Member
Joined
Aug 19, 2012
Messages
421
Reaction score
287
Location
Dacula
And you're the first person to notice that I never applied ordering rules to that object.
Other than being first....yeah 5 years for me to finally notice something sounds about right.

I’m telling you...they never went ”out” of order before. My OCD would never allow me to accept a Chamber 3 sandwich between slices of Chamber 1 and 2.
 

garzlok

Well-Known Member
Joined
Aug 19, 2012
Messages
421
Reaction score
287
Location
Dacula
Uh oh...502 Bad Gateway....anyway to save myself through Terminal?

meh...I’ll go to my backup snd update after my fermentation is complete.
 
Last edited:

calandryll

Member
Joined
Jul 8, 2016
Messages
19
Reaction score
13
Location
Dover
None important feature request. I would love to be able to theme this to match some of my other internal brewing sites. Or even a dark version of the current setup. I looked at it the other morning and my eyes were not ready for a bright white.
 
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
None important feature request. I would love to be able to theme this to match some of my other internal brewing sites. Or even a dark version of the current setup. I looked at it the other morning and my eyes were not ready for a bright white.
Pull requests are always welcome. :)

I'm absolutely open to a new design (or configurable themes!) but I'm terrible with design work. Dark mode sounds like a great addition, though.
 

calandryll

Member
Joined
Jul 8, 2016
Messages
19
Reaction score
13
Location
Dover
Pull requests are always welcome. :)

I'm absolutely open to a new design (or configurable themes!) but I'm terrible with design work. Dark mode sounds like a great addition, though.
Well that would require me trying to figure out a pull request! Lol.

I was playing around modifying in "real" time to see what elements needed to be edited for colors. I think I've isolated most of them to put into a custom css file. I'll play around with my setup to see how well it works.
Nord_fermentrack.png
 
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
Well that would require me trying to figure out a pull request! Lol.

I was playing around modifying in "real" time to see what elements needed to be edited for colors. I think I've isolated most of them to put into a custom css file. I'll play around with my setup to see how well it works.
View attachment 728490
Huh. If you can get it down to including a CSS file site-wide, the code would actually be pretty simple. I'm happy to help with that bit (as long as I don't have to do any design work)
 

calandryll

Member
Joined
Jul 8, 2016
Messages
19
Reaction score
13
Location
Dover
Huh. If you can get it down to including a CSS file site-wide, the code would actually be pretty simple. I'm happy to help with that bit (as long as I don't have to do any design work)
That's what I'm hoping will happen. Though I am by no means a designer either. My hope is to make a simple editable css file to add that anyone could change if they want to change up the colors.
 

calandryll

Member
Joined
Jul 8, 2016
Messages
19
Reaction score
13
Location
Dover
Alright, well that was pretty simple to figure out how to do it. I think I have most of the CSS pulled out that would change the various aspects of the display. My color profile is based off of the Nord theme. The only thing that can not be changed via CSS is the gridlines in the plot, the plot lines themselves, the background of the plot, and the bounding box of the plot. Quick look at the dygraph looks to be controlled via options within the call itself.

Fermentrack_Main_Nord.png
Fermentrack_Log_Nord.png
Fermentrack_Log_Menu_Nord.png

I put together a CSS file that would only require a user to change that would populate throughout the CSS. I tried to name it "intelligently" (to me at least), it's a pretty simple thing to do. I'm not sure if there is a way in django to make the CSS as a togglable option to turn it on or off.
 

Bago-0

Supporting Member
HBT Supporter
Joined
Jul 16, 2020
Messages
73
Reaction score
25
Location
Clearwater
Finally getting fermentrack setup with Pi 3B+ and Arduino Uno. I have everything configured except the DS18B20 probes (2 of them). It will not write to eprom when I try to configure pins. I have seen 2 diagrams for wiring. One shows data lines form probes on pin A4 another diagram shown in fermentrack doc link show them on D2. I tried both but no luck. I have the 4.7K and otherwise looks setup fine. I was able to set heat and cooling to D5 and D6 and picked inverted as I saw in a post here.
 

day_trippr

Moderna Or Bust! :D
Joined
May 31, 2011
Messages
36,364
Reaction score
18,839
Location
Stow, MA
Are the probes recognized at least?
Classically the inability to save the device configuration has been eeprom corruption...

Cheers!
 

Bago-0

Supporting Member
HBT Supporter
Joined
Jul 16, 2020
Messages
73
Reaction score
25
Location
Clearwater
Thanks for th response. This is my first time with Pi and Arduino so I do not even know what I am supposed to be seeing. Here is a screenshot of what I get. Does the probe lead go to A4 or D2? Not sure how to tell if the probes are recognized. I also was reading about Arduino temp sensoirs and it said to install the one wire probe sketch to Arduino. Does the ferment rack installer do all this or was I supposed to install some libraries on Arduino ?

Thanks
 

Attachments

Bago-0

Supporting Member
HBT Supporter
Joined
Jul 16, 2020
Messages
73
Reaction score
25
Location
Clearwater
I got it working. I re flashed the Arduino using the first choice which I think was rev. C and the temp probes show up. Datg line is on A4. With this version of Arduino firmware which LCD display would I need? Was thinking of adding a display to the controller.
 

calandryll

Member
Joined
Jul 8, 2016
Messages
19
Reaction score
13
Location
Dover
I'll be sending a pull request later but I've got it setup so there is a dropdown selection for selecting a custom theme. Obviously, there is only a single theme at this time but it's pretty easy to add additional ones.
Fermentrack_Settings.png
 

nvogt1

Member
Joined
Jul 17, 2016
Messages
13
Reaction score
3
I'm doing a non-docker install of fermentrack on a Raspberry Pi 1 Model B+ and I'm running into some issues with fermentrack not loading the CSS files (or not being able to access them).

The non-docker install completes without any errors, but when I go to the browser, fermentrack just displays as plain text. If I view source and try to navigate to the CSS file (like IPADDRESS/static/css/custom_style.css for instance), I get a 404 Not Found page. Same thing happens trying to access anything in the static folder from the browser.

Fermentrack does seem to be running correctly though -- I can go through the guided setup and set the username and password and that all works. I haven't tried flashing a controller yet.

Any ideas how to fix this?
 

Attachments

OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
I'm doing a non-docker install of fermentrack on a Raspberry Pi 1 Model B+ and I'm running into some issues with fermentrack not loading the CSS files (or not being able to access them).

The non-docker install completes without any errors, but when I go to the browser, fermentrack just displays as plain text. If I view source and try to navigate to the CSS file (like IPADDRESS/static/css/custom_style.css for instance), I get a 404 Not Found page. Same thing happens trying to access anything in the static folder from the browser.

Fermentrack does seem to be running correctly though -- I can go through the guided setup and set the username and password and that all works. I haven't tried flashing a controller yet.

Any ideas how to fix this?
My initial recommendation would be to update to a newer Pi, and use the Docker version. ;)

Absent that, try SSHing into the Pi, and do the following:

sudo su fermentrack
cd ~/fermentrack
source ~/venv/bin/activate
./manage.py collectstatic --clear


...then restart
 

nvogt1

Member
Joined
Jul 17, 2016
Messages
13
Reaction score
3
I know! That might be the plan if I can't get this going. The weird thing is is that I did a non-docker install on a Raspberry Pi Zero and didn't have any issues.

I tried those commands and restarted but no luck -- it still displays in plain text with 404s on any files in the static directory.
 
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
I know! That might be the plan if I can't get this going. The weird thing is is that I did a non-docker install on a Raspberry Pi Zero and didn't have any issues.

I tried those commands and restarted but no luck -- it still displays in plain text with 404s on any files in the static directory.

Check your nginx configuration file in /etc/nginx/sites-enabled and make sure it has a url handler for /static . If it doesn’t, you’ll need to add one - there’s an example in the non-docker directory in Fermentrack-tools.

My strong recommendation is switching to the docker version as the non-docker version will only be lightly supported going forward.
 

nvogt1

Member
Joined
Jul 17, 2016
Messages
13
Reaction score
3
Check your nginx configuration file in /etc/nginx/sites-enabled and make sure it has a url handler for /static . If it doesn’t, you’ll need to add one - there’s an example in the non-docker directory in Fermentrack-tools.
This is what I found in sites-enabled for /static: 'alias /home/fermentrack/fermentrack/collected_static/;' but then that directory is empty. I copied over the 'vendor' folder from /home/fermentrack/fermentrack/staticfiles to the collected_static directory and reloaded the fermentrack webpage and now it displays correctly!

Can I just copy over all the directory and files in staticfiles to collected_static? Or is the face that collected_static was empty indicating a bigger issue with the nginx server or install?


Also, it looks like the sites-enabled /static points to fermentrack/collected_static, but the fermentrack_django/settings.py points to fermentrack/staticfiles.

On the Raspberry PI Zero non-docker install that is running correctly, the READ_ME file in the fermentrack/collected_static says: "You shouldn't have to touch this folder, as its contents should be generated automatically by upgrade.sh"

Thanks!
 
Last edited:

kxavier_23

Well-Known Member
Lifetime Supporter
Joined
Sep 8, 2020
Messages
128
Reaction score
9
So I am having a strange issue were one of my Fermentrack installs is completely resetting every day around 1:30 pm. And when I mean resetting, the temp sensors and relay settings need to be reconfigured and my device constants are reset as well.

Using the latest BrewPi install from BrewFlasher
 
Joined
Jan 19, 2013
Messages
3,292
Reaction score
1,286
Location
Kansas City
So I am having a strange issue were one of my Fermentrack installs is completely resetting every day around 1:30 pm. And when I mean resetting, the temp sensors and relay settings need to be reconfigured and my device constants are reset as well.
"You're not alone."

I've been talking to John about this as I have the same issue with the ESP8266 fork of the firmware while connected to BrewPi Remix. So at least we now can point to the controller as the potential culprit.

Let me ask this: Do you have any network-based scanning? Like Netgear Armor or Bitdefender or anything like that?
 

kxavier_23

Well-Known Member
Lifetime Supporter
Joined
Sep 8, 2020
Messages
128
Reaction score
9
No, but...

I did beta test the ability to enter the IP address of the controllers rather than using the mDNS names. At the time, I didn't have anything fermenting so didn't run any controllers long enough to see the issue as it happens once daily.

From my network standpoint, I have an AP almost directly above the ESPs so it is highly unlikely that they are switching or there is any network interruptions. I used to do some network optimizations, but that is not enabled anymore.

Could this issue be traced back to the timing of the IP vs mDNS changes?
 
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
The real question would, who can fix any of this if I can narrow it down?
Unfortunately, I've been tied up with a different (not yet announced) project which has been consuming most of my free cycles, but I'm hoping to get that project out in the wild here in the next ~2 months or so and free up some time to swing back to BrewPi:

Screen Shot 2021-05-20 at 8.58.20 PM.png
 

VictorBrew

Well-Known Member
Joined
Aug 1, 2014
Messages
50
Reaction score
11
Just a quick question ... For the Arduino Uno Firmware, what is the difference between the BrewPi Remix - RevC (Version 0.2.12) and the "Legacy" Branch -RevC (Version 0.2.10)?
 

day_trippr

Moderna Or Bust! :D
Joined
May 31, 2011
Messages
36,364
Reaction score
18,839
Location
Stow, MA
Good question. I had been running 0.2.4 for years and then modded 0.2.10 firmware for more years, the latter including a hack done by a fellow HBTer that added a "screen descrambler" function that would run periodically, plus in reaction to manipulation of the rotary encoder switch.

I don't think Elco ever included such functionality as late as 0.2.10...

Cheers!
 
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
Just a quick question ... For the Arduino Uno Firmware, what is the difference between the BrewPi Remix - RevC (Version 0.2.12) and the "Legacy" Branch -RevC (Version 0.2.10)?
BrewPi-Remix is actively maintained by @LBussy, and includes a number of fixes that he's identified over the years (as well as new features that @day_trippr alluded to). The "Legacy" branch RevC is - if memory serves - the frozen-in-time official firmware that was released immediately prior to @Elkoe (the original author of BrewPi) merging the Arduino firmware with the Spark firmware.

For almost all new builds, the BrewPi-Remix firmware is the better choice (though I am partial to the ESP8266 firmware myself) ;).
 

VictorBrew

Well-Known Member
Joined
Aug 1, 2014
Messages
50
Reaction score
11
For almost all new builds, the BrewPi-Remix firmware is the better choice (though I am partial to the ESP8266 firmware myself)
Yeah, I just built a third chamber with the ESP8266, so I am running both. A few things I noticed and I wanted to clarity on ... with the 8266 I am running the probes and data at 3.3V (with the 4K7 resistor) and seems to be working fine, but it is just testing and my wire length are all under 3 ft. With the 8266, I have read that it is "better" to run the probes with 5V and the data with 3.3V, but I am not clear which resistor to use with that setup or if it even matters with my wire lengths.

Also (as a side note) it looks like the Kd value defaults to -1.5 when the 8266 is in place (Fermentrack and BrewPiLesss both did this) where it defaults to +1.5 when the Arduino used. What is the logic for this difference?
 

day_trippr

Moderna Or Bust! :D
Joined
May 31, 2011
Messages
36,364
Reaction score
18,839
Location
Stow, MA
Running ds18b20 at 5V is always a good idea if possible, using 4.7K pull-ups to 5V for Arduinos and other 5V interface voltage controllers, or 2.2K to 3.3V for Raspberry Pi and esp8266/esp32 and any other device with 3.3V interfaces...

Cheers!
 
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
The most recent iteration of my BrewPi PCBs allow for the voltage to be selectable. As @day_trippr noted, 5v is generally the way to go -- but I've had sensors that don't support it. As @Lalo_uy discovered and commented in the other thread:

Just today I found his about sensors not working at 5v

“Maxim Integrated also produce the MAX31820 temperature sensor. The MAX31820 is a DS18B20 with limited supply voltage range (i.e. up to 3.7 V) and smaller temperature range of high accuracy. Like the DS18B20, it uses one-wire family code 0x28. Preliminary investigations have not (yet) revealed a test to distinguish between DS18B20 of Family A1 and Maxim-produced MAX31820 in software.”
I think what is happening is that some of the "DS18B20" sensors that I & others are getting from China/Amazon are actually MAX31820 sensors, which explains the weirdness when trying to use 5V. What's interesting is that the sensors don't seem to be damaged by 5V - they just don't respond - hence why the selectable voltage allows (or at least allowed me) testing at 5V and then selecting 3v3 if the sensors don't pop up.
 

ChrisThomas

Well-Known Member
Joined
Aug 11, 2019
Messages
94
Reaction score
26
Location
Bristol, UK
Hi everyone, been having a little trouble with my account which I hope is now fixed!

I've just moved my Fermentrack installation to a different router and having some issues... My first step was to remove the network settings from the controller, then changed the Pi network, powered up the controller and connected to the "new" network. Reconfigured my iSpindle and all looked good. However, Fermentrack doesn't see the controller on the new network, this is what the debug connection output says:

...
Connection Settings
Connection Typewifi
WiFi Hostnameesp7213274.local
WiFi Port23
Last Cached IP Address (from Hostname)192.168.1.158
Tests Performed
TestParameterPass/FailOutput
Device Status TestactivePassedDevice active & managed by Circus
DNS Lookup Testesp7213274.localPassed192.168.2.124
Connection Testesp7213274.localPassedConnected
Controller Response Testesp7213274.localPassedb'N:{"v":"0.2.4","n":0,"c":"00000000","s":0,"y":0,"b":"e","l":"3"}'
Cached IP Test192.168.1.158PassedAvailable
Connection Test192.168.1.158FailedUnable to connect
...

The Last Cached IP Address is the "old" IP address and the DNS Lookup Test is the "new" IP address. Is there a way I can force Fermentrack/Pi to flush or update the cache? Is it as easy as that?

From the Pi I can ping both the "new" IP address and Hostname successfully, but that's about the limit of my knowledge on things Pi.


Chris
 
Joined
Jan 19, 2013
Messages
3,292
Reaction score
1,286
Location
Kansas City
The Last Cached IP Address is the "old" IP address and the DNS Lookup Test is the "new" IP address. Is there a way I can force Fermentrack/Pi to flush or update the cache? Is it as easy as that?
Speaking as the guy who didn;t write this:

I would go to {installation}/admin which is the Django admin page. Select "BrewPi Devices" and then your controller. In that is all of the configuration fields. If it were me I might try deleting the cached IP address (called " Wifi host IP") and seeing what happens. If that doesn't work, add the proper IP address and see if that works.
 
OP
T

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,946
Reaction score
1,824
Location
New York, NY
Hi everyone, been having a little trouble with my account which I hope is now fixed!

I've just moved my Fermentrack installation to a different router and having some issues... My first step was to remove the network settings from the controller, then changed the Pi network, powered up the controller and connected to the "new" network. Reconfigured my iSpindle and all looked good. However, Fermentrack doesn't see the controller on the new network, this is what the debug connection output says:

...
Connection Settings
Connection Typewifi
WiFi Hostnameesp7213274.local
WiFi Port23
Last Cached IP Address (from Hostname)192.168.1.158
Tests Performed
TestParameterPass/FailOutput
Device Status TestactivePassedDevice active & managed by Circus
DNS Lookup Testesp7213274.localPassed192.168.2.124
Connection Testesp7213274.localPassedConnected
Controller Response Testesp7213274.localPassedb'N:{"v":"0.2.4","n":0,"c":"00000000","s":0,"y":0,"b":"e","l":"3"}'
Cached IP Test192.168.1.158PassedAvailable
Connection Test192.168.1.158FailedUnable to connect
...

The Last Cached IP Address is the "old" IP address and the DNS Lookup Test is the "new" IP address. Is there a way I can force Fermentrack/Pi to flush or update the cache? Is it as easy as that?

From the Pi I can ping both the "new" IP address and Hostname successfully, but that's about the limit of my knowledge on things Pi.


Chris
Are you running the latest dev version of Fermentrack?
 

ChrisThomas

Well-Known Member
Joined
Aug 11, 2019
Messages
94
Reaction score
26
Location
Bristol, UK
Speaking as the guy who didn;t write this:

I would go to {installation}/admin which is the Django admin page. Select "BrewPi Devices" and then your controller. In that is all of the configuration fields. If it were me I might try deleting the cached IP address (called " Wifi host IP") and seeing what happens. If that doesn't work, add the proper IP address and see if that works.
@LBussy Thought there had to be something but wasn't sure where it would be! Decided to edit the entry, took a Pi reboot and a few minutes but my Tempranillo is now well under control!

Thank you.

If only Fermentrack would log my BrewBubbles output :p


Chris
 

ChrisThomas

Well-Known Member
Joined
Aug 11, 2019
Messages
94
Reaction score
26
Location
Bristol, UK
My aim in moving networks was to get all the brewing stuff "out of the way" and I had an old router going spare, so... Also as I was sometimes getting drop outs on my main network so I thought "what the hell?". I thought I followed the workflow and removed the devices from the old network in Fermentrack before adding them to the new network. Was there something else I should have done?

Just curious.
 

ChrisThomas

Well-Known Member
Joined
Aug 11, 2019
Messages
94
Reaction score
26
Location
Bristol, UK
I think the latest Dev branch has a workflow that will try mDNS first to avoid the issue.
That's what I thought I'd read somewhere, hence my confusion when the DNS lookup had the correct address but the cached address was the old address. As I was able to ping the DNS address and hostname from anything on the new network I knew the network was "working". However, Fermentrack I guessed for some reason was reverting to the cached address?
 
Top