• 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.
Hey everyone, just finishing up my first brew using the BrewPi, and have entered the cold crash phase. I have, however, noticed some issues.

I set the BrewPi using the beer profile, with the fridge to go down to 2degC, and then hold there for a cold crash. This process started out fine, with the fridge being on and lowering temp effectively. After checking the web-interface however, I noticed that the BrewPi said the fridge was cooling (currently at 12degC), and had been for a while, however the fridge was completely dormant - no light coming on when the door was opened, and no motor sounds. Slightly paranoid about a broken fridge, I unplugged it from the set-up, and put it into mains, where it turned on immediately, and after a while cooled down to around 0. I've done some more experimenting, including setting the fridge to run off fridge temp instead, and setting it to 2degC manually - still no response, despite the systems claim that it was on and cooling. The fridge's chill temperature limit had, up to this point, been 2DegC, so I don't think that's the issue.

Does anyone have any idea why something like this is happening? I assume it's less an issue with the software, and maybe something has happened with the wiring?

Any help greatly appreciated,
thanks
 
From the description it appears BrewPi was working at some point. True?

If you're using the typical SainSmart dual relay module it has LEDs for each channel that when lit indicate the corresponding relay has been picked.
If the Cooling LED was lit but the fridge wasn't on it would finger the Cooling relay.

Otoh if the Cooling LED isn't lit there's either a wiring issue or the Uno wasn't doing what BrewPi thinks it was doing.
That'd be exceedingly rare in my experience - I have four BrewPi functions doing useful work and a couple of test beds that just sit there running scripts, and I've never seen that particular paradigm in a couple of years of running BrewPi...

Cheers!
 
From the description it appears BrewPi was working at some point. True?

If you're using the typical SainSmart dual relay module it has LEDs for each channel that when lit indicate the corresponding relay has been picked.
If the Cooling LED was lit but the fridge wasn't on it would finger the Cooling relay.

Otoh if the Cooling LED isn't lit there's either a wiring issue or the Uno wasn't doing what BrewPi thinks it was doing.
That'd be exceedingly rare in my experience - I have four BrewPi functions doing useful work and a couple of test beds that just sit there running scripts, and I've never seen that particular paradigm in a couple of years of running BrewPi...

Cheers!
Yes, up until now the BrewPi has been working perfectly. Its seemed to have stopped working mid-way through the cold-crash.

I've had a look - the power LED on the relay is on, however, no cooling LED.

EDIT: I've had a fiddle, and the script claims that the fridge is cooling, however the fridge's motor is not running - the fridge light IS on however. Is it possible that the fridge's internal thermostat is blocking the motor from running? The fridge is on its highest setting. Fridge model is Hotpoint RLA50 larder fridge.
 
Yes it's entirely possible that the fridge is overriding the controller. That can happen because of the oem thermostat hitting its limit, or a defrost cycle kicking in.

I've had both happen during cold crashing...

Cheers!
 
Yes it's entirely possible that the fridge is overriding the controller. That can happen because of the oem thermostat hitting its limit, or a defrost cycle kicking in.

I've had both happen during cold crashing...

Cheers!

Strange, I double checked wiring, but also took the fridge off of beer profile mode, and onto fridge constant, and it's working perfectly, even getting it to 0.5degC with no issues. I wonder if the issue was loose wiring that came undone very gradually?
 
Obviously I have no idea - too far away ;)

The fact that the fridge light was on says the cooling relay was closed which would agree with what BrewPi thought was going on. If the compressor wasn't running it's because of something inside the fridge.

btw, are you using a SainSmart dual relay module or something else?
The statement "I've had a look - the power LED on the relay is on, however, no cooling LED." doesn't compute as there are only two LEDs on a SainSmart dual relay module and they only light when the corresponding relay is enabled...

Cheers!
 
I tried to wire mine up today. Can someone please take a look and tell me if it looks like it will work from what you can see? I didn't know how to connect the wires to the board because the guide on page one wasn't very specific so I ended up soldering the wires to the pins sticking out of the bottom of the board in the specified locations. I also didn't know how to add in the 4.7k resistor so I just wrapped the other wires around it and used a wire nut. Did this seem ok or bad idea? I don't want to test it without installing it in a box and don't want to install it in a box if y'all don't think it's okay looking.
Thanks for the help!

IMG_20170226_213832.jpg
 
Best as I can tell you have the connectivity correct.
Don't forget to remove the bridge on the hot side of your duplex outlet so the Cooling and Heating functions aren't shorted together.

fwiw, most folks use "Dupont" jumper wires for module-to-module stuff.
Also, I'd definitely get everything working before loading it into a box...

Cheers!
 
Best as I can tell you have the connectivity correct.
Don't forget to remove the bridge on the hot side of your duplex outlet so the Cooling and Heating functions aren't shorted together.

fwiw, most folks use "Dupont" jumper wires for module-to-module stuff.
Also, I'd definitely get everything working before loading it into a box...

Cheers!

Thanks a lot. I looked at the jumpers cables. Those would have helped a lot. What about the part on the relay that has the male pins sticking out though? What's a cleaner way to connect to those?
 
Thanks a lot. I looked at the jumpers cables. Those would have helped a lot. What about the part on the relay that has the male pins sticking out though? What's a cleaner way to connect to those?


They make them in male to female also.
 
This may sound dumb... every time I Google how to update brewpi I get a bunch of mumbo jumbo I don't understand. So in a very basic very Green Way can someone please explain how to update brewpi. thank you.
 
This worked. Thank you. But I am still getting site can't be reached.

Any advice?
 
*solved* the ip address changed. Don't know why. But I thought it needed updates or something. Lol thanks all
 
Has anyone tried to run the master branch of brewpi-www with the legacy branch of brewpi? It's bothering me that for example the site doesn't use all the available space. I'd try it but I'm in the middle of a brew and don't want to screw something up.

Also is there a thread where people post their Beer Profiles? I made one for a lager using W34/70 but I was just kind of guessing on it.

Screenshot_Brewpi.jpg
 
Has anyone tried to run the master branch of brewpi-www with the legacy branch of brewpi? It's bothering me that for example the site doesn't use all the available space. I'd try it but I'm in the middle of a brew and don't want to screw something up.



Also is there a thread where people post their Beer Profiles? I made one for a lager using W34/70 but I was just kind of guessing on it.


Someone started one and I posted in it but it never caught on, I'm sure there are more around the forum though.

https://www.homebrewtalk.com/showthread.php?t=527974

How come you make daily adjustments to your profile and don't just input day 0 - 53 - day 3 - 53 (hold steady for 3 days) the jump to day 14 - 66 - this will give you that gradually increase you're looking for Over 11 days.
 
Someone started one and I posted in it but it never caught on, I'm sure there are more around the forum though.

https://www.homebrewtalk.com/showthread.php?t=527974

How come you make daily adjustments to your profile and don't just input day 0 - 53 - day 3 - 53 (hold steady for 3 days) the jump to day 14 - 66 - this will give you that gradually increase you're looking for Over 11 days.

I read somewhere that I should only raise the temperature a couple of degrees a day so I just entered that manually. Your way is probably a lot less work and accomplishes the same thing.

Question, took a reading of 1.02 with an expected FG of 1.012, should I raise the temp a little more quickly to get a diactyl rest in? I didn't notice any buttery flavor in the sample but I don't really have a trained palate.
 
I read somewhere that I should only raise the temperature a couple of degrees a day so I just entered that manually. Your way is probably a lot less work and accomplishes the same thing.



Question, took a reading of 1.02 with an expected FG of 1.012, should I raise the temp a little more quickly to get a diactyl rest in? I didn't notice any buttery flavor in the sample but I don't really have a trained palate.


You could ramp it up a little quicker if you wanted too. Typically I hold the temp for a few days to make sure it's fermented out, then up a couple after that. The more time you give it the better.
 
My Brewpi keeps changing its ip address. Anyone know how to stop this and how to figure out which ip address its using now without connecting a monitor?
 
My Brewpi keeps changing its ip address. Anyone know how to stop this and how to figure out which ip address its using now without connecting a monitor?

You should be able to give it a static ip via your router. If you don't do that it will keep changing, even though with it on it really shouldn't change.
 
I've been playing around with putting the BrewPi LCD dashboard on my Pints taplist. I have no html skills whatsoever. I managed to get far enough to get the dashboard to display correctly. I want to change the white area around the dashboard to black so it fits in with the page better. Can someone help me do this?

Capture.jpg

I assume the code would need to go into the lcd.php file. Here are the contents of the lcd.php file.

<?php
/* Copyright 2012 BrewPi/Elco Jacobs.
* This file is part of BrewPi.
* BrewPi is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* BrewPi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with BrewPi. If not, see <http://www.gnu.org/licenses/>.
*/

//load default settings from file
$defaultSettings = file_get_contents('defaultSettings.json');
if($defaultSettings == false){
die("Cannot open default settings file: defaultSettings.json");
}
$settingsArray = json_decode(prepareJSON($defaultSettings), true);
if(is_null($settingsArray)){
die("Cannot decode defaultSettings.json");
}
// overwrite default settings with user settings
if(file_exists('userSettings.json'))

{
$userSettings = file_get_contents('userSettings.json');
if($userSettings == false){
die("Error opening settings file userSettings.json");
}
$userSettingsArray = json_decode(prepareJSON($userSettings), true);
if(is_null($settingsArray)){
die("Cannot decode userSettings.json");
}
foreach ($userSettingsArray as $key => $value)

{
$settingsArray[$key] = $userSettingsArray[$key];
}
}

$beerName = $settingsArray["beerName"];
$tempFormat = $settingsArray["tempFormat"];
$profileName = $settingsArray["profileName"];
$dateTimeFormat = $settingsArray["dateTimeFormat"];
$dateTimeFormatDisplay = $settingsArray["dateTimeFormatDisplay"];

function prepareJSON($input)

{
//This will convert ASCII/ISO-8859-1 to UTF-8.
//Be careful with the third parameter (encoding detect list), because
//if set wrong, some input encodings will get garbled (including UTF-8!)
$input = mb_convert_encoding($input, 'UTF-8', 'ASCII,UTF-8,ISO-8859-1');

//Remove UTF-8 BOM if present, json_decode() does not like it.
if(substr($input, 0, 3) == pack("CCC", 0xEF, 0xBB, 0xBF)) $input = substr($input, 3); return $input;
}

?>
<!DOCTYPE html >
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>BrewPi reporting for duty!</title>
<link type="text/css" href="css/redmond/jquery-ui-1.10.3.custom.css" rel="stylesheet" />
<link type="text/css" href="css/style.css" rel="stylesheet"/>
<link rel="apple-touch-icon" href="touch-icon-iphone.png">
<link rel="apple-touch-icon" sizes="76x76" href="touch-icon-ipad.png&quoquot;>
<link rel="apple-touch-icon" sizes="120x120" href="touch-icon-iphone-retina.png">
<link rel="apple-touch-icon" sizes="152x152" href="touch-icon-ipad-retina.png">
<meta name="apple-mobile-web-app-title" content="BrewPi">
<meta name="apple-mobile-web-app-capable" content="yes" />
<link rel="apple-touch-startup-image" href="splash.png" />
</head>
<body>

<div id="lcd" class="lcddisplay"><span class="lcd-text">
<span class="lcd-line" id="lcd-line-0">Live LCD waiting</span>
<span class="lcd-line" id="lcd-line-1">for update from</span>
<span class="lcd-line" id="lcd-line-2">script...</span>
<span class="lcd-line" id="lcd-line-3"></span></p><p>

</div>
<script type="text/javascript" src="js/jquery-1.11.0.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.10.3.custom.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-timepicker-addon.js"></script>
<script type="text/javascript" src="js/spin.js"></script>
<script type="text/javascript" src="js/dygraph-combined.js"></script>
<script type="text/javascript">
// pass parameters to JavaScript
window.tempFormat = <?php echo "'$tempFormat'" ?>;
window.beerName = <?php echo "\"$beerName\""?>;
window.profileName = <?php echo "\"$profileName\""?>;
window.dateTimeFormat = <?php echo "\"$dateTimeFormat\""?>;
window.dateTimeFormatDisplay = <?php echo "\"$dateTimeFormatDisplay\""?>;
</script>
<script type="text/javascript" src="js/main.js"></script>
<script type="text/javascript" src="js/device-config.js"></script>
<script type="text/javascript" src="js/control-panel.js"></script>
<script type="text/javascript" src="js/maintenance-panel.js"></script>
<script type="text/javascript" src="js/beer-chart.js"></script>
<script type="text/javascript" src="js/profile-table.js"></script>

</body>
</html>

Any help would be greatly appreciated!
 
I think it's more likely to be in the css file, I'm no expert either though.

The css is a style sheet that dictates things like text colour, font type etc, basically how things are displayed.

In this case I'm not sure whether it would be picking up the brewpi css of the raspberry pints css.
 
I want to change the white area around the dashboard to black so it fits in with the page better. Can someone help me do this?
I don't have a working system - or even a broken one online at the moment. That said you should be able to poke about in the CSS as Mikmonken mentioned. You are looking for something like this:

Code:
body {
    background-color: white;
}

Here is a list of colors you can use:

https://www.w3schools.com/cssref/css_colors_legal.asp
 
I don't have a working system - or even a broken one online at the moment. That said you should be able to poke about in the CSS as Mikmonken mentioned. You are looking for something like this:

Code:
body {
    background-color: white;
}

Here is a list of colors you can use:

https://www.w3schools.com/cssref/css_colors_legal.asp

Which bit you edit i'm not sure, but here is basically what you've done, but without being embedded in a new page.

https://www.homebrewtalk.com/showpost.php?p=6932494&postcount=3581

What i'm not sure of though is where that particular LCD display is picking up it CSS from.
 
I´m looking to power my arduino from 220(relay power input). I currently have my MC on wifi and want to cut the need for a USB connection. Anyone here with a great solution to share?
 
Status
Not open for further replies.
Back
Top