HOWTO - Make a BrewPi Fermentation Controller For Cheap

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.
Status
Not open for further replies.
Not quite - he said change your "room" temp (which is your glycol) back to a "chamber" temp device.


Ok, I changed the "room" temp device to "chamber temp" and I had cooling for a second...

upload_2019-9-27_21-15-32.png

but, as you can see here...
upload_2019-9-27_21-25-15.png


while the device list reads:
upload_2019-9-27_21-26-7.png


I do not get cooling when the beer set point goes below the 50 degree I have set on the beer constant.
 
Yeah gonna have to do some digging on that. Long story short - it's not working like I thought I had it. :)

As a physical workaround, put the chamber sensor wherever the beer sensor is and see if you can get some love.
 
Yeah gonna have to do some digging on that. Long story short - it's not working like I thought I had it. :)

As a physical workaround, put the chamber sensor wherever the beer sensor is and see if you can get some love.


I have played with a couple of scenarios... without much success.

Here is the graph of the last day or so... as you can see I can get some cooling to happen but certainly not how I would expect it to work. I currently have the second temp sensor back to "room" rather than chamber. I only get cooling if the temp sensor device is set to chamber. But then only if they are very similar... I can't quite figure out what the logic is trying to do.


upload_2019-9-28_13-37-57.png
 
Well, my approach was to follow anecdotal information from others who did this and that seems to not have been enough. Final try: Go with a configured “chamber temp sensor” and put that in the fermenter. Try “Fridge Constant” and see what you get.

I need a little time to get back in that code and see what’s going on it seems. Time is not something that’s been in heavy supply lately. Fingers crossed!
 
Well, my approach was to follow anecdotal information from others who did this and that seems to not have been enough. Final try: Go with a configured “chamber temp sensor” and put that in the fermenter. Try “Fridge Constant” and see what you get.

I need a little time to get back in that code and see what’s going on it seems. Time is not something that’s been in heavy supply lately. Fingers crossed!


I have just made the changes you requested I believe. Still no call for cooling...


In my test setup I now have the following:

temp sensor device 0 "beer temp" - currently in ambient air for my test
temp sensor device 1 "chamber temp" - currently in ice water for my test

System set to Fridge Constant

Pics, hopefully for more clarification
upload_2019-9-28_17-30-53.png

upload_2019-9-28_17-31-28.png

:
 
The problem in this case is the Chamber temperature (~42°F) is already below the Set Point (50°F) so BrewPi is unlikely to try to drive the Chamber temperature lower. Try changing the Set Point to below the existing Chamber Temperature by at least a couple/few degrees and BrewPi should then call for Cooling...

Cheers!
 
The problem in this case is the Chamber temperature (~42°F) is already below the Set Point (50°F) so BrewPi is unlikely to try to drive the Chamber temperature lower. Try changing the Set Point to below the existing Chamber Temperature by at least a couple/few degrees and BrewPi should then call for Cooling...

Cheers!

Changing the Fridge Constant to 38 F did cause the cooling to come on:
upload_2019-9-28_18-20-45.png


putting the Beer temp probe into the same temp water bath, to simulate beer reaching the set temp causes this:
upload_2019-9-28_18-26-20.png


I presume that this has to do with overshoot estimates... I will make some changes to those numbers.

It would seem in this configuration the "cooling" follows the temp set on the chamber temp probe, the beer temp probe does not seem to have any effect to the cooling function.
 

Attachments

  • upload_2019-9-28_18-20-38.png
    upload_2019-9-28_18-20-38.png
    8.5 KB · Views: 34
fwiw, when a ds18b20 returns "85°C" (185°F) it's because it hasn't completed its internal power-on sequence.
Thus, getting those errant readings on a running system typically indicates a power problem...

Cheers!

The sensors are powered through the Arduino and the Arduino gets his power from the RPI through the USB cable.
Because I don't have much time to do some tests and I would like to start my next brew tomorrow I will replace this USB cable first.
Maybe I can setup a new brewPi Remix with the spare parts I have when I have some more time later this week.
 
Last edited:
I presume that this has to do with overshoot estimates... I will make some changes to those numbers.
Correct, it needs to "learn" the inertia in the system in the beginning.
It would seem in this configuration the "cooling" follows the temp set on the chamber temp probe, the beer temp probe does not seem to have any effect to the cooling function.
Correct. as a matter of fact, you do not need a Beer temp probe when using Fridge Constant.

We'll get there.
The sensors are powered through the Arduino and the Arduino gets his power from the RPI through the USB cable.
Because I don't have much time to do some tests and I would like to start my next brew tomorrow I will replace this USB cable first.
Maybe I can setup a new brewPi Remix with the spare parts I have when I have some more time later this week.
When I've had this issue it's been bad connections to the board from the sensors.
 
Correct, it needs to "learn" the inertia in the system in the beginning.

Correct. as a matter of fact, you do not need a Beer temp probe when using Fridge Constant.

We'll get there.

When I've had this issue it's been bad connections to the board from the sensors.

thank you Lee, for your input.

I believe that I can make the system work in a "fridge constant" mode. For my desired outcome... I am sure minor issues to follow.

Is there a way to change the monikers "beer", "fridge" on the LCD / web UI Display? I can certainly just know that the "Fridge" temp is the temp of my unitank probe, and that another probe, beer, room, or other is my glycol but I certainly would like the ability to have the display relate to my reality if possible.

E.g. if using Fridge Constant, where the actual temp probe controlling the cooling is the "Fridge" temp probe, I would like that to read "beer" or "Fermenter #" or "Tank #". I would also like to have probe for "Glycol". "Room" ( ambient ) exists so no issue there I don't think.

I don't know if that interferes with some "hard code", I am ignorant to how these systems are built and what the precedence's are in place that have to be overcome.
 
Correct, it needs to "learn" the inertia in the system in the beginning.

Correct. as a matter of fact, you do not need a Beer temp probe when using Fridge Constant.

We'll get there.

When I've had this issue it's been bad connections to the board from the sensors.

I had the problem again with another USB cable so its something else. Could it be that the cable of the temperature sensor is too long? It was 3 meters but I've cut it to 2,5m.
 
I have almost three dozen ds18b20 probes, all of them 3 meters long. No issues.
Are you running the probes on 5V or 3.3V?
Unless you have a DVM, don't assume the root cause of the problem is not using USB power to run the Arduino...

Cheers!
 
I have almost three dozen ds18b20 probes, all of them 3 meters long. No issues.
Are you running the probes on 5V or 3.3V?
Unless you have a DVM, don't assume the root cause of the problem is not using USB power to run the Arduino...

Cheers!
The probes are connected to 5V but I don't know what DVM means.
 
digital voltage meter.
To measure the 5V on the Arduino with it connected via USB.
fwiw, I found most USB cables - even 18" long models - from RPi to Uno resulted in the 5V level on the Uno sitting around 4.75 volts.
That's why all of the Unos and Megas I run use a 9V wall wart supply connected to the coaxial power input...

Cheers!
 
Is there a way to change the monikers "beer", "fridge" on the LCD / web UI Display? I can certainly just know that the "Fridge" temp is the temp of my unitank probe, and that another probe, beer, room, or other is my glycol but I certainly would like the ability to have the display relate to my reality if possible.
Anything is possible. Generally speaking, the code is FULL. When I did the I2C changes I ended up having to remove some random letters here and there from strings to keep from crashing. So, while possible, I've got a low threshold for pain when it comes to making that sort of change. Allowing user customization would be more trouble than it's worth but if I get a stroke of brilliance, figure out how to use fewer letters AND can come up with something that will make universal sense ... I'll give that a tentative "maybe." :)
 
Anything is possible. Generally speaking, the code is FULL. When I did the I2C changes I ended up having to remove some random letters here and there from strings to keep from crashing. So, while possible, I've got a low threshold for pain when it comes to making that sort of change. Allowing user customization would be more trouble than it's worth but if I get a stroke of brilliance, figure out how to use fewer letters AND can come up with something that will make universal sense ... I'll give that a tentative "maybe." :)

Thanks, if there is anything I can do to help and not make it worse I will be happy to.
 
Right now, obvious terminology aside, using the chamber sensor in fridge constant should be a very good indication of what we can easily pull off. Test if you can in situ (with water of course) and see what you get.

Once the functionality is nailed we can worry about changing strings.
 
I totally thought BrewPi was for attractively listing/displaying all of your brews on the iPad/TV that so many people have done...

Can someone help me what that is referred to as on this site? I know I've seen it around =)
 
I am brewing an NEIPA with kveik that needs to run hot. I set up a profile that has the beer running at 90°F for most of the time. However, once active fermentation died down the system can no longer hold the beer at 90°F. Instead, the fridge temp is being calculated at 86°F. I am assuming it has to do with the PID control, but I would love your input. Any thoughts on how to boost this a little higher?
AtEm6vN - Imgur.png
o1UZUtw - Imgur.png
Z1I2Hhh - Imgur.png

AtEm6vN

Z1I2Hhh
 
Here's wishing all of the BrewPi family a very happy Thanksgiving. May your teams win, your dinner rolls never run out, and your turkey be juicy and delicious.

3hu98w.jpg
 
Happy Thanksgiving to yall too.

I'm messing with my third box and I'm at an wall. Every thing works except for one led when the switch is on auto. LED works when the switch is on manual. I've checked the wiring...could it be the switch?

ETA: nevermind Found it. The switch to d5 had come unplugged
 
Last edited:
Could be, or more likely the way the switch is wired. What wiring plan did you follow and/or what configuration are you going for?
 
Announcing: BrewPi Technology Uplift / Feature Release 0.5.4.0

I had intended that 0.5.4.0 be a pure feature release. That plan was derailed by the fact that Python 2.x is being sunset by the Python Software Foundation. In case you are not aware, the main BrewPi Remix scripts are written in Python. Sunsetting means that they will not improve it anymore after that day. Even more importantly, if someone finds a security problem in it, it will not be fixed. Because of this, I took a considerable amount of time porting to Python 3. Because security is exceedingly important, you should upgrade to BrewPi Remix 0.5.4.0 as soon as possible.

Notable changes in this release:

  • Porting scripts to Python 3
  • Add support for Tiltbridge (*1)
  • Add support for iSpindel (*2)
  • Add a "status board" to indicate:
    • Tilt Temp (I am not going to track 801 different temps in the chart when we control temperatures from the DS18B20's)
    • Tilt Battery (age in weeks)
    • iSpindel Temp
    • iSpindel Battery (in VDC)
  • Removed Bleacon in favor of a branch of Aioblescan
  • UI Uplift: Fresh(er) look for the web interface
Existing users of BrewPi Remix 0.5.3.0 and above may upgrade with:
Code:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3.0 or above, use the following command to upgrade to the latest version:
Code:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi directory or from each chamber directory in multi-chamber mode.

  1. To add Tiltbridge, you must have the tiltColor configuration set in your config.cfg in the format tiltColor = Purple. This is identical to Tilt configuration. Point Tiltbridge to the brewpi-api.php file as it's target. This is currently listed as "Fermentrack" within the Tiltbridge configuration, but maybe @Thorrak will address that aesthetic matter in issue #13 in the Tiltbridge project. If you are using a multi-chamber configuration, point the Tiltbridge at the multi-api.php in the root of your website, and it will forward all Tilt beacons to all of the configured chambers. In that case, the tiltColor tells the instance which one to read.
  2. To add iSpindel, you must have the iSpindel configuration set in your config.cfg in the format iSpindel = iSpindel-Yellow. The name or color used is configured within the iSpindel configuration portal. Point iSpindel to the brewpi-api.php file as it's "HTTP" service type on port 80. More information may be found in the iSpindel documentation. If you are using a multi-chamber configuration, point the iSpindel at the brewpi-api.php in the directory corresponding to the chamber you wish to serve.
Enjoy.
 
Announcing: BrewPi Bug Squashing Realease 0.5.4.1

First of all, I'd like to thank whoever it was who answered: "Yes" to enable "Tilt" when they installed but didn't have a Bluetooth dongle in their Pi. It let me load-test my Sentry account and ferret out a new way to crash. Over 5,000 errors later in my Sentry dashboard (which shot me off of the free version by the way) and I have a fix.

I have pushed this fix along with a few others to 0.5.4.1 in Scripts (I did not increment Tools or WWW.) As always, existing users of BrewPi Remix 0.5.3.0 and above may upgrade with:
Code:
sudo /home/brewpi/utils/doUpdate.sh
If you are not on version 0.5.3.0 or above, use the following command to upgrade to the latest version:
Code:
curl -L upgrade.brewpiremix.com | sudo bash
This must be run from within your /home/brewpi directory or from each chamber directory in multi-chamber mode.

Changes are:
 
Last edited:
Status
Not open for further replies.

Latest posts

Back
Top