BruControl: Brewery control & automation software

Homebrew Talk

Help Support Homebrew Talk:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
It could be that easy... kinda. Only real issue is we don't support the UNO any longer because it has limited memory capacity.

You could replace the UNO for a MEGA. Would basically be a dead swap (note the MEGA is a bit bigger). A clone is fine... would cost you about $12-15 from an online retailer. An evaluation of the BruControl software could tell you what you need to know.

We're here to help you with any questions or concerns along the way!
Well, I bought a mega, wifi shield and the 20A power supply based off the equipment list. Looking forward to trying it out!
 
All,

Got some other firmware updates we're working on, but in parallel, we are adding a serial communication element which will facilitate communications from interfaces to other devices via I2C, serial UART, SPI, etc. Basic idea will be transmit and receive fields (user and script editable), which will occur on a timed schedule or via commanded events. We will start with I2C to give flexibility to integrate some devices like pH sensors.

Happy to field any comments / ideas / suggestions as we build this in to make sure we get it right.
 
Several weeks ago, I upgraded BC to build 18 then soon after to 19. All works as expected, did brew in between, all was great.

After checking my "Data" folder and I found 2 additional DB files Data_Log-brucontrol.ldf and mdf. (pic below).
I really don't know why I have them and if they appeared because of the upgrade. Anyone could advise if it's safe to delete them? Obviously they were not updated anymore since couple of weeks. BTW my PC running BC is called brucontrol, could it be some file locked issue during whatever local sync?

Another question, I remember it was discussed and seeing somewhere in documentation, but ... lost track of solution.
Is it possible to disable logging of global element (or other sensor) to the db? Sensor can be disabled, I guess that's what stops logging.
After integrating 4 x iSpindels, I noticed that 4 global values (temp, battery, gravity, angle) for each of the sensors + a bunch of other global values are being logged all the time creating unnecessary "noise" in the tables when I am not fermenting. Tables are huge and values logged outside of the fermentation make no use for me (90% of the time). So if I wish to extract / export values, filtering is required. Also DB is growing unnecessary...
Each table has 1 mil rows.
Although "global element" enabled = false produces no error, I think it's not possible to disable a global element?
Or in other words would "global element" enabled = false stop logging ?

thanks everyone


1617687176718.png
 
Last edited:
Hi,

I'm checking why you have two extra DB files with my partner - stay tuned. That said, if you need the space and don't mind missing any old data, then you can delete them.

Globals are recorded every refresh interval. Yes, its wasteful in the database. We are adding some logging control in an upcoming upgrade. And no, you can't disable a Global Element.
 
Anyone have experience with valves like these in BruControl?
View attachment 725167

Solenoids typically don't flow as well and use a lot of power to drive. Some can't be held open for long periods of time. This valve liquid temp max states 80 C, so can't be used above mash temps. If those aren't hurdles, might be worth a look.
 
Solenoids typically don't flow as well and use a lot of power to drive. Some can't be held open for long periods of time. This valve liquid temp max states 80 C, so can't be used above mash temps. If those aren't hurdles, might be worth a look.
You just saved me from learning the hard way! Thanks!
 
Beautiful!! Congrats! Can we get some more pics, especially without the chair?

OK, here are some more pictures, I followed the first 3 videos and the schematic you provided me and I used all the parts you recommended and other than a couple of issues it all worked out great! I may add a small Nuke style PC later in the enclosure behind the touchscreen since my gaming rig that I use as a server to run BruControl is super overkill for the job but it hasn't given me any trouble so far.

I still need to find some panel mount connectors for Ethernet, USB and HDMI to run over to my gaming rig.

LocalStormBrewing1.jpgLocalStormBrewing2.jpgLocalStormBrewing3.jpgLocalStormBrewing4.jpgLocalStormBrewing5.jpgLocalStormBrewing6.jpgLocalStormBrewing7.jpg
 
hi everyone,
Some cosmetic questions... I would like to print the last value of my counter "Total Brew Timer" which would show me the total time of my brew day like this:

new time totalbrewtimer
new string finalmessage
totalbrewtimer = "Total Brewday Timer" Value
finalmessage = "\n\n\nBrewing Finished \n\n" + "Total Brewday Timer" Value
"Message" Value = finalmessage


The script above is working fine, and I get a result like this:
1618224627914.png



Is it possible to have a control over the time (and timedate) format ? The result I'd like to have is simple "00:06:00"
I was thinking about string operations, but I don't see that possibility in scripting.

Any ideas on how to achieve it?

Also is it possible to color part of the text inside the text message presented by global Value? :)
Just polishing my BC while snowing in the mid of April here :-S. "Devil tempts all other men, but that idle men tempt the devil"
 
I installed the brucontrol software, using the mega board. I have 12v running to VCC and the USB plugged in. It's recognized on the computer and the program. Every 3 or seconds it's disconnects and reconnects. "no device response" then reconnect.

Working fine now, figured out both my issues by closing bru control and installing the firmware and now it's working without error lol
 
Last edited:
Is there a basic setup guide or video I seem to have missed?

I was able to flash the firmware, and manages to feel my way through getting my 1 wire sensors to read.

Tried working on getting my HLT kettle setup. Starting simple first. Just an SSR powering an element and a small pump.

Got stuck on the element part. I would like to have it on PID if possible. I added the PID to the dashboard, and I have the sensor linked to it and can set a parameter, but there's no button to actually start it if that makes sense.
 
If the PID element is enabled, it is "started" so to speak. Generally I think most people are using scripting to enable/disable power elements. You could use a switch and then write a small script that checks the state of the switch every second. If the switch is on then enable the PID element. If its off, then disable.
 
If the PID element is enabled, it is "started" so to speak. Generally I think most people are using scripting to enable/disable power elements. You could use a switch and then write a small script that checks the state of the switch every second. If the switch is on then enable the PID element. If its off, then disable.


Thank you. I didn't realize that would be required. Bummer.
 
Thank you. I didn't realize that would be required. Bummer.

Didn't realize what would be required? You can enable and disable the PID element by selecting the slide switch in the lower left corner, or by opening its parameters and flipping the enable switch there. No need to add any other buttons or scripting, unless you want something customized.
 
Thank you. I didn't realize that would be required. Bummer.
I have an extra Mega that is not wired to anything but I create Elements on it to control Elements on my Brewery Mega. It allows me to have the same look and feel of a "standard". I control a "Brewery Mega" PID with a Digital Out on my "Mega Not Wired"

I actually have 3 Elements associated with my Radiator PID.

1. The PID Element itself on the Mega Brewery (Port 23)
1 PID Element.png

2. A Digital Out on the Mega Not Wired (Port 23) set as LED Display
2 PID Control.png

3. A Global just to Display a Picture.
3 Global.png


A: My Main Brewery Screen with the Radiator OFF.
x1.png

B: My Main Brewery Screen with the Radiator ON.
x2.png


The script is quite small and within a loop that is always running:

//Radiator
if "MNW_23_do_RadiatorControl_B1" state == true
"MB_23_PID_RadiatorElement_WO1" enabled = true
"gblS_Pix_RadiatorElement_B1" visibility = visible
else
"MB_23_PID_RadiatorElement_WO1" enabled = false
"gblS_Pix_RadiatorElement_B1" visibility = hidden
endif



A side note:

My naming convention of an Element tells me about it:

"MNW_23_do_RadiatorControl_B1"

MNW = Mega Not Wired
_23_ = Port 23
_do_ = Digital Out
_RadiatorControl_ = What it is
_B1 = Workspace B1
 

Attachments

  • 2 PID Control.png
    2 PID Control.png
    51.3 KB
Another PID question. This is for my HLT (3v Herms system). P= 15, I = .07, D = 0. Max output = 100%, Max integral = 50%. These were set via 1) setting I & D = 0 & increasing P until oscillation, then cutting P in half, then 2) increasing I until oscillation, then cutting in half. It's holding tight (although decreasing P just a touch to limit initial overshoot should be helpful?), but it's basically oscillating around a value 1F higher than the target/set value. Any thoughts on how to get this to oscillate directly around the set point?


PIDtest1.png
 
Current is easy... Add one of these bad-boys onto one of the legs (you will admittedly not be able to measure current from the other line - neutral, so any 120V devices on that side won't be seen). You can see on in action on my personal build thread... works a treat. Linky: CR Magnetics CR9580-50 Current Sensor, 50 AC, +/-0.5% Accuracy, 50 - 400 Hz Frequency: Electronic Component Current Sensors: Amazon.com: Industrial & Scientific

Now, voltage is more trickier. You need a voltage transducer, which will convert the RMS voltage to a DC analog signal. There are may sensors out there but unfortunately many are just dividers, so don't create a DC signal. Here is one. I don't have any experience with this one and the picture doesn't match the description, so would need some part number checking: Loulensy AC Voltage Transducer Voltage Sensor Transmitter Transformer Input 0-300V AC Output 0-5V DC: Amazon.com: Industrial & Scientific

Wire these into an analog input... calibrate in the element and you're done.

Now that said, I see the value of measuring current, but measuring voltage seems unnecessary IMO. The voltage tends to be fairly consistent from the power company and you can't do anything about it anyway. With resistive devices such as our elements, the current will slightly rise and fall with slight voltage changes, so you might see reflections there...
 
Another PID question. This is for my HLT (3v Herms system). P= 15, I = .07, D = 0. Max output = 100%, Max integral = 50%. These were set via 1) setting I & D = 0 & increasing P until oscillation, then cutting P in half, then 2) increasing I until oscillation, then cutting in half. It's holding tight (although decreasing P just a touch to limit initial overshoot should be helpful?), but it's basically oscillating around a value 1F higher than the target/set value. Any thoughts on how to get this to oscillate directly around the set point?


View attachment 726095

What probes are you using? What calibrations do you have set up (on both the probe and PID)?
 
What probes are you using? What calibrations do you have set up (on both the probe and PID)?

1-wire temp probe. Linear offset of +1 F (1-wire reads 1 degree lower than my Thermapen). For the PID, calibration is a linear divider of 2.55 to convert 0-255 to 0-100%

Edit: Hmm - If the PID element is working off the initial/native value (i.e. 150 F instead 150 F +1) this makes perfect sense. Is that what I'm running into here?
 
Yes. Long story short... 1-wire sensors do not reverse calibrate back into the devices which use them.

It requires some work around for us to fix these, and we should. So I’m adding to the list. Hope you can live with it for a bit.

BTW, 1-wire sensors claim pretty good accuracy. If you have more than one “standard” probe to test them against, it might be worth a check. I know thermapen is pretty good but not sure their declared accuracy.
 
Yes. Long story short... 1-wire sensors do not reverse calibrate back into the devices which use them.

It requires some work around for us to fix these, and we should. So I’m adding to the list. Hope you can live with it for a bit.

BTW, 1-wire sensors claim pretty good accuracy. If you have more than one “standard” probe to test them against, it might be worth a check. I know thermapen is pretty good but not sure their declared accuracy.

No sweat, I can live with 1F and it's easy enough to swap probes if need be. Thanks for the quick responses!
 
Last edited:
I am ready to order the rest of my Manifold valves.

I personally like the CR05 valves that take power to open and power to close. Since these valves reverse polarity, I cannot figure out if I can wire to BruControl.

For Power to open and Close the valve, there are two wires: One Blue and one Yellow.

To Open: Blue to Positive, Yellow to Ground.
To Close: Yellow to Positive, Blue to Ground

My head hurts trying to figure out if I can use these. H Bridge?

If not, CR03 3 wire is easy, but no feedback circuits.

Has anyone wired CR05 valves?
 
I used a DPDT relay to reverse the polarity for the one I have. Otherwise you will need 2 SPDT relays and either use the double throw option in the firmware (not sure if this is operational yet, though), or use scripting to turn one relay off as the other one turns on. Ultimately for me, I decided it wasn't worth the hassle/IO use and I went with CR02/CR03 valves instead.
 
The TC butter fly valve I have is in a CR05 configuration. In my first control panel I used 2 SPDT relays. In my new panel I have a 4 channel DPDT relay for these. Either way works the same.

Wire the blue to the common pin of one of the relays. Connect the NO of that relay to power and the NC to ground. Connect the yellow to the common of the second relay. Then connect the NC to power and the NO to ground.

If you use 2 SPDT relays you can wire the relay inputs to the same output on the mega.
 
Last edited:
The TC butter fly valve I have is in a CR05 configuration. In my first control panel I used 2 SPDT relays. In my new panel I have a 4 channel DPDT relay for these. Either way works the same.

Wire the blue to the common pin of one of the relays. Connect the NO of that relay to power and the NC to ground. Connect the yellow to the common of the second relay. Then connect the NC to power and the NO to ground.

If you use 2 SPDT relays you can wire the relay inputs to the same output on the mega.
Where did you get the CR05 Butterfly valve? I was planning on Manual Butterfly Valves that come with the vessels for the outlet but a CR05 would be nice. I also plan on adding some rotary switches so I can "manually" open or close the valves. I have some 8 channel DPDT Relays so those would work. I think I ordered them when I figured out how to so it last time but had a brain freeze!
 
This isn't the exact one I have, but its very similar construction. Mine is a 'Covna' branded one, and overall it works fine, its just large, loud, and slow. The listing also doesn't indicate what the valve control method is, so you might have to contact them for options and further info.
 
Back
Top