• Please visit and share your knowledge at our sister communities:
  • If you have not, please join our official Homebrewing Facebook Group!

    Homebrewing Facebook Group

HOWTO - Make a BrewPi Fermentation Controller For Cheap

Homebrew Talk

Help Support Homebrew Talk:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Status
Not open for further replies.
Guess who has been working on designing BrewPi shields for the past two weeks, corrupted his Raspberry Pi SD card working on another project and found out that his backup was from two iterations ago of his BrewPi multi-chamber bluetooth build, so now does not have any working BrewPi builds? Yep, this guy. Backups people, backups. They are easy to make. Why don't I make them more often?
 
Guess who has been working on designing BrewPi shields for the past two weeks, corrupted his Raspberry Pi SD card working on another project and found out that his backup was from two iterations ago of his BrewPi multi-chamber bluetooth build, so now does not have any working BrewPi builds? Yep, this guy. Backups people, backups. They are easy to make. Why don't I make them more often?
I have been building and rebuilding so much I don't have a current backup - pretty sure I could whip it out again in the amount of time it takes me to re-image. Doing backups would be much smarter but why work smarter when you can just work harder? :)
 
I spent the afternoon setting my system back up. I did it all from putty over ssh. Two things are happening that are both related, that I'm not able to fix.

First, on the Pi itself, when it boots, it boots to a login screen that I've never seen before. It asks for a password and everything I try doesn't work. When I log into putty, I use pi as the user and raspberry as the password and it works great.

Second, I can connect to my bluetooth minion using the rfcomm connect command over putty and it works. I can see the minion working over my laptop. However, when I try to get into /home/pi to add the rfcomm stuff into the config file, I can't get in there. I can get into the /home directory, but when I type cd/home/pi, it takes me to $~

What am I missing?
 
$~ is /home/pi under raspbian… what you need to change should be under /home/brewpi though. and don't forget that everything for the web side either needs to go under /var/www/html or you need to change apache so that the old hierarchy still works.
 
$~ is /home/pi under raspbian… what you need to change should be under /home/brewpi though. and don't forget that everything for the web side either needs to go under /var/www/html or you need to change apache so that the old hierarchy still works.

Thanks for the reply. I figured that out last night. I was totally in the weeds and had forgotten that $~ is /home/pi. Goes to show you the extent of my linux and raspbian knowledge.

Anyway, for posterity's sake, the issue with the GUI login was somehow caused by a file called Xauthority in that directory. I changed the name of that file to Xauthority.bak and magically things are working again.

My other issue with trying to find the /home/pi folder is because @day_trippr correctly indicated in a post in the BrewPi bluetooth thread that you put the auto bind for rfcomm in the autostart file found at /home/pi/.config/lxsession/LXDE-pi/autostart. Mine wasn't there, however. It is in /etc/xdg/lxsession/LXDE-pi/autostart. With a bit of google-fu, I found that it looks in the /home/pi location first, and if it insn't found there, goes to the /etc/xdg folder.

All of this seems pretty simple in the morning with a fresh, beer-free brain, but last night was pretty frustrating. Which leads me to...BACKUPS, PEOPLE, BACKUPS!

That being said, there is some learning that goes with reinstalling stuff and having to find workarounds for things. I don't recommend that as a way to learn, but it is certainly a small silver lining in a grey cloud.
 
Just got my brewpi spark up and running. Looking to add a heater, purchased the Lasko personal. I got an additional SSR on amazon.
I can't seem to find a place/don't know the name of what I'm looking for (the digital output connector)

The BrewPi Spark v2 has 4 digital outputs which can drive SSRs to switch heating elements or a fridge or freezer.

Are these what I need? https://www.amazon.com/uxcell-KF2EDG-Pluggable-Teminal-Connector/dp/B01F4F5BPY/ref=sr_1_7?ie=UTF8&qid=1486414011&sr=8-7&keywords=Pluggable+Terminal+Block%2C+2%2C+300+V%2C+10+A%2C+5.08+mm%2C
 
Last edited by a moderator:
Hey guys

I have been messing all day with this all day using the Arduino mega 2560

I know uno is a easy way to do this, but i have the mega and can be a little bit stubborn.

I wired it up like this image
BrewPi-Schematic.png


Then i found a mega2560 hex buried in this thead and flashed it with this command:
Code:
sudo avrdude -p m2560 -c wiring -P /dev/ttyACM0 -b 115200 -F -D -U flash:w:/home/pi/brewpi_mega2560.hex

I could setup brewpi and actually read the temperature from the sensors, but there is no way for me to actually add them since the only function I have is "none"
I8cwYFb.jpg


Anyone have any idea what I can try? I tried playing with some conf files (and then some) but am completely stuck.

:mug:
 
Hey guys



I have been messing all day with this all day using the Arduino mega 2560



I know uno is a easy way to do this, but i have the mega and can be a little bit stubborn.



I wired it up like this image
BrewPi-Schematic.png




Then i found a mega2560 hex buried in this thead and flashed it with this command:

Code:
sudo avrdude -p m2560 -c wiring -P /dev/ttyACM0 -b 115200 -F -D -U flash:w:/home/pi/brewpi_mega2560.hex



I could setup brewpi and actually read the temperature from the sensors, but there is no way for me to actually add them since the only function I have is "none"

I8cwYFb.jpg




Anyone have any idea what I can try? I tried playing with some conf files (and then some) but am completely stuck.



:mug:


Do you have any idea what the version of that hex file is?
 
Have you tried hitting the button under the advanced settings at the very bottom of the page that resets the defaults to the factory core? Sometimes that works for me if I'm having trouble during configuration.
 
Have you tried hitting the button under the advanced settings at the very bottom of the page that resets the defaults to the factory core? Sometimes that works for me if I'm having trouble during configuration.

Yeah that did not work :(

Still can only choose none from the dropdown

Code:
Feb 07 2017 00:27:41   Resetting controller to factory defaults
 Feb 07 2017 00:27:43   Controller debug message: INFO MESSAGE 15: EEPROM initialized
 Feb 07 2017 00:28:26   Installed devices received: []
 Feb 07 2017 00:28:28   Available devices received: [{"a": "28FF26417116057E", "c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 2, "j": 0.0, "p": 58, "t": 0, "v": 26.5}, {"a": "28FF4B4D511603D8", "c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 2, "j": 0.0, "p": 58, "t": 0, "v": 22.125}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 2, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 5, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 6, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 59, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 4, "t": 0, "x": 1}]
 Feb 07 2017 00:28:47   Device updated to: {"i":0,"t":0,"c":0,"b":0,"f":0,"h":0,"d":0,"p":0}
 Feb 07 2017 00:28:52   Installed devices received: []
 Feb 07 2017 00:28:54   Available devices received: [{"a": "28FF26417116057E", "c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 2, "j": 0.0, "p": 58, "t": 0, "v": 26.5}, {"a": "28FF4B4D511603D8", "c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 2, "j": 0.0, "p": 58, "t": 0, "v": 22.125}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 2, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 5, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 6, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 59, "t": 0, "x": 1}, {"c": 1, "b": 0, "d": 0, "f": 0, "i": -1, "h": 1, "p": 4, "t": 0, "x": 1}]
 
Hey guys

I have been messing all day with this all day using the Arduino mega 2560

......

Anyone have any idea what I can try? I tried playing with some conf files (and then some) but am completely stuck.

:mug:

Yeah - the Arduino Mega2560 won't work. Code wasn't compiled for it and likely won't be. You need an UNO with the ATMega258, I believe it is.
 
This it the output I get from the updater:
Code:
Found BrewPi v.2.4, running commit 00000000, running on an Arduino Mega with a revC shield on port /dev/ttyACM0

Full output can be seen here: http://pastebin.com/raw/f5SAvwb1

IIRC, RevC shields assume that you're using OneWire relays. It sounds like this firmware was compiled against the RevC shield (and therefore won't support wired relays like in your diagram).

Alternatively, it's an issue with brewpi-script not reporting the hardware correctly for that board.
 
Yeah - the Arduino Mega2560 won't work. Code wasn't compiled for it and likely won't be. You need an UNO with the ATMega258, I believe it is.

Guess I´ll have to find a uno then. Thanks for all help guys :)
 
Hey guys, just got my BrewPi up and running this weekend. Thanks for all of the great information on this thread it was a fairly simple process. I just placed my first fermentor in my chamber last night. It had been fermenting in my finished basement. It has already been fermenting for a week in an ambient temperature of 67 degrees. I was a bit shocked when the temperature sensor in a thermowell told me the beer was at 61.5 degrees when I first hooked it all up. I knew there would be a difference between ambient and actual temp but it definitely made me realize that this brewPi will help me step up my game.

Any ways I want to create a temp profile similar to what the guys from brulosophy have been doing. Remember I am already 7 days into my fermentation so I plan on ramping up the temperature right away.

This is his method.
1. Chill wort to target fermentation temp (66°-68°F/19˚-20˚C)), place in temp controlled environment, attach insulated temp probe to side of fermentor, and pitch yeast starter.
2. After 2-5 days (OG dependent) of active fermentation, remove*probe from side of fermentor so it measures ambient then bump regulator to 75°F/24˚C* (the Black Box*makes this easy).
3. After 2-5 more days, once FG is stable and the sample is free of off-flavors, cold crash the beer to 30-32°F/0˚C.

This is the schedule I made, remember I am already 1 week into fermentation. He states he just sets the fermentation chamber to 75. We are measuring the beer so I figured maybe it would be roughly 2 days to get to the same point.

Do you think this looks somewhat right?

Fermentation Schedule.jpg
 
Last edited:
IIRC, RevC shields assume that you're using OneWire relays. It sounds like this firmware was compiled against the RevC shield (and therefore won't support wired relays like in your diagram)[...].

That is incorrect, the Elco Rev C shield only supported standard relays.

Cheers!
 
Hey guys, just got my BrewPi up and running this weekend. Thanks for all of the great information on this thread it was a fairly simple process. I just placed my first fermentor in my chamber last night. It had been fermenting in my finished basement. It has already been fermenting for a week in an ambient temperature of 67 degrees. I was a bit shocked when the temperature sensor in a thermowell told me the beer was at 61.5 degrees when I first hooked it all up. I knew there would be a difference between ambient and actual temp but it definitely made me realize that this brewPi will help me step up my game.

Any ways I want to create a temp profile similar to what the guys from brulosophy have been doing. Remember I am already 7 days into my fermentation so I plan on ramping up the temperature right away.

This is his method.
1. Chill wort to target fermentation temp (66°-68°F/19˚-20˚C)), place in temp controlled environment, attach insulated temp probe to side of fermentor, and pitch yeast starter.
2. After 2-5 days (OG dependent) of active fermentation, remove*probe from side of fermentor so it measures ambient then bump regulator to 75°F/24˚C* (the Black Box*makes this easy).
3. After 2-5 more days, once FG is stable and the sample is free of off-flavors, cold crash the beer to 30-32°F/0˚C.

This is the schedule I made, remember I am already 1 week into fermentation. He states he just sets the fermentation chamber to 75. We are measuring the beer so I figured maybe it would be roughly 2 days to get to the same point.

Do you think this looks somewhat right?

That would work, one thing of note is you can use decimals in your days. To get "sudden" movement i use that.

For example your

0 - 69
2 - 75

would ramp the temp from 69 to 75 over 2 days. If you set

0 - 69
1.9 - 69
2 - 75

You would see your graph profile change to being a steep curve.
It wont take 2 days to get your beer from 69-75, its up to you if you want ti too or to force it to go as fast as possible. For warming you probably have the right idea going slow, so your ambient doesnt get too hot.

For cold crashing though this method of using decimals is best, it gets you from ferm temps to cold crashed as fast as your freezer/fridge will let you.
 
This it the output I get from the updater:

Code:
Found BrewPi v.2.4, running commit 00000000, running on an Arduino Mega with a revC shield on port /dev/ttyACM0



Full output can be seen here: http://pastebin.com/raw/f5SAvwb1


The most recent version is 2.10 that may be why it doesn't work. perhaps someone had gotten one working at one time but it's most likely deprecated. get a cheap uno clone and you'll be back on track.
 
The most recent version is 2.10 that may be why it doesn't work. perhaps someone had gotten one working at one time but it's most likely deprecated. get a cheap uno clone and you'll be back on track.

Got a real uno - plug and play :mug:
 
So as suggested by people in the Craftbeerpi thread, rather than replacing Brewpi with CPB, I am here to ask help with debugging my setup. I have built a Brewpi rig exactly as explained in this thread and it works fine with only the fridge actuator installed. However I installed a heater recently and now I get mad oscillation; looks like the system is not able to accurately set the overshoot of the heater.

My rig:
IMG_1848.jpg


1: Chamber temp probe
2: Beer temp probe, insulated.
3: Heater, which is a 60W tube heater (used in chicken coops etc) in a box with a fan on the right side. Arrows indicate flow.

Any suggestions? I am a bit of a noob PID controller wise.
 
Describe the probe insulation as it isn't evident from the picture.
Also as the heater fan is clearly to the left in the picture, where is the probe actually located?

Cheers!
 
That right a space probably doesn't really need a heater as long as it's fermenting.
 
The beer probe is pressed against the fermenter using a sponge (2), the chamber probe is taped to the wall on the right (you can just see its tip next to the '1'). The heater fan is on the right side of the box, pushing air out of the black vent on the top left of the box.

You're right wbarber, it doesn't really need a heater for fermenting around 68º, but like today when the ambient room temp is about 64º, and I want to go from 68º to 70º for attenuation I can't really do that without a heater. For lagers it's also nice to be able to do controlled ramps.
 
Status
Not open for further replies.
Back
Top