NEW StrangeBrew Elsinore Thread | Page 7 | HomeBrewTalk.com - Beer, Wine, Mead, & Cider Brewing Discussion Community.

Homebrew Talk

Help Support Homebrew Talk by donating:

  1. Dismiss Notice
  2. We have a new forum and it needs your help! Homebrewing Deals is a forum to post whatever deals and specials you find that other homebrewers might value! Includes coupon layering, Craigslist finds, eBay finds, Amazon specials, etc.
    Dismiss Notice

NEW StrangeBrew Elsinore Thread

Discussion in 'Electric Brewing' started by DougEdey, May 18, 2014.

 

  1. atoughram

    Well-Known Member

    Posted Oct 5, 2014
    Good to know - I'll check on this when I get home - I just bought the USB WIFI dongles just for this project.
     
  2. atoughram

    Well-Known Member

    Posted Oct 6, 2014
    Here's what I got starting the server on wifi

    Code:
    [email protected] ~ $
    [email protected] ~ $ ls
    BrewServer  Desktop  interfaces.bak  ocr_pi.png  python_games
    [email protected] ~ $ cd BrewServer
    [email protected] ~/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
    [email protected] ~/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.
     
  3. atoughram

    Well-Known Member

    Posted Oct 6, 2014
    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
     
  4. atoughram

    Well-Known Member

    Posted Oct 6, 2014
    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
     
  5. atoughram

    Well-Known Member

    Posted Oct 6, 2014
    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
    [email protected] ~/BrewServer $
     
  6. atoughram

    Well-Known Member

    Posted Oct 6, 2014
    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.
     
  7. atoughram

    Well-Known Member

    Posted Oct 6, 2014
    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"
            }
    
     
  8. DougEdey

    Well-Known Member

    Posted Oct 6, 2014
    Fixed the initial configuration creation and improved edit mode.
     
    jangevaa likes this.
  9. FriendOfBrewers

    Member

    Posted Oct 7, 2014
    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?
     
  10. DougEdey

    Well-Known Member

    Posted Oct 7, 2014
    All your questions are answered in the setup instructions links in the README on the github page.
     
  11. FriendOfBrewers

    Member

    Posted Oct 7, 2014
  12. DougEdey

    Well-Known Member

    Posted Oct 7, 2014
  13. MrRumples

    Member

    Posted Oct 11, 2014
    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!
     
  14. DougEdey

    Well-Known Member

    Posted Oct 11, 2014
    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.

    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.

    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.
     
  15. DougEdey

    Well-Known Member

    Posted Oct 11, 2014
    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.
     
  16. jcalisi

    Well-Known Member

    Posted Oct 13, 2014
    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.
     
  17. HBrew71

    Well-Known Member

    Posted Oct 13, 2014
    May I ask what control panels/enclosures you are using and how your are mounting RPi? Thanks in advance!
     
  18. DougEdey

    Well-Known Member

    Posted Oct 13, 2014
    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.
     
  19. DougEdey

    Well-Known Member

    Posted Oct 13, 2014
    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.
     
  20. DougEdey

    Well-Known Member

    Posted Oct 13, 2014
    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.
     
    jangevaa likes this.
  21. HBrew71

    Well-Known Member

    Posted Oct 13, 2014

    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
     
  22. DougEdey

    Well-Known Member

    Posted Oct 13, 2014
    jangevaa likes this.
  23. DougEdey

    Well-Known Member

    Posted Oct 17, 2014
    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.
     
    castreixanas likes this.
  24. DougEdey

    Well-Known Member

    Posted Oct 18, 2014
    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.
     
  25. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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
     
    castreixanas likes this.
  26. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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!
     
    jangevaa likes this.
  27. castreixanas

    Active Member

    Posted Oct 19, 2014
    Hi, I like the new look without the left zero in probe display.
     
  28. jangevaa

    Well-Known Member

    Posted Oct 19, 2014
    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.
     
  29. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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).

    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.

    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).
     
  30. TechyDork

    Dork of all Tech  

    Posted Oct 19, 2014
    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?
     
  31. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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).
     
  32. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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 :)
     
  33. TechyDork

    Dork of all Tech  

    Posted Oct 19, 2014

    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
     
  34. jangevaa

    Well-Known Member

    Posted Oct 19, 2014
    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.
     
  35. jangevaa

    Well-Known Member

    Posted Oct 19, 2014
    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.

    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:
     
  36. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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)

    [​IMG]

    [​IMG]

    [​IMG]
     
    castreixanas likes this.
  37. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    You can make a breakout box for extra probes, you can daisy chain remember :)
     
  38. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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).


    No, I'll add that now. Give me an hour or two :)
     
  39. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    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.
     
  40. DougEdey

    Well-Known Member

    Posted Oct 19, 2014
    Updates: the status recorder (logs) can be disabled using
    Code:
    -r false
    And the recorder output directory can be set using
    Code:
    -s <directory> 
     
Draft saved Draft deleted

Share This Page

Group Builder