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.
That wont really get you anything, the RPI is running Debian not a graphical interface. If you installed that on the RPI you'd have a $80 black and white linux terminal that does nothing. The entire thing is web based, there is a way to rig in a very basic LCD screen like this
brewpi-soldering-47.jpg


But i dont know exactly how that wiring works, its not straight forward what pins go where you'd have to work with the BrewPi guys on IRC to figure that out because you also have to wire up their rotary encoder to actually change temps manually using the screen.... Honestly I think its a waste of time, just pull out your smart phone and make changes, its a much better interface. But whats important is up to you i suppose :) I just purposefully left this build as simple(and cheap) as possible.

The RPI is literally just a dumb linux server hosting a website, nothing more. There is no point in attaching any LCD too it, its no different than attaching a HDMI monitor or just using Putty to SSH into it, it will just be a black/white terminal. I'd hate to see anyone waste their money on one thinking otherwise.
 
Eh. Yeah. It's not necessary. But I wouldn't mind having a display in case the Pi's web server cores or the Pi loses network connection or whatever. That way, I could tell at a glance that my beer temp didn't climb way over where it should be. I may order an LCD like comes with a BrewPi so I can just wire it up like it is originally designed.
 
Eh. Yeah. It's not necessary. But I wouldn't mind having a display in case the Pi's web server cores or the Pi loses network connection or whatever. That way, I could tell at a glance that my beer temp didn't climb way over where it should be. I may order an LCD like comes with a BrewPi so I can just wire it up like it is originally designed.

Now thats the best reason I've heard for an LCD display...
 
Just get a $18 remote thermometer if all you want is independent temp, like this
 
Last edited by a moderator:
Now thats the best reason I've heard for an LCD display...

Thats the whole reason for the Arduino in the first place, because whatever temperature you set via the BrewPi interface will continue to operate if the RPI dies...theres no need to have a LCD to show you this.

If your temperature control is broken, that means the arduino is broken, which means your LCD is worthless anyways :)
 
Not necessary, yes. Worthless, I don't think so. I walk by my fermentation chamber many times a day mad like to be able to look at it to see what it's doing. Hehe. To each his own. :)


Sent from my iPad using Home Brew
 
Not necessary, yes. Worthless, I don't think so. I walk by my fermentation chamber many times a day mad like to be able to look at it to see what it's doing.

I think you missed Fuzze's point: the Arduino is a simple state machine, and if it locks up or otherwise loses its way, it isn't going to be able to drive the display to tell you anything is right, wrong, or otherwise. Most likely when the Arduino croaks whatever was on the display will simply remain...

Cheers!
 
Not necessary, yes. Worthless, I don't think so. I walk by my fermentation chamber many times a day mad like to be able to look at it to see what it's doing. Hehe. To each his own. :)


Sent from my iPad using Home Brew

Isnt that what a smart phone is for? ;) Why spend $20+ to hook up a crappy 3 line LCD lol..you could buy a old Iphone gen1 or some cheap old android tablet on CL for less and leave on at your fermenter, and have a better screen just constantly displaying the web interface.

If its just for the DIY factor i suppose i can understand, its just such a worthless component in the brewpi setup IMO.
 
Isnt that what a smart phone is for? ;) Why spend $20+ to hook up a crappy 3 line LCD lol..you could buy a old Iphone gen1 or some cheap old android tablet on CL for less and leave on at your fermenter, and have a better screen just constantly displaying the web interface.

If its just for the DIY factor i suppose i can understand, its just such a worthless component in the brewpi setup IMO.


Now that's a good idea!! I may be rethinking the LCD.


Sent from my iPad using Home Brew
 
Although, I don't think I have outlet room out there to have one plugged in all the time. Hmmm. Still something to think about.


Sent from my iPhone using Home Brew
 
Thats the whole reason for the Arduino in the first place, because whatever temperature you set via the BrewPi interface will continue to operate if the RPI dies...

Hey Fuzze

I've seen you mention this on more than one occasion. How often does the rpi die generally? Is it wise to just go ahead and reboot the rpi on a regular basis?
 
Hey Fuzze

I've seen you mention this on more than one occasion. How often does the rpi die generally? Is it wise to just go ahead and reboot the rpi on a regular basis?

I think it was a much bigger problem with the initial rev's of the RPI, but this generation has been out for so long and seems very stable.

Granted its only as stable as what you put on it, im sure there are more than a few Debian/Linux packages you could install to make it crash more, like any PC. But with just a brewpi setup which is just python and apache you should never have issues those are pretty rock solid applications, administrators around the world use those on web servers that run 24/7 365...

But the reason for the RPI is still necessary to actually host the web application, an arduino isnt powerful enough. And its just a overall good idea because things do happen, faulty RPI's get made...if one goes out you dont want your fridge freezing everything, or worse getting stuck hot and potentially starting a fire depending on what heating source you use.
 
Hey everyone. I built a BrewPi using an old machine running Ubuntu. Everything works great, except every once in a while the computer stops talking to the Arduino. It gives the error that the Arduino version cannot be received. I have the relevant log file below. Any ideas on how I can fix this? If it cannot be fixed, anybody know of a way I can have the machine auto reboot when this error arises? Thanks!

Jun 07 2014 20:10:58 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 53.3, estimated: 53.3. Previous cool estimator: 1.758, New cool estimator: 1.758.
Jun 07 2014 21:09:56 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 59.8, estimated: 61.2. Previous cool estimator: 1.758, New cool estimator: 2.148.
Jun 07 2014 21:56:25 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 67.2, estimated: 66.8. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 07 2014 22:38:34 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 69.3, estimated: 69.0. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 07 2014 22:48:00 Setting profile 'Normal Ale Fermentation' as active profile
Jun 07 2014 22:48:00 Notification: Profile mode enabled
Jun 07 2014 22:48:00 Arduino debug message: INFO MESSAGE 12: Received new setting: mode = p
Jun 08 2014 00:00:00 Notification: New day, creating new JSON file.
Jun 08 2014 02:04:42 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 69.4, estimated: 69.2. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 02:32:26 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 63.4, estimated: 66.2. Previous cool estimator: 2.148, New cool estimator: 2.676.
Jun 08 2014 03:16:26 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 68.5, estimated: 68.2. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 03:42:20 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 62.8, estimated: 65.4. Previous cool estimator: 2.676, New cool estimator: 3.322.
Jun 08 2014 04:23:32 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 68.0, estimated: 67.7. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 04:47:49 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 63.0, estimated: 65.5. Previous cool estimator: 3.322, New cool estimator: 4.119.
Jun 08 2014 05:26:28 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 68.1, estimated: 67.9. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 07:27:21 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 69.0, estimated: 68.7. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 07:56:50 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 64.1, estimated: 66.5. Previous cool estimator: 4.119, New cool estimator: 5.107.
Jun 08 2014 08:34:38 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 68.5, estimated: 68.3. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 09:58:20 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 63.9, estimated: 65.7. Previous cool estimator: 5.107, New cool estimator: 6.273.
Jun 08 2014 10:33:55 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 68.0, estimated: 67.6. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 11:06:25 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 63.8, estimated: 65.5. Previous cool estimator: 6.273, New cool estimator: 7.705.
Jun 08 2014 11:41:51 Arduino debug message: INFO MESSAGE 17: Positive peak detected: 68.0, estimated: 67.7. Previous heat estimator: 0.199, New heat estimator: 0.199.
Jun 08 2014 12:11:34 Arduino debug message: INFO MESSAGE 18: Negative peak detected: 64.1, estimated: 65.7. Previous cool estimator: 7.705, New cool estimator: 9.449.
Jun 08 2014 12:11:34 JSON decode error: Expecting ',' delimiter or '}': line 1 column 87 (char 86)
Jun 08 2014 12:11:34 Line received was: T:{"BeerTemp": 67.92,"BeerSet": 68.00,"BeerAnn":null,"FridgeTemp": 64.07,"FridgeSet": 67.
Traceback (most recent call last):
File "/home/brewpi/brewpi.py", line 686, in
for line in ser: # read all lines on serial interface
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 460, in read
raise SerialException('device reports readiness to read but returned no data (device disconnected?)')
serial.serialutil.SerialException: device reports readiness to read but returned no data (device disconnected?)
Jun 08 2014 12:12:02 Notification: Script started for beer 'Centennial Blonde'
Jun 08 2014 12:12:30 Warning: Cannot receive version number from Arduino. Your Arduino is either not programmed or running a very old version of BrewPi. Please upload a new version of BrewPi to your Arduino.
Jun 08 2014 19:43:04 Notification: Script started for beer 'Centennial Blonde'
Jun 08 2014 19:43:15 Found BrewPi v0.2.4, running commit c0771c25 build 39, on an Arduino standard with a revC shield on port /dev/ttyACM0
 
Are you using a usb hub? I can almost guarantee its your usb port. When its going down your losing power to the arduino so it thinks its not there anymore and gives you that message its not programmed. Try a different usb port, and maybe check your bios settings for usb if there's any power settings that may be causing it to turn off or supply low power.
 
Okay, so I'm getting married this weekend and have had very little time to work on my set up. That said I am having trouble getting it sent to the web. I have a site and pick up a DNS service. Mainly its my lack of coding. Reading the instructions on page 9, which are great BTW. Though I'm not sure what kind of editor is being referred to in the post and some as simple as "create a folder called XXX" is tripping me up cause I haven't worked in commands all that much.

When I get a chance to try again, would one of you guys be willing to help me out via pm so I don't fill this thread full of my silly questions?
 
Thanks Fuzze. I'll check that out. I have another more frustrating problem... I'm trying to set up my BrewPi web interface to be accessible anywhere via my IP address. I have been able to connect to it just fine without any security, but once I try to add an .htaccess file, all I get is a 500 error. I've tried extremely simple htaccess files and I've directly copied yours, but no matter what I try, this is all I get:
https://www.dropbox.com/s/svoh6ood0b83wvs/Screen Shot 2014-06-09 at 11.45.14 AM.png

The apache logs aren't any help either... I'd love to be able to get this working without having to SSH into my computer and edit my apache2.conf file every time I want to view it.
 
Thanks Fuzze. I'll check that out. I have another more frustrating problem... I'm trying to set up my BrewPi web interface to be accessible anywhere via my IP address. I have been able to connect to it just fine without any security, but once I try to add an .htaccess file, all I get is a 500 error. I've tried extremely simple htaccess files and I've directly copied yours, but no matter what I try, this is all I get:
https://www.dropbox.com/s/svoh6ood0b83wvs/Screen Shot 2014-06-09 at 11.45.14 AM.png

The apache logs aren't any help either... I'd love to be able to get this working without having to SSH into my computer and edit my apache2.conf file every time I want to view it.

Try keeping only your .htaccess file in the private folder. Keep your php files all in the /var/www directory. I cant play with mine now and maybe someone else can verify but i suspect that some of the paths in the BrewPi PHP script are relative paths, so by having the PHP file in its own folder it cant find the other scripts it needs to load.
 
Okay, so I'm getting married this weekend and have had very little time to work on my set up. That said I am having trouble getting it sent to the web. I have a site and pick up a DNS service. Mainly its my lack of coding. Reading the instructions on page 9, which are great BTW. Though I'm not sure what kind of editor is being referred to in the post and some as simple as "create a folder called XXX" is tripping me up cause I haven't worked in commands all that much.

When I get a chance to try again, would one of you guys be willing to help me out via pm so I don't fill this thread full of my silly questions?

Good luck with the wedding, just had ours over a month ago so i know the stress levels ;)

If you do figure it out post what you ended up doing, there's no real dumb questions as chances are any problems your having someone else down the line will have.
 
I wasnt happy with my BrewPi yesterday - when I finished up the the fermenting run, the script quit and wouldnt restart.

It was complaining about the wifi settings - and Im not using wifi...

Since it was brew day and I needed NOW, I reloaded the pi and did the automatic install - I lost my profiles and some data but its working again. I just might ghost the SD card so that if I have issues, I can just re-image the card and start over quickly.
 
I have it set up so only my htpasswd file is in the private folder. All other php files are in the wwwfolder. The content of my htaccess file is identical to yours, but when I edit my apache2.conf file to AllowOverride All in /var/www, I get an error unless my htaccess file is blank or close to blank. If anyone thinks they know what's going on and is good with a command line, I'd be willing to give SSH access to my machine so you could poke around.
 
fwiw, I have two BrewPi instances and my temperature logger php files all "protected" by the same .htaccess file - which is located at /var/www, and is owned by www-data - even though the BrewPi instances are in separate subdirectories below /var/www. Turns out .htaccess is fairly powerful.

I wrote up what I did here if you want to triple-check your steps...

Cheers!
 
[...]I just might ghost the SD card so that if I have issues, I can just re-image the card and start over quickly.

If you're on Windows I recommend win32diskimager.

I could not count how many images I've made - and how many times that's saved me from having to back-track beyond just "the latest experiment". I actually picked up another SD card so I can always have a card with the latest "Golden Image" ready when something totally craters ;)

Cheers!
 
What was complaining about Wifi? The RPI?

Yep - Something about something to do with wpa_supplicant not starting and passing an error code 1.

I dont use wifi...

I'm guessing that one of the updates I did (sudo apt-get update/upgrade) changed something - and I was in too much of a hurry to find what it changed so I flattened the SD card and started over from scratch..

It's working again - and in a better way too... :rockin:
 
If you're on Windows I recommend win32diskimager.

I could not count how many images I've made - and how many times that's saved me from having to back-track beyond just "the latest experiment". I actually picked up another SD card so I can always have a card with the latest "Golden Image" ready when something totally craters ;)

Cheers!

I'm a little of both, but you wouldnt use a tar.gz instead? I could go either way... (where's that little limp wristed smiley...)
 
I wrote up what I did here if you want to triple-check your steps...

Cheers!

On my pi I had to change the default file as outlined in this post, but my file was called 000-default but was in the same directory.

EDIT - I see in that post you outline how to disable the wifi checker! I think that was my pi's problem! anyhow it's disabled now. Thanks!
 
On my pi I had to change the default file as outlined in this post, but my file was called 000-default but was in the same directory.

Do you mean you changed the file so it was named default.config or you followed his directions using 000-default.config?
 
I'm a little of both, but you wouldnt use a tar.gz instead? I could go either way... (where's that little limp wristed smiley...)

I'd say use whatever you know works that can create a true bootable image.

I already had win32diskimager installed and although it's stupid simple it's never let me down...

Cheers!
 
I wrote up what I did here if you want to triple-check your steps

Day_trippr, what post# is that? The URL won't work for me since I changed #posts/pg setting. The URL is pointing to page 46 and I'm seeing this page as page 32.

Unless you've managed to get BrewPi to warp the space-time continuum to post in the future; and if you have, where is that setting on the web interface? :D

Edit: NM, #456, just changed my #ppp and found it. Sorry to be lazy and ask.
 
I figured out my htaccess problem! If this happens to anyone else, here is what I did:

In the folder /etc/apache2/mods-available I found a mod called authz_groupfile.load

I moved this to /etc/apache2/mods-enabled then reset my server and it started asking for authentication for my private file! I'm guessing there should be a mod file for every modifier in the .htaccess file, so that would be a great place to start.
 
With those teeny tiny wires coming out of the prebuilt temp probes, are people really using wire nuts to connect the wiring up? I started twisting some together and thought that there has to be a better way or I'm using the wrong wire size.
 
Im guessing your wire nuts are just too big? The variety pack really is recommended because as you found out some require tiny and some big...
 
With those teeny tiny wires coming out of the prebuilt temp probes, are people really using wire nuts to connect the wiring up? I started twisting some together and thought that there has to be a better way or I'm using the wrong wire size.

I just picked up the variety pack. I used the two smallest sizes and they worked fine.

 
Day_trippr, what post# is that? The URL won't work for me since I changed #posts/pg setting. The URL is pointing to page 46 and I'm seeing this page as page 32.

Unless you've managed to get BrewPi to warp the space-time continuum to post in the future; and if you have, where is that setting on the web interface? :D

Edit: NM, #456, just changed my #ppp and found it. Sorry to be lazy and ask.

No problem, although the fact you had problems getting to that post is kinda strange.
I used a permalink to post #456 just so it wouldn't be affected by people's page length setting.
Can't 'splain that one...

Cheers!
 
With those teeny tiny wires coming out of the prebuilt temp probes, are people really using wire nuts to connect the wiring up? I started twisting some together and thought that there has to be a better way or I'm using the wrong wire size.

LOL! You'd have to use really teensy nuts!

I built some one-wire break-out cards for my various systems and temperature sensors. Once I ran out of old molex 3 pin fan connectors I've been carefully removing the female terminations from Dupont jumpers and soldering them onto the sensor wires. It's a bit of a pita but they work nicely and make swapping things around a piece of cake...

Cheers!

temp_sensor_connectors_sm.jpg
 
Status
Not open for further replies.
Back
Top