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

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.
The problem appears to be that dygraphs is setting the y axis bounds automatically, and your gravity sensor is jumping between two readings that are exactly one measurable unit apart. Unfortunately there’s not much of a fix for this - but as you get additional readings added to the graph (that are further apart!) it should smooth itself out.

Here is 2+ days from my latest brew. Still seeing some strangeness I want to ask about.
FT _graph2.png


First - if the Tilt is only reporting whole number temps, why is the graph showing temps in tenths of a degree? Is it C -> F conversion? (FWIW, the flat parts of the graph correspond to whole numbers)

Second, the gravity graph jumps around a lot. Is there a way to smooth the readings? Maybe some sort of decaying average?

(I hope to be helpful here, not critical. I love having this data!)
 
Last edited:
Something went south on my build.

I can no longer view the portal to control it. Fermentrack shows up on my router client list but I can't see anything when I navigate to its ip address. The temp proves work fine too. And resetting the unit does nothing.

Any ideas what went wrong? I've got a vessel waiting yeast

Edit: reset my router and now it works. Weird. I apologize about the tread clutter
 
Last edited:
Hi
I'm currently running brewpi but want to try Fermentrack since I cant calibrate my sensors in Brewpi. Before I install it on my brewpi setup I want to test it out a bit. Can I run it on a raspberry pi and nodemcu?
 
Hi
I'm currently running brewpi but want to try Fermentrack since I cant calibrate my sensors in Brewpi. Before I install it on my brewpi setup I want to test it out a bit. Can I run it on a raspberry pi and nodemcu?

Raspberry Pi, yes absolutely. NodeMCU isn't used for Fermentrack - but some NodeMCU devices can run the ESP8266 port of the BrewPi firmware I made, if that's what you're thinking. You can use Arduino-based devices with Fermentrack as well, depending on what you have.
 
Raspberry Pi, yes absolutely. NodeMCU isn't used for Fermentrack - but some NodeMCU devices can run the ESP8266 port of the BrewPi firmware I made, if that's what you're thinking. You can use Arduino-based devices with Fermentrack as well, depending on what you have.
Thanks :)
I have a spare raspberry pi 3 and a nodeMCU ESP-12E. I was thinking of using that and try out Fermentrack and you're ESP8266 BrewPi Firmware :)
Can I flash the nodemcu during Fermentrack installation or do I have to do that first?
 
Thanks :)
I have a spare raspberry pi 3 and a nodeMCU ESP-12E. I was thinking of using that and try out Fermentrack and you're ESP8266 BrewPi Firmware :)
Can I flash the nodemcu during Fermentrack installation or do I have to do that first?
Install Fermentrack and then flash your devices. That feature, plus the ease of controlling multiple chambers, were the reasons I migrated to Fermentrack. The better web interface and graphics are icing on the cake.
 
Can't assign a temperature sensor. Only get this message: Failed to write the configuration to the controller. If this continues, try resetting the EEPROM on the controller. What to do?
 
Hi @Thorrak
Thanks for your work on Fermentrack.
I am play with HomeAssistant for home automation. From what I have read, I don't believe there exists an API directly to allow POST integration with other software (I already pull the gravity, beer temp, control mode and fridge temp)


I have my iSpindels sending data to my homeassisttant (HA) MQTT server, which then sends a POST update to fermentrack for the fermentrack front end. I also have HA integrated into Telegram for sending me updates for things I an interested in.

Eg, some automations that would be good:
1) When a specific gravity from my ispindel is hit as defined by HA, to send a POST to change the setpoint of the beer to allow for diacetyl rest, or to let me know its time to dry hop.( I would also generate an alert from HA).
2) After dryhop is initiated, I would want to then get HA to send a POST to change setpoint again to allow for cold crash ( I would also generate an alert from HA).
Having HA control the brew session would be great - its very powerful. I think this would only need to allow POST updates to change parameters.

I would love to see fermentrack moved to Docker - I've had so many failed SD cards over the years on RPis it would be a good move. Does anyone have the skills to make this happen?

Thanks,
Jasoni
 
Great work Thorrak. I switched from an arduino pi0w setup to an esp12e (nodemcu) setup that connects to fermentrack on a pi3 that was already running kodi in my living room. I simply replaced my old setup and it works and looks great!

I've just ordered the enclosure (standard electronic box) and an lcd screen along with a rotary encoder (and my birthday gift, a TILT!)

My questions are:
-Does the LCD screen time-out? How does it wake up?
-From what I've read the encoder won't work on esp devices? Is this true?
 
Great work Thorrak. I switched from an arduino pi0w setup to an esp12e (nodemcu) setup that connects to fermentrack on a pi3 that was already running kodi in my living room. I simply replaced my old setup and it works and looks great!

I've just ordered the enclosure (standard electronic box) and an lcd screen along with a rotary encoder (and my birthday gift, a TILT!)

My questions are:
-Does the LCD screen time-out? How does it wake up?
-From what I've read the encoder won't work on esp devices? Is this true?

Nice! Post pictures/links to the enclosure if it works out — the enclosure that I have for all of my builds is the 3D printed case design I have posted, but getting access to a 3D printer is a pretty high barrier to entry for the build for most people.

The LCD screen does not time out and is always on. There is a function I added to the ESP8266 firmware to allow the backlight to be manually toggled, but I don’t have functionality exposed in Fermentrack anywhere.

The encoder doesn’t work on ESP8266 devices due to a lack of available pins, and the way that some of the pins that are available handle state at startup. It’s a limitation of the platform, but given that almost all of the functionality (aside from the LCD backlight as you noted) can be accessed from the BrewPi/Fermentrack interface, it shouldn’t have too much of a negative impact on your brew day!
 
Hi @Thorrak
Thanks for your work on Fermentrack.
I am play with HomeAssistant for home automation. From what I have read, I don't believe there exists an API directly to allow POST integration with other software (I already pull the gravity, beer temp, control mode and fridge temp)


I have my iSpindels sending data to my homeassisttant (HA) MQTT server, which then sends a POST update to fermentrack for the fermentrack front end. I also have HA integrated into Telegram for sending me updates for things I an interested in.

Eg, some automations that would be good:
1) When a specific gravity from my ispindel is hit as defined by HA, to send a POST to change the setpoint of the beer to allow for diacetyl rest, or to let me know its time to dry hop.( I would also generate an alert from HA).
2) After dryhop is initiated, I would want to then get HA to send a POST to change setpoint again to allow for cold crash ( I would also generate an alert from HA).
Having HA control the brew session would be great - its very powerful. I think this would only need to allow POST updates to change parameters.

I would love to see fermentrack moved to Docker - I've had so many failed SD cards over the years on RPis it would be a good move. Does anyone have the skills to make this happen?

Thanks,
Jasoni

Hey there! Glad you find Fermentrack useful! Functionality is coming to allow Fermentrack to cascade data upstream to things like BrewersFriend and other software packages, but I don’t know if that’s what you’re looking for with your home automation setup. As you noted, you already pull most of that data from the existing interface, so it sounds like you’re already most of the way there. You could probably tease out a way to trigger a new set point/profile by sending the right request to the right URL, but that functionality isn’t directly exposed as an API. You’d be hacking the Fermentrack interface to build the functionality you’re looking for — but Fermentrack doesn’t do anything to really prevent you from interfacing like that if you wanted to go down that path.

With regards to a Docker install, it sounds like what you’re interested in is less “Docker” and more “not running on a Raspberry Pi”. Fermentrack already supports (and indeed - I did a lot of testing) installations on Ubuntu if you want to go that route. Some features may not work (Serial connections, Bluetooth) but anything network-related should work fine.

As far as Docker itself - I’m happy to help if someone needs it and wants to create a Docker... recipe? for installing Fermentrack, but I have almost no experience with it myself.
 
Hi,
i have problem with fermentrack and arduino with two DS18820 sensors. Looks like only one of the sensors sends the temperature reading to the fermentrack.
I have also tested the sensors with only arduino board and two sensors - both of the sesnsors send the temperature readings to the arduino board, so the sensors are working.
Any ideas why only one of the sesnsors are working with fermentrack?
Tried also restaring the raspberry pi, then temperature reading comes from another sensor, but still second sensor sends null.

Sensors are wired like in brewpi scheme - parallel with a 4,7k ohm resistor between data and power like this: wires.https://www.homebrewtalk.com/forum/attachments/arduino-gif.218025/

Any debuging ideas appreciated.
 
Hello,

I finally got everything working on Stretch/RPi 2B+/Sainsmart Uno and packaged in the project box, and it was running great for a few hours, but then the temp probes all started reading 0 degrees, with no inputs on either heat or cool until I recognize it and reboot the pi via putty. This happened both last night and after I left for work this morning. I have attached the graph below.

If it helps, I got most of the way through a RasberryPints install last night, but it seemed to be working fine despite that as I watched. Any help would be appreciated.
 
Hello,

I finally got everything working on Stretch/RPi 2B+/Sainsmart Uno and packaged in the project box, and it was running great for a few hours, but then the temp probes all started reading 0 degrees, with no inputs on either heat or cool until I recognize it and reboot the pi via putty. This happened both last night and after I left for work this morning. I have attached the graph below.

If it helps, I got most of the way through a RasberryPints install last night, but it seemed to be working fine despite that as I watched. Any help would be appreciated.
 

Attachments

  • log.jpg
    log.jpg
    202.9 KB · Views: 100
Last edited:
Hi,
i have problem with fermentrack and arduino with two DS18820 sensors. Looks like only one of the sensors sends the temperature reading to the fermentrack.
I have also tested the sensors with only arduino board and two sensors - both of the sesnsors send the temperature readings to the arduino board, so the sensors are working.
Any ideas why only one of the sesnsors are working with fermentrack?
Tried also restaring the raspberry pi, then temperature reading comes from another sensor, but still second sensor sends null.

Sensors are wired like in brewpi scheme - parallel with a 4,7k ohm resistor between data and power like this: wires.https://www.homebrewtalk.com/forum/attachments/arduino-gif.218025/

Any debuging ideas appreciated.

When you say that you've tested the sensors with only the arduino board, how did you test them? Are you saying that - while running the BrewPi firmware - you see temperature readings on the LCD screen, or that you have seen readings when using other, non-BrewPi firmware designed to register/report temp readings from DS18B20 sensors?


Hello,

I finally got everything working on Stretch/RPi 2B+/Sainsmart Uno and packaged in the project box, and it was running great for a few hours, but then the temp probes all started reading 0 degrees, with no inputs on either heat or cool until I recognize it and reboot the pi via putty. This happened both last night and after I left for work this morning. I have attached the graph below.

If it helps, I got most of the way through a RasberryPints install last night, but it seemed to be working fine despite that as I watched. Any help would be appreciated.

Same question as the above in this case -- Are you seeing temp readings on the (physical) LCD screen but not in Fermentrack, or are you missing temp readings on both the LCD screen and in Fermentrack?
 
Same question as the above in this case -- Are you seeing temp readings on the (physical) LCD screen but not in Fermentrack, or are you missing temp readings on both the LCD screen and in Fermentrack?

I do not have an LCD screen set up, I have been accessing only via Fermentrack web interface from a different laptop. It seems like it isn't getting any input, it shows --.-F and the beer maintains whatever temp the profile was set at before it crashes.
 
I do not have an LCD screen set up, I have been accessing only via Fermentrack web interface from a different laptop. It seems like it isn't getting any input, it shows --.-F and the beer maintains whatever temp the profile was set at before it crashes.
What kind of power supply are you using? Most of my probe issues, especially the intermittent ones, have been tied to a crappy power supply.
 
What kind of power supply are you using? Most of my probe issues, especially the intermittent ones, have been tied to a crappy power supply.

K. Power supply should be good, it its an Apple brand 2.5A power block with a Samsung brand name USB cable to the Pi, with a brand name USB cable from the Pi to Arduino. I can get a separate Arduino power supply if needed.

I was more concerned that it was a programming issue.
 
K. Power supply should be good, it its an Apple brand 2.5A power block with a Samsung brand name USB cable to the Pi, with a brand name USB cable from the Pi to Arduino. I can get a separate Arduino power supply if needed.

I was more concerned that it was a programming issue.
I'd try a separate power supply on the Arduino to see if that fixes it. If the probes are detected and work okay for a while and then drop out, that sounds more like hardware than programming.
 
When you say that you've tested the sensors with only the arduino board, how did you test them? Are you saying that - while running the BrewPi firmware - you see temperature readings on the LCD screen, or that you have seen readings when using other, non-BrewPi firmware designed to register/report temp readings from DS18B20 sensors?

I've tested with this arduino code: https://www.tweaking4all.com/hardware/arduino/arduino-ds18b20-temperature-sensor/

Did this to check if both sensors are working. In console I can see that temperature reading is sent from first and then second sensor. So the sensors are working. However, when I wire everything up like in this image, I get temperature reading only from one of the sensors in fermentrack GUI:
schematic.jpg
 
I've tested with this arduino code: https://www.tweaking4all.com/hardware/arduino/arduino-ds18b20-temperature-sensor/

Did this to check if both sensors are working. In console I can see that temperature reading is sent from first and then second sensor. So the sensors are working. However, when I wire everything up like in this image, I get temperature reading only from one of the sensors in fermentrack GUI:
schematic.jpg

Do you have an LCD connected? If so, do the sensors show up on the LCD when you have the firmware flashed to the controller?

What I'm thinking is that there is an issue with one of the sensors potentially being parasitic -- Parasitic sensors aren't supported with the BrewPi firmware.
 
He could also run the parasite test sketch to see. It would mean uploading the sketch to the arduino without changing the wiring. I've linked to it a couple of times in the BrewPi thread.

Is it at all possible to include this function in Fermentrack somehow? I haven't a clue how it all works, but it is about 6 lines of code in the Arduino IDE.
 
He could also run the parasite test sketch to see. It would mean uploading the sketch to the arduino without changing the wiring. I've linked to it a couple of times in the BrewPi thread.

Is it at all possible to include this function in Fermentrack somehow? I haven't a clue how it all works, but it is about 6 lines of code in the Arduino IDE.

I've already got a sketch available to flash in Fermentrack that tests everything on an ESP8266 build - nothing at all prevents making a similar sketch available to flash for Arduino builds. Fermentrack itself can't test for parasitic sensors, unfortunately, but having a sketch available that could help test might be useful.

I think the real trick would be making the test firmware able to talk over Serial, so that people without an LCD included in their build would be able to better utilize it. Another project to add to the list...
 
Do you have an LCD connected? If so, do the sensors show up on the LCD when you have the firmware flashed to the controller?

What I'm thinking is that there is an issue with one of the sensors potentially being parasitic -- Parasitic sensors aren't supported with the BrewPi firmware.

No, I don't have an LCD. I just look at the fermentrack GUI where the visualizations of LCDs are shown.
I will search for the sketch to check if one of the sensors are working in parasitic mode.
Thanks for the feedback!
 
#include <OneWire.h>
#include <DallasTemperature.h>


#define ONE_WIRE_BUS 18
OneWire oneWire(ONE_WIRE_BUS);

// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);

void setup() {


Serial.begin(9600);

sensors.begin();
}

void loop() {

Serial.print("Parasite power is: ");
if (sensors.isParasitePowerMode())
Serial.println("ON\n");
else
Serial.println("OFF\n");

Serial.print ("Detected ");
Serial.print(sensors.getDeviceCount(), DEC);
Serial.print(" devices\n");

byte deviceAddress[8];

for (int i = 0; i < sensors.getDeviceCount(); i++) {
sensors.getAddress(deviceAddress, i);
Serial.print("Device ");
Serial.print(i);
Serial.print(" is a ");
switch (deviceAddress[0]){
case DS18S20MODEL:
Serial.print("DS18S20\n");
break;
case DS18B20MODEL:
Serial.print("DS18B20\n");
break;
case DS1822MODEL:
Serial.print("DS1822\n");
break;
case DS1825MODEL:
Serial.print("DS1825\n");
break;
default:
Serial.print("Unknown\n");
}
}
delay(1000);


sensors.requestTemperatures(); // Send the command to get temperatures
delay(750);

for (int i = 0; i < sensors.getDeviceCount(); i++) {
float temp = sensors.getTempCByIndex(i);

Serial.print ("Sensor ");
Serial.print (i);
Serial.print (" ");
Serial.print(temp);
Serial.print("\n");
}
Serial.print("\n");

}
 
Thanks for the links.
I've uploaded the arduino sketch and clearly see that sensors are NOT in parasite power mode - function sensors.isParasitePowerMode() returns False. Both sensors send the temperature readings to the serial monitor in arduino studio. Everything looks OK from the arduino side.

I will try to flash the arduino once again from the fermentrack.

Maybe the problem is with the Raspberry Pi? I have first version of raspberry pi (the one with only two USB ports).
 
Unless the Pi is broken it should work. I ran BrewPi and RaspberryPints on a Model B which only has two USB ports - and a single core/single thread processor. I doubt there's anything in Fermentrack that won't work on any RPi model...

Cheers!
 
I have only had fermentrack running for a few weeks (super easy install), temps were maintaining pretty good when close to room temp but I bumped my beer constant temp up to 75 and have had some massive heating overshoots.

I'm running the Ardruino Uno 3 with relay board and Rpi setup.

Is there something in the setting to stop the heater from running past target temp?
dash.jpg
 
I changed the heating overshoot estimate settings to 300 seconds. Not really sure if it had any effect.
Capture%2B_2019-01-07-22-39-55.jpeg
 
Back
Top