I am in Australia and have sourced my parts locally for an arduino build (spent way more than just buying the spark). Im nearly finished building my chamber and have really enjoyed tinkering around with it but I would now like to take it a step further. I know very little about linux but I would like to run an OS on the RPI 2 that can host the brewpi server aswell as being able to have basic OS functionality like web browsing, youtube etc. I would then mount a small touch screen lcd in the door of the fridge. Im hoping I can have the new brepi gui running to display temps and then revert back to a basic desktop
Can this be done and what OS would be the go (debian wheezy?), id love it to run win 10 but i dont want to jeopardize how robust my system runs to do this. Thanks in advance for helping a NOOB!
Yeah I did this but in a small scale (4inch) there are a number of screens that are pitched as plug and play but in reality you have to do a fair bit of faffing, and researching to try and find the right instructions that work for your situation, i must have reinstalled from back up 4 or 5 times to get a fresh start.
eventually though i used a noobs install and then edited a few files and got it working, i can’t remember whether i posted what and how i did it here, or in another forum, but effectively i just get my screen to boot directly into a full screen chrome with only the little LCD display viewable, but effectively all you want to do is boot into desktop and possible have brewpi automatically open.
OK so here is what i posted in another forum, if you want to just add the screen just take a look at the first link, if you want to have it open into a kiosk (full screen webpage) have a look at the second link, the only issue i have with this is that it is difficult to get out of kiosk mode from the touch screen as i can’t pull up the keyboard (but i don’t need to so haven’t really looked)
OK so with some help from my brother in law (well most of it anyway)
I was given the Waveshare spot pear 4inch touchscreen display, that i thought i’d use as a display panel for my second brew fridge.
you can also create an independent lcd.html and a lcd.css that are saved in the same location as index.html. which allows you to extract the top left panel only and it serves as a display.
and you get something like the picture at the bottom (i need some more trial and error to get it looking perfect)
for anyone interested in doing it hear is the lcd.html text
<html>
<head>
<title>BrewPi LCD</title>
<link type="text/css" href="lcd.css" rel="stylesheet"/>
<script type="text/javascript" src="js/jquery-1.11.0.min.js"></script>
</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>
</div>
<script type="text/javascript">
function refreshLcd(){
"use strict";
$.post('socketmessage.php', {messageType: "lcd", message: ""},
function(lcdText){
var $lcdText = $('#lcd .lcd-text');
for (var i = lcdText.length - 1; i >= 0; i--) {
$lcdText.find('#lcd-line-' + i).html(lcdText[i]);
}
}, "json")
.fail(function() {
var $lcdText = $('#lcd .lcd-text');
$lcdText.find('#lcd-line-0').html("Cannot receive");
$lcdText.find('#lcd-line-1').html("LCD text from");
$lcdText.find('#lcd-line-2').html("Python script");
$lcdText.find('#lcd-line-3').html(" ");
}).always(function() {
window.setTimeout(refreshLcd,5000);
}
);
}
$(document).ready(function(){
"use strict";
refreshLcd();
});
</script>
</body>
</html>
and hear is the separate CSS file that you need in order to change the size of the panel text etc.
.lcddisplay {
width: 480px;
height: 320px;
float: left;
margin: 5px;
background: #000000; /* Old browsers */
background: -moz-linear-gradient(top, #000000 2%, #2b2b2b 11%, #212121 54%, #212121 92%, #000000 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(2%,#000000), color-stop(11%,#2b2b2b), color-stop(54%,#212121), color-stop(92%,#212121), color-stop(100%,#000000)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #000000 2%,#2b2b2b 11%,#212121 54%,#212121 92%,#000000 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #000000 2%,#2b2b2b 11%,#212121 54%,#212121 92%,#000000 100%); /* Opera11.10+ */
background: -ms-linear-gradient(top, #000000 2%,#2b2b2b 11%,#212121 54%,#212121 92%,#000000 100%); /* IE10+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=0 ); /* IE6-9 */
background: linear-gradient(top, #000000 2%,#2b2b2b 11%,#212121 54%,#212121 92%,#000000 100%); /* W3C */
-webkit-box-shadow: inset 1px 1px 5px #333333;
-moz-box-shadow: inset 1px 1px 5px #333333;
box-shadow: inset 1px 1px 5px #333333;
border: 2px solid #333;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
border-radius: 2px;
}
.lcddisplay .lcd-text{
float:left;
margin: 65px 16px;
}
.lcd-line{
float:left;
clear:left;
font-size: 35px;
font-weight: normal;
font-style: normal;
font-family: '5x8LCDHD44780UA02Regular', monospace;
color: #FFFF00;
white-space: pre;
}
to edit the display to fit your device change
.lcddisplay {
width: 480px;
height: 320px;
to edit the placement of the text change
.lcddisplay .lcd-text{
float:left;
margin: 65px 16px;
and to make the text fill the screen edit
.lcd-line{
font-size: 35px;
i inspected the elements in chrome and made the adjustments there to see how it looked (you can set the screen size to replicate a device) and used trial and error.
I am sure there is an easier way to do that but it worked for me.
you access the LCD display by ipaddress/lcd.html
hope someone finds this useful
Thanks well appreciated. I now have the brewpi up and running headless, so just have to decide whether to keep spending and tinkering or leave it alone and actually brew some beer.
My main concern now is finding a suitable heater as I cant get the tube heater in Aus. Im considering a 50w dichroic downlight lamp. It has me thinking whether the chance of failure on my sainsmart relay board is high enough that the contacts are likey to fuse and fail closed or i could just be over thinking it.