• 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.
HAPPY BIRTHDAY TO BREWPI,HAPPYBIRTHDAY to FuzzeWuzze'sPi !

It's been 5 years already and 7,712 posts now! Yahoo!
What will we see here, in 5 more years? Thorrak's Mead with oranges, that's hiding in the closet? or maybe day_trippr's MoonPi ??
Lee'sPi that does support for 15 vacuum sweeper's at a time???

Thanks for all of you contributers', on this forum, that have made a LOT of us better brewers!
 
Paper?!? (LOL) Those are "to scale" 2D representations of the 20x4 LCD Boards that I ordered and are either in China or en route from China.

This waiting is absolutely killing me...I've resorted to making 2D representations of all my components to figure out how I want to position everything and decide on a project box dimension.

Is there a Thread here on HBT, to showcase everyone's enclosures ?
I just wire everything up on my bench, the put the mess into a shoe-box, shake it up, and it looks great!
Ok, enough with the funnies..... this is a serious HBT Thread, and I am off topic - < less, one virtual beer for me...
 
Is there a Thread here on HBT, to showcase everyone's enclosures ?
I just wire everything up on my bench, the put the mess into a shoe-box, shake it up, and it looks great!
Ok, enough with the funnies..... this is a serious HBT Thread, and I am off topic - < less, one virtual beer for me...
Make one!
 
I've attached a pic of my chamber, the dimensions are width 53cm, Depth 45cm, and height 122cm. The sensor for the fridge is mounted in the light fitting on the right side, and you can see the cable to the beer sensor going onto a thermawell.

Why don't you try to just move the Chamber sensor DOWN, at the level of the beer, or even lower? (not the Beer thermowell sensor)
That's why hot-water-heaters first heat the upper water, then switch to the lower heating element to finish the set point off. Maybe all your heat is stacking at the top, with no air circulation. The Chamber sensor sees it's really much hotter then your set point, then there still is a cool pocket of air around your beer cargo?
 
So, if you ever want to make someone that is relatively intelligent feel confused, have them try to set up a brewpi fermentation controller. Especially if they have never used or seen a raspberry pi in person, and have no idea what half of this stuff means. I am so lost right now. :/
 
Is there a Thread here on HBT, to showcase everyone's enclosures ?
I just wire everything up on my bench, the put the mess into a shoe-box, shake it up, and it looks great!
There are some links on the original FuzzeWuzze post. This is one that Donnie designed and I printed up a while back:

https://www.thingiverse.com/thing:3416312

It holds the Arduino, LCD, switches, knob, LCD's, power outlets for heat/cool, RJ-11 outlet for sensors, power switch, power supply ... I think that's it. The only thing that's not in the box is the RPi and the fridge. :)

So, if you ever want to make someone that is relatively intelligent feel confused, have them try to set up a brewpi fermentation controller. Especially if they have never used or seen a raspberry pi in person, and have no idea what half of this stuff means. I am so lost right now. :/
Verboten, you are right this is like drinking from a fire-hose. There have been a lot of "all-inclusive" posts, stories, wikis, etc. None of them are completely current right now. I have about 75% of one done that is BrewPi specific that takes you from Amazon to Amazing (yes I just made that up.)

If you are truly starting at "0", buy yourself a Raspberry Pi. This link gets you a great deal on all the little things you will need with it for $79.99:
  • Raspberry Pi 3B + (quad core, newest, etc)
  • 32 Gb SD card
  • Micro SD card reader
  • Power Supply with switch
  • Heat Sinks
  • Case
  • HDMI Cable
Get it, plug it in, play with it. For a couple days don't even worry about the BrewPi portion of it. After you are semi-comfortable logging in, applying updates, navigating around, etc., we should have something for you to follow beginning to end.

If you need to save some dollars, you can go with a Pi Zero W (single core processor, smaller, etc.). I would recommend this kit which is similar to the above. You'd need to add a micro SD card reader (which is what you use to read/write the card on your PC) I think, I don't see any kits which have one included.
 
The gotchas for me during my initial install of BrewPi
1: loading the drivers and editing the BPI software for the ch340 chip
2: DS18B20 temp sensor not being detected
3: Setting up Wifi.
I'm sure there were a few more things but these were the top 3 for me.
 
Thanks for the words of encouragement. I actually found your remix, and "trusted" your link....I got the 3 B+ set up this morning, and i'm now working on the brewpi side.....edit ..I have SOMETHING at least!
 

Attachments

  • IMG_20190319_141111.jpg
    IMG_20190319_141111.jpg
    3.8 MB
Thanks for the words of encouragement. I actually found your remix, and "trusted" your link....I got the 3 B+ set up this morning, and i'm now working on the brewpi side.....edit ..I have SOMETHING at least!
Hey that's fantastic! Looks like you just need to configure some probes. Starting with FuzzeWuzze's first post should get you going.
 
Hey that's fantastic! Looks like you just need to configure some probes. Starting with FuzzeWuzze's first post should get you going.

Elco ( The "Inventor" of BrewPi), had great documents for the BrewPi Configuring your Devices. I still have the hard copy from 1-16-2015, and tried to reload the page now for verboten, but the page was taken down....

http://docs.brewpi.com/after-install/device-configuration.html
I did try to search this thread for "device configuration" and found a lot of references after you configured them! Maybe someone can find the Documentation on this, either from Elco or somewhere on these 7,720 posts!

Hay, if a Plumber can do this, even a smart verboten can!
 
The gotchas for me during my initial install of BrewPi
1: loading the drivers and editing the BPI software for the ch340 chip
This is why my recommendation is always to spend the extra $4 and get a real Arduino. It's impossible to out-think the Chinese.
2: DS18B20 temp sensor not being detected
Wiring issues? Parasitic issue?
3: Setting up Wifi.
That's firmly out of scope for an application. I do have some tutorials and a small application (above in the thread) to help with that, but I'm going to go out on a limb and say if a person is able to run the curl command, they are connected to the Internet. ;)
 
Elco ( The "Inventor" of BrewPi), had great documents for the BrewPi Configuring your Devices. I still have the hard copy from 1-16-2015, and tried to reload the page now for verboten, but the page was taken down....

http://docs.brewpi.com/after-install/device-configuration.html
Enter the Wayback Machine:

https://web.archive.org/web/2017012...atest/after-install/device-configuration.html

I'll bookmark that and make sure to try to incorporate that in an upcoming article.
 
This is why my recommendation is always to spend the extra $4 and get a real Arduino. It's impossible to out-think the Chinese.

Wiring issues? Parasitic issue?

That's firmly out of scope for an application. I do have some tutorials and a small application (above in the thread) to help with that, but I'm going to go out on a limb and say if a person is able to run the curl command, they are connected to the Internet. ;)
With the help of the guys here I was able to get it to work. Parasitic issues caught everybody by surprise.turns out the vendors were shipping mislabeled sensors. Same with the Chinessium UNO r3 knock offs, once the brainiacs figured out they were using a different chip the fix was easy for people that know their way around the RPI code. The wifi issue was an ID-10T error on my part.
 
Last edited:
Thank you all for your input. It’s been very enlightening!
 
Heya folks. Did a little one-off that I made for the RPints folks which some of you may be interested in. It's a WiFi checker that's a bit of an improvement from the one in Legacy BrewPi (very similar to what's already in Remix): https://github.com/lbussy/rpi-wifi-checker

If you have the Legacy BrewPi WiFi checker in crontab, edit brewpi crontab:
Code:
sudo nano /etc/cron.d/brewpi
Change the entries line from:
Code:
entries="brewpi wifichecker"
to
Code:
entries="brewpi ~wifichecker"
And remove this line:
Code:
*/10 * * * * root sudo -u brewpi touch $stdoutpath $stderrpath; $scriptpath/utils/wifiChecker.sh 1>>$stdoutpath 2>>$stderrpath &
Save it and restart the cron with:
Code:
sudo /etc/init.d/cron restart
Then you can install the new systemd process with:
Code:
curl -L wifi.brewpiremix.com | sudo bash
Hope someone can make use of this.
 
It’s had a week in a couple of my test systems, so it’s time to announce:

BrewPi Remix Firmware 0.2.11!

The primary change in this release is to move the workspace to PlatformIO from Atmel Studio. There are a few other changes you may be interested in. This is the first new firmware release since forking from the original BrewPi Legacy branch.

Features

  • Move to PlatformIO
  • Remove (some of) the Spark shrapnel that was added to the Legacy 0.2.10
  • Bump LogMessages.h to align with @thorrak's ESP8266 firmware
Bugfixes
  • Added a reset on interval to help LCD scramble
  • Re-establish build version in eeprom (remove "unknown")
  • Remove ability to enter invalid chamber/beer number
General Changes
  • No longer releasing Shield Rev A code, this is unlikely to be needed and just confused people. All users not using shields as well as users leveraging the CadiBrewer shields (see thread on HBT) should use the Rev C code
  • No longer releasing Leonardo code. Have never come across a single person using it. This repo is all Uno all the time
  • No longer releasing Spark code. Didn't you get the memo? This is Uno country!
I’d love it if a few folks with idle rigs would give it a run or two, however I did not detect any issues in my tests.

Because of the bump to LogMessages.h you will get a warning about that version. It should be harmless however and the next release of BrewPi Remix will account for that.

If you are running Remix already, you can run updateFirmware.py. If you are running Legacy, you can download and install it manually. It should be compatible with the old scripts with the exception of the version number warning I mentioned above.
 
OmyOmyOmyOmyOmy I shiver with anticipation. Could be the flu, but I doubt it. Will test. Thanks!
 
I was curious, I thought maybe some of the rest of you might be as well:
Code:
$ find /home/brewpi -name '*.py' | xargs wc -l
  4687 total

$ find /home/brewpi -name '*.sh' | xargs wc -l
  1523 total

$ find /home/brewpi -name '*.inc' | xargs wc -l
  373 total

$ find /var/www/html -name '*.php' | xargs wc -l
  2285 total

$ find /var/www/html -name '*.js' | xargs wc -l
  37373 total

$ find /var/www/html -name '*.css' | xargs wc -l
  2226 total

$ find ~/brewpi-tools-rmx -name '*.sh' | xargs wc -l
  2247 total

$ find ~/brewpi-firmware-rmx -name '*.cpp' | xargs wc -l
  8636 total

$ find ~/brewpi-firmware-rmx -name '*.h' | xargs wc -l
  6632 total

65,982 total code lines
A lot happens in those lines.
 
I get a kick out of seeing my beer stay within .1 degree of my set temp. Looks like quite a swing, but check out the scale of the graph.
Capture.JPG
 
Last edited:
Hello all, I noticed on my graph the dates are wrong, so it's not running my schedule. What do I need to do to fix it? Thanks!
 

Attachments

  • Screenshot_20190403-080831_Chrome.jpg
    Screenshot_20190403-080831_Chrome.jpg
    381.9 KB
Hello all, I noticed on my graph the dates are wrong, so it's not running my schedule. What do I need to do to fix it? Thanks!
Unless you've discovered a weird bug, it would be because your date/time is wrong on your Pi. The Pi does not have a Real Time Clock, instead it relies on the Internet to get it's time hacks.

To fix, first make sure your timezone is correct. Type sudo raspi-config in the command line. Choose:
  1. Internationalization options
  2. Change Time Zone
  3. Select geographical area
  4. Select city or region
  5. Reboot your Pi
After reboot, check your time either in the UI or via command line with the date command. If it's still not right, I suspect you have some Internet connectivity issues you will want to address.
 
Thanks for the suggestions. I've run the the time zone commands multiple times, via wifi and hard wired to no avail. I'm still stuck in October 2018...

Any help to get me back to the present?

Unless you've discovered a weird bug, it would be because your date/time is wrong on your Pi. The Pi does not have a Real Time Clock, instead it relies on the Internet to get it's time hacks.

To fix, first make sure your timezone is correct. Type sudo raspi-config in the command line. Choose:
  1. Internationalization options
  2. Change Time Zone
  3. Select geographical area
  4. Select city or region
  5. Reboot your Pi
After reboot, check your time either in the UI or via command line with the date command. If it's still not right, I suspect you have some Internet connectivity issues you will want to address.
 
Last edited:
Thanks for the suggestions. I've run the the time zone commands multiple times, via wifi and hard wired to no avail. I'm still stuck in October 2018...
Wheeeeell ... I hate to laundry list you but there's a whole list of things it could be.
  • What version of Raspbian? (cat /etc/os-release)
  • What kernel version? (uname -a)
  • What does timedatectl tell you?
  • If you ping 8.8.8.8, what do you get? (you will have to hit ctrl-c to get it to stop)
  • What does it show when you issue the command: systemctl status systemd-timesyncd.service
If you just want to set it and walk away for a while, issue the command sudo timedatectl set-time '2019-04-03 14:30' <- (Single-quotes required, change date/time appropriately)

If you are running Stretch, someone in their infinite wisdom decided ntpd worked too well so they screwed it up and swapped it out with timesyncd.

Depending on what the above tells you, there's different ways to remedy the issue properly.
 
Here is what I found:
  • Version 7 wheezy
  • Linux brewpi 3.18.11-v7+ #781 SMP
  • command not found (timedatectl)
  • ping says network is unreachable (interesting as this is from a good hard wire connection)
  • systemctl : command not found
I was able to set the time using 'sudo date -s '2019-04-03 16:06''

Wheeeeell ... I hate to laundry list you but there's a whole list of things it could be.
  • What version of Raspbian? (cat /etc/os-release)
  • What kernel version? (uname -a)
  • What does timedatectl tell you?
  • If you ping 8.8.8.8, what do you get? (you will have to hit ctrl-c to get it to stop)
  • What does it show when you issue the command: systemctl status systemd-timesyncd.service
If you just want to set it and walk away for a while, issue the command sudo timedatectl set-time '2019-04-03 14:30' <- (Single-quotes required, change date/time appropriately)

If you are running Stretch, someone in their infinite wisdom decided ntpd worked too well so they screwed it up and swapped it out with timesyncd.

Depending on what the above tells you, there's different ways to remedy the issue properly.
 
Last edited:
Your /etc/network/interfaces should have a line that looks something like:

iface eth0 inet dhcp

Is that what it looks like? Do you happen to remember if you set a static IP address at one point in your history with this rig?
 
I see:

iface eth0 inet manual

also see

iface wlan0 inet static (with my defined address and gateway)
 
I see:

iface eth0 inet manual

also see

iface wlan0 inet static (with my defined address and gateway)
So apparently something changed on your network. Let's go easy mode:

Edit that (sudo nano /etc/network/interfaces) and change 'iface eth0 inet manual' to 'iface eth0 inet dhcp' and also change 'iface wlan0 inet static' to 'iface wlan0 inet dhcp'. Then reboot.

This should by bypass the static setup you have and allow your router to dynamically assign an IP address. If you are on the console/desktop, you can check your ping command again and see if you have Internet. If you do, then your time will start working correctly again.

If we get past that: You initially set a static IP address because the old instructions said to do that. This is not needed. There's a thing called mDNS which allows you to find systems by name on your local network. Assuming you are using Windows for you normal workstations, you can try to open a web browser to <server name>.local. If that does not work you may have to install Bonjour from Apple. (it says "print services, that's what you want.) When you are done you will be able to access via the system name (my current mule is named "brewpi"):

Capture.PNG


Avoiding static IP's is much preferred on a home network, unless there's some other need for it.
 
Status
Not open for further replies.
Back
Top