NEW StrangeBrew Elsinore Thread

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.
I had a RTL8188CU based card that caused me massive network issues (I changed it and it's been fine ever since)

Good to know - I'll check on this when I get home - I just bought the USB WIFI dongles just for this project.
 
Here's what I got starting the server on wifi

Code:
pi@raspberrypi ~ $
pi@raspberrypi ~ $ ls
BrewServer  Desktop  interfaces.bak  ocr_pi.png  python_games
pi@raspberrypi ~ $ cd BrewServer
pi@raspberrypi ~/BrewServer $ ls
build         elsinorejar.rexpfd  graph-data  libs     README.md  templates
build.xml     elsinore.xsd        img         logos    repo
Elsinore.jar  extras              launch.sh   pom.xml  src
pi@raspberrypi ~/BrewServer $ ./launch.sh
Starting Elsinore as pi
Oct 05, 2014 4:11:14 PM com.sb.elsinore.LaunchControl main
INFO: Running Brewery Controller.
CFG IS NULL
DOC IS NULL
Checking for 28-000005550382
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp <init>
INFO: Adding28-000005550382
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp <init>
INFO: 28-000005550382 added.
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is: -999
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is now: -999
Checking for 28-000005585ee1
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp <init>
INFO: Adding28-000005585ee1
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp <init>
INFO: 28-000005585ee1 added.
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is: -999
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is now: -999
Checking for 28-0000062bb20d
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp <init>
INFO: Adding28-0000062bb20d
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp <init>
INFO: 28-0000062bb20d added.
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is: -999
Oct 05, 2014 4:11:15 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is now: -999


No config data found as usable. Select a input and name it (i.e. "1 kettle" no quotes) or type "r" to refresh:
1) 28-000005550382 74.75
2) 28-000005585ee1 74.8616
3) 28-0000062bb20d 74.8616
Please go to the Web UI to the web UI http://raspberrypi:8080/controller
Oct 05, 2014 4:11:18 PM com.sb.elsinore.LaunchControl <init>
INFO: Starting Status Recorder
Oct 05, 2014 4:11:18 PM com.sb.elsinore.LaunchControl <init>
INFO: CONFIG READ COMPLETED***********
Oct 05, 2014 4:11:18 PM com.sb.elsinore.BrewServer <init>
INFO: Launching on port 8080
Oct 05, 2014 4:11:18 PM com.sb.elsinore.BrewServer <init>
INFO: Debug System property: null
Oct 05, 2014 4:11:18 PM com.sb.elsinore.BrewServer <init>
INFO: Debug System property: null
Language: en_GB
Server started, kill to stop.
 
initial screen shot and more server messages

Code:
Server started, kill to stop.
Warning: NLS unused message: CHANGE_SCALE in: com.sb.elsinore.nls.messages
Warning: NLS unused message: DUTY in: com.sb.elsinore.nls.messages
Warning: NLS unused message: CALIBRATION in: com.sb.elsinore.nls.messages

1.jpg
 
HLT Configuration and server messages


Code:
Warning: NLS unused message: CALIBRATION in: com.sb.elsinore.nls.messages
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Updated temp name HLT
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Updated temp name HLT
Oct 05, 2014 4:20:44 PM com.sb.elsinore.PID setAux
WARNING: Could not detect GPIO as valid:
Oct 05, 2014 4:20:44 PM com.sb.elsinore.PID setAux
WARNING: Could not detect GPIO as valid:
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Create PID
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Create PID
No definitions file found, assuming direct mapping
No definitions file found, assuming direct mapping
No definitions file found, assuming direct mapping

2.jpg


3.jpg
 
Server messages after pressing control-c to shut down the server


Code:
Warning: NLS unused message: CALIBRATION in: com.sb.elsinore.nls.messages
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Updated temp name HLT
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Updated temp name HLT
Oct 05, 2014 4:20:44 PM com.sb.elsinore.PID setAux
WARNING: Could not detect GPIO as valid:
Oct 05, 2014 4:20:44 PM com.sb.elsinore.PID setAux
WARNING: Could not detect GPIO as valid:
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Create PID
Oct 05, 2014 4:20:44 PM com.sb.elsinore.BrewServer editVessel
WARNING: Create PID
No definitions file found, assuming direct mapping
No definitions file found, assuming direct mapping
No definitions file found, assuming direct mapping
^CProbe: 28-000005550382 is not setup, not saving
Probe: 28-000005585ee1 is not setup, not saving
Saving HLT with probe 28-0000062bb20d
Creating element of device
Creating on configDoc base
Creating element of probe
on device
Creating element of cutoff
on device
Creating element of calibration
on device
Checking for volume
Saving PID HLT
Saving the information for HLT
Using base node device with ID HLT
Creating element of duty_cycle
on device
Creating element of cycle_time
on device
Creating element of set_point
on device
Creating element of proportional
on device
Creating element of integral
on device
Creating element of derivative
on device
Creating element of gpio
on device
Creating element of min
on device
Creating element of max
on device
Creating element of time
on device
Creating element of aux
on device
Creating element of pumps
Creating on configDoc base
Probe: 28-000005550382 is not setup, not saving
Probe: 28-000005585ee1 is not setup, not saving
Saving HLT with probe 28-0000062bb20d
Checking for volume
Saving the information for HLT
Using base node device with ID HLT
pi@raspberrypi ~/BrewServer $
 
Server messages when relaunching server and the screen looks identical to post 243.

Code:
Starting Elsinore as pi
Oct 05, 2014 4:26:12 PM com.sb.elsinore.LaunchControl main
INFO: Running Brewery Controller.
CFG IS NULL
DOC IS NULL
Checking for 28-000005550382
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp <init>
INFO: Adding28-000005550382
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp <init>
INFO: 28-000005550382 added.
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is: -999
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is now: -999
Checking for 28-000005585ee1
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp <init>
INFO: Adding28-000005585ee1
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp <init>
INFO: 28-000005585ee1 added.
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is: -999
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is now: -999
Checking for 28-0000062bb20d
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp <init>
INFO: Adding28-0000062bb20d
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp <init>
INFO: 28-0000062bb20d added.
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is: -999
Oct 05, 2014 4:26:13 PM com.sb.elsinore.Temp setScale
WARNING: Cut off is now: -999


No config data found as usable. Select a input and name it (i.e. "1 kettle" no quotes) or type "r" to refresh:
1) 28-000005550382 75.65
2) 28-000005585ee1 75.65
3) 28-0000062bb20d 75.65
Please go to the Web UI to the web UI [url]http://raspberrypi:8080/controller[/url]
Oct 05, 2014 4:26:16 PM com.sb.elsinore.LaunchControl <init>
INFO: Starting Status Recorder
Oct 05, 2014 4:26:16 PM com.sb.elsinore.LaunchControl <init>
INFO: CONFIG READ COMPLETED***********
Oct 05, 2014 4:26:16 PM com.sb.elsinore.BrewServer <init>
INFO: Launching on port 8080
Oct 05, 2014 4:26:16 PM com.sb.elsinore.BrewServer <init>
INFO: Debug System property: null
Oct 05, 2014 4:26:16 PM com.sb.elsinore.BrewServer <init>
INFO: Debug System property: null
Language: en_GB
Server started, kill to stop.
 
I had a RTL8188CU based card that caused me massive network issues (I changed it and it's been fine ever since)

It is a RTL8188CU based dongle... :( damn...

Here is my /etc/networks/interfaces file

Code:
auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface home inet static
address 192.168.1.241
netmask 255.255.255.0
gateway 192.168.1.1

iface default inet dhcp

Here is my wpa_supplicant.conf file

Code:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
        ssid="Homer"
        psk="nunyabusiness"
        proto=RSN
        key_mgmt=WPA-PSK
        pairwise=CCMP TKIP
        group=CCMP TKIP
        id_str="home"
        }
 
When setting up a temperature sensor, I see the option for AUX GPIO. How is this used?

Is there documentation on how to configure a mash profile? It looks like I need to click activate when I've added all my mash steps. Is there a way to delete a mash step? Can I stop the mash profile process once started?
 
When setting up a temperature sensor, I see the option for AUX GPIO. How is this used?

Is there documentation on how to configure a mash profile? It looks like I need to click activate when I've added all my mash steps. Is there a way to delete a mash step? Can I stop the mash profile process once started?

All your questions are answered in the setup instructions links in the README on the github page.
 
Hi Doug,

I've been tinkering with SB Elsinore Server (on a ras pi). I was wondering about a few things:

-any way to disable the brewery logo from showing up? its kind of in the way when viewing on a mobile device

-can i easily recompile code on the pi? i'm a c/c++ guy by trade, so i can muddle my way through the code (hence trying to accomplish bullet point 1), but I'm not too good at creating the java build environments. I got ant on my raspi, but still had a bunch of errors when i did an 'ant buildjar'

-given my issues with the second bullet point, i tried to load the project into eclipse on my mac (i think somewhere in the thread you said you develop in eclipse), but haven't got that to work. I've tried a bunch of different import methods but none seem to work (i'm and eclipse noob). Can you give me some quick basic instructions on how you load the project and build?

Thanks!
 
-any way to disable the brewery logo from showing up? its kind of in the way when viewing on a mobile device

The overlay issue is fixed now, but you'll be able to disable the logo by using an invalid theme (-l none) in the launch script.

-can i easily recompile code on the pi? i'm a c/c++ guy by trade, so i can muddle my way through the code (hence trying to accomplish bullet point 1), but I'm not too good at creating the java build environments. I got ant on my raspi, but still had a bunch of errors when i did an 'ant buildjar'

You'll not want to use the RPi as a dev machine since the life of a SD card isn't very long, the best way to do it is use Eclipse or similar and run the project as a maven install (on the pom.xml). I've just removed the ant build.xml since it was way out of date.

-given my issues with the second bullet point, i tried to load the project into eclipse on my mac (i think somewhere in the thread you said you develop in eclipse), but haven't got that to work. I've tried a bunch of different import methods but none seem to work (i'm and eclipse noob). Can you give me some quick basic instructions on how you load the project and build?

You should be able to import directly from Git, but the way I do it (because I like using git command line) is to clone the repository somewhere, then from my workspace:

File -> Import -> General -> Existing Projects Into Workspace

Browser to where you cloned SB_Elsinore_Server, select the directory, hit OK, then hit finish.
 
Updates: UTF8 rendering fixes for foreign character encoding
Fix the CSS for the brewery logo
Disable the brewery logo if the theme doesn't exist. But still allow a custom one to be uploaded.
 
sorry I think I may be missing something but should I be using pin 42 on the P9 header with BBB? I can't get it so see my temp probe at all. I tried one I had left over from a project and then pulled one from my working BT. It doesn't see either of them.
 
May I ask what control panels/enclosures you are using and how your are mounting RPi? Thanks in advance!
 
sorry I think I may be missing something but should I be using pin 42 on the P9 header with BBB? I can't get it so see my temp probe at all. I tried one I had left over from a project and then pulled one from my working BT. It doesn't see either of them.

I thought I had this in the doc, but I hadn't, it's P8.11 (the raw dts file has this as a comment). P9.42 is the GPIO that the default jgpio dtbo file uses for the SSR output.
 
May I ask what control panels/enclosures you are using and how your are mounting RPi? Thanks in advance!

I use a NEMA box (which I'll be replacing soon with a wooden box with a metal backplane), to mount the SSRs and connections. Then a two piece box for the RPi/BBB since they have rear mounting holes.
 
Lots of changes today,Andy did a huge rewrite of the output control section to make it way easier for us to enable cooling outputs (and it's way cleaner now too).

I've also done some more improvements for handling spaces in the names everywhere. Which should fix a load of problems people have had.
 
I use a NEMA box (which I'll be replacing soon with a wooden box with a metal backplane), to mount the SSRs and connections. Then a two piece box for the RPi/BBB since they have rear mounting holes.


Thank you Doug! What is a two piece box? Google was not much help. Also, do you use breadboard? Would you mind post a picture of inside the enclosure? Thanks again!


Sent from my iPhone using Home Brew
 
A couple of minor updates today, I've redone the way devices are instantiated at startup (seems to be OK for me), and the "Send Command" box is not longer displayed until you select a mode button.
 
Lots of updates today, but the changes are all pushed to a new branch.

I'm getting set up to use Elsinore to heat and cool (mash profiles are easy to use as fermentation profiles), mainly so I can use it for my keezer since my old one died and I'm building a new 7 keg unit.

If anyone wants to try the new branch, which should still work for heating,

git checkout enable_cooling

Will checkout the new branch

git checkout master

Will switch you back.
 
I hope no-one has been using the Hysteria mode, I've found a fairly large bug that means it basically doesn't work...

I've made a lot of changes (a large rewrite) to the enable_cooling branch.

The changes will be merging back into main within a few days. I'll be using Elsinore to control my keezer and my fermentation chamber as a result
 
Everything is merged over now, the main branch of Elsinore has a lot of changes and I've yet to seriously test the cooling mode. But the system appears to control everything now.

I've also fixed a lot of errors when saving the config, and the config format has changed, but it will auto migrate. If you're on a really old build, with non XML configuration you'll need to recreate the configuration from scratch, sorry, I just wanted to lighten the load!
 
Exciting developments. I'm just planning a fermentation chamber and keezer in my garage which will required a lot of help in terms of temperature regulation... I never thought I'd say this, but something on HBT is actually going to save me from purchasing additional equipment here! I'll use my control panel for fermentation control and serving most of the time, and load a different configuration file and switch over to element and pump control while brewing... perfect & economical.

I haven't gone over your commits in detail yet - but is it possible to have both a heating and a cooling device in use simultaneously? One option would just be use two temp sensors in the same chamber - with one controlling hysteria of a heating and another a cooling device when needed. What about controlling two GPIOs from a single sensor?

Also - have there been any special considerations for the data logging, which in this use will be ran for weeks at a time perhaps. Will the BBB memory be sufficient here, or will other methods of storage be necessary (dropbox integration perhaps as a possibility?)

Great and exciting work as always Doug.
 
I haven't gone over your commits in detail yet - but is it possible to have both a heating and a cooling device in use simultaneously?

Setup two temperature probes with different GPIO outputs, you can't have a heater and a cooler running from the same temperature probe (not sure why you'd want to) at the same time, but it's currently setup as "Temp too high? Enable cooling. Temp too low? Enable heating"

You'll want to use hysteria mode if you're using a fridge/freezer/similar compressor based thing, this is the same way that an STC1000 or Johnson Controls A419 work. Since the minimum time if the delay between changing the state of the output (either from on to off, or off to on).

What about controlling two GPIOs from a single sensor?

I haven't added this in yet, I've been thinking of it though, at the moment you can just daisy chain the SSRs/relays from the same GPIO.

Also - have there been any special considerations for the data logging, which in this use will be ran for weeks at a time perhaps. Will the BBB memory be sufficient here, or will other methods of storage be necessary (dropbox integration perhaps as a possibility?)

Not done any changes to the data logging yet, I'm going to be adding in a way to reset the data and to add on data points, and to extract data output to files. I've not looking into Dropbox, since it's not really removing data from the folder.
I'm going to add a custom data logger directory, so you could mount a external drive, or use a network mount, or point it at a dropbox sync folder which should be enough I think.

Data management is something I need to improve so you can chose to delete older logs or view them.

My main integration target is with something like raspberry pints or other pieces where you can plan your recipe (or load it into) StrangeBrew java, then send it to the taplist (this is what I'll be doing on my new keezer).
 
Been following this thread and looking too build an E-HERMS, 30a, two element and two pump, system using this software and an RPi that I have laying around. Just a couple things I can't figure out.

I assume I can use the same 40a SSRs used in Kal type builds to run the elements?

What would I use to trigger the pumps on and off? Is there a relay or contactor that works best?

How do I connect the wires to the GPIO connections on the Pi? Do you use an add on board for this? Is there a connector that I can solder to the wire?

Does any one have an example wiring diagram for a build?
 
I assume I can use the same 40a SSRs used in Kal type builds to run the elements?
Yes, any standard SSR that accepts a 5V switching signal.

What would I use to trigger the pumps on and off? Is there a relay or contactor that works best?

You can use SSRs, or relays, either work. There's no automatic trigger, just buttons on the WebUI.

How do I connect the wires to the GPIO connections on the Pi? Do you use an add on board for this? Is there a connector that I can solder to the wire?

This is up to you, you can crimp ends to control wires and plug them in, or you can but things like prototyping capes, or use jumper cables, etc...

Does any one have an example wiring diagram for a build?

The RaspberryPi documentation shows the way I had it wired up: http://dougedey.github.io/2014/03/22/RaspberryPi-Setup/

The three SSRs show the two ways you can wire a element, two SSRs (one per wire) or one SSR (one for on of the input lines, the other is always hot, a bit less safe).
 
I'll use my control panel for fermentation control and serving most of the time, and load a different configuration file and switch over to element and pump control while brewing... perfect & economical.

I'm exploring hiding devices from the WebUI so you may not even need to bother changing the config file, just hide the devices you're not going to use :)
 
Yes, any standard SSR that accepts a 5V switching signal.







You can use SSRs, or relays, either work. There's no automatic trigger, just buttons on the WebUI.







This is up to you, you can crimp ends to control wires and plug them in, or you can but things like prototyping capes, or use jumper cables, etc...







The RaspberryPi documentation shows the way I had it wired up: http://dougedey.github.io/2014/03/22/RaspberryPi-Setup/



The three SSRs show the two ways you can wire a element, two SSRs (one per wire) or one SSR (one for on of the input lines, the other is always hot, a bit less safe).


Thanks for the quick reply. Looking forward to getting this set up! You mentioned crimping ends to the control wire to connect to the Pi. Do you a link to a crimp on end that would work? Sorry I am a bit new to working with these boards.

Thanks!


Sent from my iPhone using Home Brew
 
I'm exploring hiding devices from the WebUI so you may not even need to bother changing the config file, just hide the devices you're not going to use :)

Interesting... I haven't wired any extra ports for temp sensors (probably my largest oversight in my panel build), so I can only have three plugged in now. I think this would give me motivation roll up my sleeves and change that however.

It's not possible for me to fit in any extra relays though - so, you're saying there potentially would be a way of linking a single GPIO to two sensors/PIDs in a single configuration file, with having only one of those PIDs in command at a time.
 
I haven't added this in yet, I've been thinking of it though, at the moment you can just daisy chain the SSRs/relays from the same GPIO.

I meant independently - i.e. a single temp probe that links to one SSR for cooling and one for heating in hysteria and displays as a single device in the UI. A simpler implementation would be the ability to set up two PIDs from the same temp sensor. And of course, the current ability to have two PIDs - one set up for heating, and one for cooling the same kegerator/fermentation chamber is perfectly workable. Especially seeing as you could put two sensors on the end of a single cable (I think this works, been awhile since I thought about the wiring), and the sensors are so cheap.

Not done any changes to the data logging yet, I'm going to be adding in a way to reset the data and to add on data points, and to extract data output to files. I've not looking into Dropbox, since it's not really removing data from the folder.
I'm going to add a custom data logger directory, so you could mount a external drive, or use a network mount, or point it at a dropbox sync folder which should be enough I think.

Data management is something I need to improve so you can chose to delete older logs or view them.

Right on - in the meantime is it possible to reduce the sampling rate for fermentation control situations, or perhaps turn off logging completely in the case of a kegerator? Are current logs stored in memory or on disk? Just thinking out loud here not making feature requests :ban:
 
So I finally got myself since glasses engraved, I've spoken to some people and I'll be sending them out to those who have provided a lot of help (and that are in north America, because I don't trust then not to smash getting to Europe, sorry)



dx5x5Na.jpg


v7j6KWV.jpg
 
Interesting... I haven't wired any extra ports for temp sensors (probably my largest oversight in my panel build), so I can only have three plugged in now. I think this would give me motivation roll up my sleeves and change that however.

It's not possible for me to fit in any extra relays though - so, you're saying there potentially would be a way of linking a single GPIO to two sensors/PIDs in a single configuration file, with having only one of those PIDs in command at a time.

You can make a breakout box for extra probes, you can daisy chain remember :)
 
I meant independently - i.e. a single temp probe that links to one SSR for cooling and one for heating in hysteria and displays as a single device in the UI. A simpler implementation would be the ability to set up two PIDs from the same temp sensor. And of course, the current ability to have two PIDs - one set up for heating, and one for cooling the same kegerator/fermentation chamber is perfectly workable. Especially seeing as you could put two sensors on the end of a single cable (I think this works, been awhile since I thought about the wiring), and the sensors are so cheap.

Oh, that's in there, double clicking the title (to edit the device) gives you the ability to add a cooling GPIO (I think there's some logic missing, I'll finish confirming tonight).


Right on - in the meantime is it possible to reduce the sampling rate for fermentation control situations, or perhaps turn off logging completely in the case of a kegerator? Are current logs stored in memory or on disk? Just thinking out loud here not making feature requests :ban:

No, I'll add that now. Give me an hour or two :)
 
Thanks for the quick reply. Looking forward to getting this set up! You mentioned crimping ends to the control wire to connect to the Pi. Do you a link to a crimp on end that would work? Sorry I am a bit new to working with these boards.

Thanks!


Sent from my iPhone using Home Brew

Double check what I'm saying, but something like this: http://www.adafruit.com/products/349

Though you'll need to use crimp connections that fit it.

The other way is to get prototyping male-male or female-female cables and just cut off the end you don't need. Then you can solder away.
 
Updates: the status recorder (logs) can be disabled using
Code:
-r false
And the recorder output directory can be set using
Code:
-s <directory>
 

Latest posts

Back
Top