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.
Btw… did we ever find a reputable source for pre-made sensor probes, seems like the latest batches to hit the web have all been counterfeits or parasitic models…
 
Btw… did we ever find a reputable source for pre-made sensor probes, seems like the latest batches to hit the web have all been counterfeits or parasitic models…

I bought some from ebay a few months ago and found out last week that none of them work at all. I just got 5 from Amazon a few days ago and all 5 are working well.

Vktech DS18b20 Waterproof Temperature Sensors Temperature Transmitter (5pcs) https://www.amazon.com/dp/B00CHEZ250/?tag=skimlinks_replacement-20
 
Last edited by a moderator:
I bought some from ebay a few months ago and found out last week that none of them work at all. I just got 5 from Amazon a few days ago and all 5 are working well.

Vktech DS18b20 Waterproof Temperature Sensors Temperature Transmitter (5pcs) https://www.amazon.com/dp/B00CHEZ250/?tag=skimlinks_replacement-20

Be careful with this particular set. The cables are only 100cm. If that works for your installation, great. I needed the 2 meter ones for my setup. Just an FYI.
 
Last edited by a moderator:
Along with mystery wire color schemes, a lot of folks have been getting DS18B20-PAR probes lately.

I have well over two dozen 3 meter "real" DS18B20's bought from ebay, all work fine, all used a logical wire color scheme, but I can't tell who I bought them from because ebay buying history doesn't go back beyond 2015, for &^%@ sake!

Cheers! :(
 
Random question of the day - can ye olde sainsmart relays work with DC power as well? Am going to use my multiple Brewpis to control two SS Brewtech Chronicals, and their pumps/pads are 12v.

Given the fact that the open/close is actuated by the Arduino, I can't imagine why they wouldn't, but wanted to double check with folks smarter than I am, aka everyone.

Also, speaking of SS Brewtech - their thermowells are a titch too tight for the standard ones (have the same Vktech ones from Amazon). Anyone find slimmer ones, or do I need to build my own?
 
I use half a Sainsmart to control my keezer, with the little relay switching a 12V DC current loop that in turn switches a big honkin' 30A relay that powers the compressor.
The other half of the relay module controls a 12V DC cooling fan for the controller enclosure. Both sides work perfectly.

Can't answer the thermowell thing, never used one...

Cheers!
 
I use half a Sainsmart to control my keezer, with the little relay switching a 12V DC current loop that in turn switches a big honkin' 30A relay that powers the compressor.
The other half of the relay module controls a 12V DC cooling fan for the controller enclosure. Both sides work perfectly.

Can't answer the thermowell thing, never used one...

Cheers!

Tell me more, Master. How does the half that controls the DC fan work? Is it always running or is it controlled by some input?
 
I wrote a small service in Python that reads the RPi2 SOC thermal sensor, converts it to Fahrenheit (just because), compares the sensor reading to an upper threshold and if the former exceeds the latter runs the fan until the sensor reaches the low threshold.

Here's the code for the service (fan_monitor.py residing at /usr/lib/cgi-bin)

Code:
#!/usr/bin/env python

import RPi.GPIO as GPIO
import time
import os
import sys

cmd = '/opt/vc/bin/vcgencmd measure_temp'

GPIO.setmode(GPIO.BCM)
Fan_Control = 24
GPIO.setup(Fan_Control, GPIO.OUT)

TempOn = 130
TempOff = 110
FanOn = False
GPIO.output(Fan_Control,True)     #! Note inverted logic, relay is now inactive
         	  
try:
   while True:
      line = os.popen(cmd).readline().strip()
      if "error" in line:
         print "Error ... is your firmware up-to-date? Run rpi-update"
      else:
      # line now contains something like: temp=41.2'C
      # to get the temperature, split on =, and then on '

         tempstring_c = line.split('=')[1].split("'")[0]
         tempvalue_c=float(tempstring_c)
         tempvalue_f = tempvalue_c * 9.0 / 5.0 + 32.0
         tempvalue = round(tempvalue_f,1)
#!         print tempvalue, "Degrees F"
         if FanOn == False and tempvalue > TempOn:
#!         	  print "Fan On"
         	  GPIO.output(Fan_Control,False)                      #! Note inverted logic, relay is now active
         	  FanOn = True
         else:
         	  if FanOn == True and tempvalue < TempOff:
#!         	     print "Fan Off"
         	     GPIO.output(Fan_Control,True)                    #! Note inverted logic, relay is now inactive
         	     FanOn = False
         time.sleep(10)

except KeyboardInterrupt:
#!   print " Quit"
   GPIO.cleanup()

To run that as a service, a daemon file (fanmon residing at /etc/init.d) is created:

Code:
#!/bin/sh

### BEGIN INIT INFO
# Provides:          BrewPints RPi Temperature Monitor and System Fan Control
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Put a short description of the service here
# Description:       Put a long description of the service here
### END INIT INFO

# Change the next 3 lines to suit where you install your script and what you want to call it
DIR=/usr/lib/cgi-bin
DAEMON=$DIR/fan_monitor.py
DAEMON_NAME=RPFanMon

# This next line determines what user the script runs as.
# Root generally not recommended but necessary if you are using the Raspberry Pi GPIO from Python.
DAEMON_USER=root

# The process ID of the script when it runs is stored here:
PIDFILE=/var/run/$DAEMON_NAME.pid

. /lib/lsb/init-functions

do_start () {
    log_daemon_msg "Starting system $DAEMON_NAME daemon"
    start-stop-daemon --start --background --pidfile $PIDFILE --make-pidfile --user $DAEMON_USER --chuid $DAEMON_USER --startas $DAEMON
    log_end_msg $?
}
do_stop () {
    log_daemon_msg "Stopping system $DAEMON_NAME daemon"
    start-stop-daemon --stop --pidfile $PIDFILE --retry 10
    log_end_msg $?
}

case "$1" in


    start|stop)
        do_${1}
        ;;

    restart|reload|force-reload)
        do_stop
        do_start
        ;;

    status)
        status_of_proc "$DAEMON_NAME" "$DAEMON" && exit 0 || exit $?
        ;;
    *)
        echo "Usage: /etc/init.d/$DAEMON_NAME {start|stop|restart|status}"
        exit 1
        ;;

esac
exit 0

Finally, the daemon is added to the services startup by running this command (once):

Code:
sudo update-rc.d fanmon defaults

The service responds to the following control commands:

Start the service: $ sudo /etc/init.d/fanmon start
Check the service: $ sudo /etc/init.d/fanmon status
Stop the service: $ sudo /etc/init.d/fanmon stop

Cheers!
 
I wrote a small service in Python that reads the RPi2 SOC thermal sensor, converts it to Fahrenheit (just because), compares the sensor reading to an upper threshold and if the former exceeds the latter runs the fan until the sensor reaches the low threshold.

Here's the code for the service

Cheers!

I love it. My keezer is in a Southern California garage that gets to 110f during the summer. I'm going to incorporate this before the temps start rising this year. I'm on my original RPI and it hasn't died yet due to the heat, but I figure it is only a matter of time.
 
I love it. My keezer is in a Southern California garage that gets to 110f during the summer. I'm going to incorporate this before the temps start rising this year. I'm on my original RPI and it hasn't died yet due to the heat, but I figure it is only a matter of time.

Just an idea that I acted on - put the Pi in the fridge and run a USB extension cable out for a USB WIFI dongle (or whatever it's called).

Keeps the Pi nice and cool!

Paul
 
Might be ok in a fridge, but not in a keezer.
Too much condensation going on for that...

brewpints_02.jpg
brewpints_18.jpg
brewpints_25.jpg
brewpints_44.jpg

Cheers!
 
Kinda. The box was bought then modified, the panel is custom, carved out of a piece of an aluminum speed limit sign one of my sons liberated about 20 years ago ;)

Cheers!
 
BTW I booted up the controller last night so I could figure out the wiring issue with the sensors and they showed up this time. I'm not sure as to why, but I'll take the win.

About the sensor length, I foolishly bought the 100cm probes. Could I solder it together with some cable from home Depot without issue?
 
Last edited by a moderator:
BTW I booted up the controller last night so I could figure out the wiring issue with the sensors and they showed up this time. I'm not sure as to why, but I'll take the win.

About the sensor length, I foolishly bought the 100cm probes. Could I solder it together with some cable from home Depot without issue?

Yes, you can just extend the probes with cable from Home Depot. Remember that the wires from all of your probes need to be wired together at some point in your setup anyway, so you could just hook up all of your 1 meter probes together and then extend the length with one cable to your needed length, if that works for your setup. If my explanation doesn't make sense, let me know.
 
Kinda. The box was bought then modified, the panel is custom, carved out of a piece of an aluminum speed limit sign one of my sons liberated about 20 years ago ;)

Cheers!

What did you do the carving with? All by hand (bloody impressive!) or did you use something like a Shapeoko/xcarve?
 
I have nearly every woodworking tool known to man but my metal handling capabilities are rather minimal by comparison.
I sawed the piece out of the highway sign with a sabersaw and cleaned it up with a file, round holes were done on a drill press, and the others (power ingress, d-sub, usb, hdmi, enet) were started on the press and finished with a lot more hand filing.

And as I rarely build just one of anything, I built its twin in parallel, so the filing was doubled.

I hate filing...

Cheers! ;)
 
Filing does indeed suck. As does any hand work on metal. I'm trying to come up with an enclosure for my double BrewPi setup, and since housing my dodgy electrical work is an accident waiting to happen, I have to turn to metal. And since I'm an idiot, and want to be all blingy and pretty, am researching any way possible to avoid having to resort to hand tools and punching and filing. And filing. And filing...
 
Yes, you can just extend the probes with cable from Home Depot. Remember that the wires from all of your probes need to be wired together at some point in your setup anyway, so you could just hook up all of your 1 meter probes together and then extend the length with one cable to your needed length, if that works for your setup. If my explanation doesn't make sense, let me know.

Wait, so the ground, data and vcc would be connected to one wire? That wouldn't be problematic?

I get the idea behind the one wire in terms of the data line, but I'm confused how you could mix all three and still have a sensor.
 
Brutal.
fwiw, highways signs are .125", so three times the thickness of the piece he was cutting.

But more to the point, setting up jigs to cut my panel openings would make hand filing seem like cake ;)

Cheers!
 
I have a beat to hell Shaepeoko 2 that a friend of mine put together that he let me have. If @ricand and I can ever get the thing calibrated and working (mostly him, that guy has way too much free time on his hands! ;) ) I should be able to mill something out. Until then, the other option is Front Panel Express, which ain't cheap.
 
Wait, so the ground, data and vcc would be connected to one wire? That wouldn't be problematic?

I get the idea behind the one wire in terms of the data line, but I'm confused how you could mix all three and still have a sensor.

You connect all of the data lines to one line, all of the ground lines to another line and all of the vcc lines to a third line. So if have three sensors, you'd have 9 lines going into your cable and 3 lines coming out. That's the beauty of the one wire stuff.

Or you could just extend all 9 lines and then combine them in your enclosure if that's better for your build.
 
Gotcha. I misunderstood your first response.

I'll have to dig through my stuff to see what I have for wiring. Thanks!
 
Where are you guys getting sensors that are longer than 1m?

EDIT: Nevermind, found them on Amazon.
 
And as I rarely build just one of anything, I built its twin in parallel, so the filing was doubled.

Speaking of your builds, what Hammond box are you using on yer minions? I'm abandoning the notion of a single contained box, and going with a BT minion version instead. (I need to use 12v for the SS Brewtech pumps and heat pads, so not cramming an enormous 12v 20a internal PSU in a box for this when I can use two 10a wall warts)
 
these are the ones I got, no issues whatsoever

except they're a little short, I should have gone with 2m

buzzbuzz... that's on me

Yeah I should've mentioned length but that's not something I was concerned with as I used cat5 ethernet wire to extend the sensors.
 
I've been converting just about all connections I make for low voltage over to rj45. just built a whole 3d printer with the stuff. and it's easy to build a termination for. just get a nice keystone jack or breakout jack and your done.
 
Hi All,

First time poster here so pls be gentle. I have gone down the path of a DIY Brewpi but having issues with getting it up and running. Is there a good place to go trawling through to trouble shoot 'Script not running'? something for 'dummies' would be a great help!

Cheers

Thor
 
Hi All,
First time poster here so pls be gentle. I have gone down the path of a DIY Brewpi but having issues with getting it up and running. Is there a good place to go trawling through to trouble shoot 'Script not running'? something for 'dummies' would be a great help!

There's a link to a wiki on the first page of this thread with the full installation, you could compare that against what you did.

Beyond that...were you able to successfully configure your temperature probes and actuators? If you got that far that establishes basic connectivity (A Good Thing).

If you weren't able to get that far, dumping the log file might be helpful...

Cheers!
 
Hi All,

First time poster here so pls be gentle. I have gone down the path of a DIY Brewpi but having issues with getting it up and running. Is there a good place to go trawling through to trouble shoot 'Script not running'? something for 'dummies' would be a great help!

Cheers

Thor
What type of UNO R3 are you using? Ch340g chipset (Chinese clone)
 
Hi All,

First time poster here so pls be gentle. I have gone down the path of a DIY Brewpi but having issues with getting it up and running. Is there a good place to go trawling through to trouble shoot 'Script not running'? something for 'dummies' would be a great help!

Cheers

Thor


Also script not running (if you're using safari) is a know issues if it's popping out every 5 seconds or so between temps?
 
Status
Not open for further replies.

Latest posts

Back
Top