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.
Hello all - this is my first post in what is now a very large and informative thread! a big thank-you goes out to all that have gone before me and especially Fuzze for kicking it off!

Ok, I've put this thing together and had all sorts of problems where if I looked at the RPi funny it would stop working! ;) but I pushed on and got it working, well mostly!

Question: When I setup a a new beer profile and save it, it seems to attach the current Fridge constant (FC) to the profile and when I apply the profile, it uses FC instead of my set point. I thought that was strange, so to confirm I made another profile but first changed the FC value to something else, created a new beer profile and hit apply again. Sure enough it used the new FC value as the setpoint. Is this normal behaviour???

Please be aware that this was only in testing mode ie. Fridge probe inside fridge, Beer probe outside fridge which could be the issue?

I've searched the thread as well as brewpi but can't find anything that pertains to this issue, specifically what effect does the FC have on beer profile setpoints.

Can someone please enlighten me? or point me to the Web UI documentation?

Cheers!
 
The fridge constant will shift based on what it thinks it needs to have the chamber set at to keep your beer at the specified temp. You can ignore it if your really in beer profile mode.

Try keeping them both in the fridge one near the bottom and one near the top and set your profile up, it should work i havent heard of that issue before.

As you leave it on, in the top left you should see what the fridge currently is and what its setting is, the setting should shift over time if its trying to heat or cool.
 
Trying to figure out this part, but can i just cut and paste these two things in to sudo nano and create the files(Public.php and PublicBeerPanel.php) that way?

You sure can, although i think there are still some vulnerabilities that are out there for malicious people to screw with public brewpi setups.

There are things we can do to make it harder, but the code wasnt designed in such a way for this type of thing so there are openings we cant close that some users here have brought to light.

I may take the instructions down, but for now ill leave them up with the warning you shouldn't make your BrewPi public URL known, its fine if you have it open and know it and password protect it...just dont post the URL for the bad guys to screw with you.
 
okay. Is installing openVPN a viable option? I know a few people mentioned it but was wondering if there where any special steps.

Well whatever. As is this thing is freaking awesome. Thanks again! Fuzze
 
okay. Is installing openVPN a viable option? I know a few people mentioned it but was wondering if there where any special steps.

Well whatever. As is this thing is freaking awesome. Thanks again! Fuzze

I use openVPN at home (on a pfsense router). If I need to make changes remotely I get on the home VPN, otherwise I just check on the public chart from work or my phone or whatever when I want to see what's going on.
 
Fuzze thanks for the quick reply. I've now set up a water bottle sitting on a heat pad to stimulate an FV stuck the beer probe into it and let the fridge probe dangle freely inside also. Activated a test beer profile to a set point of 12c and let it ride. After about 30 mins the lcd on the top left of the web UI stalls and the only way I can get it back to life is to stop and start the script.The error I'm seeing is below... Any ideas??

Thanks!

Jul 03 2014 16:52:30 JSON decode error: Unterminated string starting at: line 1 column 1 (char 1)
Jul 03 2014 16:52:30 Line received was: L:["Mode Beer Profil
Jul 03 2014 16:58:19 Socket error(32): Broken pipe
Traceback (most recent call last):
File "/home/brewpi/brewpi.py", line 459, in
conn.send(json.dumps(cs))
 
That looks like a communication error between the BrewPi host and the Arduino. I was seeing something similar when I was having USB issues with a suspect hub...

Cheers!
 
Yea looks like a janky USB cable or something, im assuming your Profile and or beer name doesnt have any special characters or anything in it?
 
Thanks guys, will look at getting a replacement usb cable. Ah well back to the STC1000 for my black rye PA that needs to go in pronto.

Cheers :)
 
Replacement cable found and it miraculously jumped back into action! Will leave for 30mins to see what happens... Fingers and toes crossed ;)
 
I have a brew down at the moment and have been playing with tuning the setup as it brews. Thought I'd share what works for me so far.
I managed to reduce the fridge/heater cycling by reducing the heater wattage and reducing the Kp setting.
Ambient temp has been 5.5deg C to 20 deg C.
I am using a simple incandescent bulb setup until my you beaut chinese heater arrives lol. Looks like I might have to rethink that one as it is 200w. Maybe put a dimmer in line with it to dial down the output.
:)

View attachment brewpi 2014 07 03.pdf
 
Thanks for doing the legwork to put this guide together! I managed to get mine running on a Parallels virtual machine running Debian Wheezy in a window on an old MacBook. I did the manual install from the BrewPi site and had no problems.

I bought a ten pack of unwired temp sensors. On my first run, I had the same "lights on the Arduino going out" problem that stewart194 had. Turns out I had wired the 5V on one to the ground on the other. Great attention to detail on my part. Anyway, it's chugging along smoothly now. Thanks again everybody!
 
So I rebuilt a Debian machine, and even used a completely different netbook just to rule out any funky hardware issues that it might have had. Running into a problem though while trying to copy the brewpi directory and it's contents from github to my brewpi folder on my PC. I get "Error: server certificate verification failed. Fatal: HTTP request failed."

When I use iceweasel and go to the URL on github it gives me a warning telling me there is a problem with the certificate, but I can add an exception and then get to it. Any ideas on how to fix this?

I was able to copy the folder though to my machine through the browser, but I can't copy them from my user account to the brewpi folder on my PC because I don't have the appropriate rights. Should I try to give my user account admin rights to that brewpi folder? Or is there a way to fix the SSL cert error once and for all so I don't have to deal with it in the future?

Thanks in advance!
 
Make sure your system has the correct date and time set for your zone.
If your system datetime is off enough certificate validation will often fail...

Cheers!

[edit] Missed the other question. Either preface the move or copy command with sudo, or just temporarily give your user account root privs by using the "sudo su" command.
You can wreak whatever havoc you wish, then "exit" back to your user account...
 
Have you just tried running the installer that comes in the BrewPi-tools? It should work on a Debian PC as well as a RPI from a base install having nothing else put on it yet.
 
Make sure your system has the correct date and time set for your zone.
If your system datetime is off enough certificate validation will often fail...

Cheers!

[edit] Missed the other question. Either preface the move or copy command with sudo, or just temporarily give your user account root privs by using the "sudo su" command.
You can wreak whatever havoc you wish, then "exit" back to your user account...

Thanks! I hadn't noticed that the time was off on this new machine. I changed that and was able to get everything.

Now though, I can't remember where to download that hex file Rev C for my Uno Arduino board. I remember doing this manually and putting it in my local user's "Documents" folder. When I find that step here http://docs.brewpi.com/manual-brewpi-install/using-git-for-brewpi.html and go to this URL http://dl.brewpi.com I can only get the code and not the file itself. Where can I get the actual file?

Thanks again!
 
Have you just tried running the installer that comes in the BrewPi-tools? It should work on a Debian PC as well as a RPI from a base install having nothing else put on it yet.

Hey Fuzze -

day_trippr helped me out with this one, but I do have a few questions for you.

1. Does my temp probe have to reach all the way to the bottom of my thermowell to get an accurate temp?

2. I just read your recent post about the USB cable issue. Are you suggesting that I should use an external power supply to power the Arduino? I was just letting the USB cable power it from my PC. Do you think that may have been causing my problems? Not using a seperate power supply to power it?
 
Thanks! I hadn't noticed that the time was off on this new machine. I changed that and was able to get everything.

Now though, I can't remember where to download that hex file Rev C for my Uno Arduino board. I remember doing this manually and putting it in my local user's "Documents" folder. When I find that step here http://docs.brewpi.com/manual-brewpi-install/using-git-for-brewpi.html and go to this URL http://dl.brewpi.com I can only get the code and not the file itself. Where can I get the actual file?

Thanks again!

Your second link is right, find the Uno Rev C, right click the filename and save file as.
 
Hey Fuzze -

day_trippr helped me out with this one, but I do have a few questions for you.

1. Does my temp probe have to reach all the way to the bottom of my thermowell to get an accurate temp?

2. I just read your recent post about the USB cable issue. Are you suggesting that I should use an external power supply to power the Arduino? I was just letting the USB cable power it from my PC. Do you think that may have been causing my problems? Not using a seperate power supply to power it?

1) Depends how far down your thermowell is going into your liquid, my thermowell is a bit long and goes all the way to the bottom of my bucket, so to keep it out of trub i shove it all the way in and pull it up a few inches so its near what i'd consider the middle. Or you could be smart and just measure how tall it is to the middle area of your carboy and mark your probe cable with a sharpie or tape or something that far down so you know how far to put it each time.

2) Could be, but unlikely if you werent seeing the Sensors at all...usually the USB issues show themselves as gaps in your graph due to the arduino just resetting randomly. Powering it externally isnt a bad idea if you have a wonky usb setup, like running a super long cable like someone else was, or going through multiple connectors...and keep the USB cable away from your power cables and relays switching high voltage.
 
Well I thought I was good but after messing around with trying to get this thing on the internet, I can no longer get to my web interface. I should have stopped while I was a head.
 
Thanks for making this thread! Put everything together temporarily over the last few days, and it is now controlling a cream ale we brewed yesterday. Its holding the temp within .2 degrees or less right now, using a freezer and a 60 watt lightbulb. Also have a couple small fans to keep things circulating. Now I just need to tidy everything up in a project box and maybe some disconnects for the temp probes. Cheers!
 
Mine looks like a train wreck, but it's working really well. I've got 10 gallons of a Belgian Blonde it's kept within 0.1F of target temps after pitching last night. This little device is so damn cool.

I do need to tidy everything up in a project box.

screenshot.jpg


frankenstein.jpg
 
Mine looks like a train wreck, but it's working really well. I've got 10 gallons of a Belgian Blonde it's kept within 0.1F of target temps after pitching last night. This little device is so damn cool.

I do need to tidy everything up in a project box.

Good to hear mines even more of a trainwreck and fire hazard im sure its splayed across my concrete floor in the garage outside the fridge.

My lager is finally done crashing so i can take my brewpi apart and put it in a proper box now.

Glad its working!

Curious though, did you do something to make your top left LCD screen show the Room temp? Mines always shown the Beer and Fridge temps...
 
...

Curious though, did you do something to make your top left LCD screen show the Room temp? Mines always shown the Beer and Fridge temps...

Hmm... I don't think so. Whenever I have a room temperature sensor assigned it alternates that second row between displaying fridge temp & room temp.
 
I mentioned that a few posts back: a third probe gets you a Room Temperature curve plot, and the "LCD" alternates the third line between Fridge Temp/Fridge Setting and Room Temp/<Blank> on roughly 10 second period.

I'm really loving the charting library they pulled into BrewPi. I'm starting to dig into that piece as I want to remove my current dependency on using Google to generate the plots for my temperature logger...

Cheers!
 
Mine looks like a train wreck, but it's working really well. I've got 10 gallons of a Belgian Blonde it's kept within 0.1F of target temps after pitching last night. This little device is so damn cool.

I do need to tidy everything up in a project box.


Looking good ! Couple of questions
Are you using a fan to circulate the air?
What heat source and wattage are you using?
What are your Kp Ki and Kd settings?
does your room temp fluctuate much?
Thanks


Sent from my iPhone using Home Brew
 
Thanks for making this thread! Put everything together temporarily over the last few days, and it is now controlling a cream ale we brewed yesterday. Its holding the temp within .2 degrees or less right now, using a freezer and a 60 watt lightbulb. Also have a couple small fans to keep things circulating. Now I just need to tidy everything up in a project box and maybe some disconnects for the temp probes. Cheers!

hey veedo can you post a picture of your graph and fridge setup
are you runnning a room temp probe ?
whats your Kp,Ki,Kd settings?
thanks
 
hey veedo can you post a picture of your graph and fridge setup
are you runnning a room temp probe ?
whats your Kp,Ki,Kd settings?
thanks

I know I'm not veedo, but if you want to see my live graph it's at http://home.webboise.com:81 - All of my PID values are at default and it's staying within 0.1F of the setpoint in a hot-ass garage. Picture of the setup a few posts up. Oh, and I'm not using any fans. Just the freezer and my wife's Scentsy warmer. I think it is a 20w bulb.
 
All my settings are at default. I do have a room temp probe. My thermo well is actually just silicon tubing sheathing the probe wire, down to the end of the probe where it makes a tight seal around the stainless part. I'd like to change this to an all stainless one at some point, but its sealed on both ends and works for now. There is one more fan that you can't really see in the pic but its at the bottom somewhat pointed towards the freezer lid. The freezer probe is hanging from the top center of lid. Hope this helps.

1404513251315.jpg


1404513269151.jpg
 
I'm just not having much luck on this project unfortunately. I've rebuilt my debian machine from scratch several times, tried a completely different PC / different model of PC, etc, etc.

I also tried to create a Pi user and assign it to the sudo users list, take out the rpi-update in the script, then run the automatic script as suggested in this thread. While it did make it a lot further through the process, it got stuck on creating users and assigning them rights. So I manually did this and ran the script again. This time it made it and said "happy brewing!" or something at the end.

But right now, on two different machines, one I followed the manual steps and the other I did the automatic script...on both of them I'm getting this error while trying to upload the Rev C .hex file to program the Arduino. "Cannot open log file /home/brewpi/logs/stderr.txt" When I browse to that logs folder in terminal it is completely empty.

Any ideas? As usual....thanks in advance!
 
Check the ownership of the entire brewpi folder structure.
Generally, not being able to open a file for write (eg: stderr.txt) is because the process doesn't have the correct rights to the folder...

Cheers!
 
I have a couple of questions for y'all. I usually ferment one batch at a time, but occasionally I will have 2 in the chest freezer at once (both have ferm-wraps so they can be independently controlled). I will just have the beer that is at the cooler temp run the freezer, and just have a ferm-wrap on the other one. So I have gathered that if I want 2 different beer profiles I will need 2 Uno's which is no problem as I have a few laying around. Would I need two of the 2 relay units, or could I get away with a 4, 6, or 8 unit? I am also looking at running Raspberry Pints. Has anybody done this where the Pi will be posting to 3 websites?

Also I was thinking about using an old tablet as my display which I could wall mount for pretty cheap. Does anyone run a display from a tablet? I am not sure if I can tweak it to always keep the screen on, I will need to do a little google-fu for that one.

Thanks,
-G
 
Check the ownership of the entire brewpi folder structure.
Generally, not being able to open a file for write (eg: stderr.txt) is because the process doesn't have the correct rights to the folder...

Cheers!

Thanks! I'm researching how to do that now. One other thing worth mentioning is that when I run the fixPermissions.sh script I get an error that says fixPermissions.sh:23: Bad substitution -e
 
I have a couple of questions for y'all. I usually ferment one batch at a time, but occasionally I will have 2 in the chest freezer at once (both have ferm-wraps so they can be independently controlled). I will just have the beer that is at the cooler temp run the freezer, and just have a ferm-wrap on the other one. So I have gathered that if I want 2 different beer profiles I will need 2 Uno's which is no problem as I have a few laying around. Would I need two of the 2 relay units, or could I get away with a 4, 6, or 8 unit? I am also looking at running Raspberry Pints. Has anybody done this where the Pi will be posting to 3 websites?

Also I was thinking about using an old tablet as my display which I could wall mount for pretty cheap. Does anyone run a display from a tablet? I am not sure if I can tweak it to always keep the screen on, I will need to do a little google-fu for that one.

Thanks,
-G

Should work with a 4 relay unit if you wanted, you would have 4 in pins, two from each arduino sharing the same 110V power.

I know there are others who have run RPInts + BrewPi here, not sure if anyones run two brewpi's plus a RPints...

I use my Kindle Fire HD 8.9 to set my temps all the time, its not wall mounted or anything though i dont think thats necessarily needed.

If your going to setup RPints, i'd do it with a touch screen(or tablet) that has links to your BrewPi setup, i know a few people here do that with links from their RPints to their public Brewpi page.
 
Thanks! I'm researching how to do that now. One other thing worth mentioning is that when I run the fixPermissions.sh script I get an error that says fixPermissions.sh:23: Bad substitution -e

What folder is your fixPermissions.sh file in? What is the full path? Looking at line 23 i cant see anything really that interesting...
 
I know I'm not veedo, but if you want to see my live graph it's at http://home.webboise.com:81 - All of my PID values are at default and it's staying within 0.1F of the setpoint in a hot-ass garage. Picture of the setup a few posts up. Oh, and I'm not using any fans. Just the freezer and my wife's Scentsy warmer. I think it is a 20w bulb.


Had a look at your graph. Looks good. Mine still fluctuates a fair bit. Based on yours and Veedos I just pulled the 100w and went to 40w and back to default settings for Kp Ki Kd to se how it goes. Thanks.


Sent from my iPhone using Home Brew
 
All my settings are at default. I do have a room temp probe. My thermo well is actually just silicon tubing sheathing the probe wire, down to the end of the probe where it makes a tight seal around the stainless part. I'd like to change this to an all stainless one at some point, but its sealed on both ends and works for now. There is one more fan that you can't really see in the pic but its at the bottom somewhat pointed towards the freezer lid. The freezer probe is hanging from the top center of lid. Hope this helps.


Looks good. I just dropped to 40w to see how it goes.
My probe is a chinese one as a lot are using here. Premade with a 2 m lead.
I have it inside a 1/2 inch OD stainless tube welded off at the end about 12 inches long. I put 1/2 inch of silicon grease in the bottom off the 1/2 inch pipe to seat the probe soo that it might transfer the heat better.
This setup might be all I need but wonder if it might be better to have a thinner walled tube.


Sent from my iPhone using Home Brew
 
Maybe the 1/2 inch is too much and giving some slow readings? Or the grease? If you could get your hands on some 3/16id silicon tubing, you could use that as an experimental thermowell, it slips nicely around the probe ends. 40 watt might be the sweet spot. I know 15 watts is too slow to make a change in my freezer. Keep us posted, cheers!
 
What folder is your fixPermissions.sh file in? What is the full path? Looking at line 23 i cant see anything really that interesting...

It's in /home/brewpi/utils. Maybe I'm missing something simple. During a fresh install of Debian I create a user named stewart. After the install I then create a user named pi and add it to the sudoers list. Login is pi and run the auto script. It failed while trying to create users and set permissions. So then I followed the manual steps to create the users and set permissions, then ran the automatic script again and it made it but gave me some errors. They didn't seem like critical errors though...just like it was skipping things that were already installed from the first time I ran the automatic script.

It would definitely be nice to be able to run that autoscript and have everything work the first time. Just for fun I put the stewart user and the brewpi user in the sudoers list also, but it didn't make any difference.

The only other thing that seemed strange on this latest attempt is that I can't run any .sh script without typing sudo sh first. I can't just type /home/brewpi/utils/fixPermissions.sh. It gives me a "command not found". But if I browse to the root of utils and then type sudo sh fixPermissions.sh then it runs fine.

One other thing that may or may not make any difference...since I created the user pi and ran the automatic script from that user, it puts the brewpi-tools folder in home/pi. So it isn't in home/brewpi. Would I be better off just creating only one user called brewpi? Or would the automatic script fail to create a user that already exists?
 
Status
Not open for further replies.
Back
Top