• Please visit and share your knowledge at our sister communities:
  • If you have not, please join our official Homebrewing Facebook Group!

    Homebrewing Facebook Group

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.
As a follow up, I reinstalled 45O, walked away, came back, and then tried the setup routine. It let me enter "0&15%," let me input things, then let me save. I rebooted the device... and it's still not appearing on my WiFi network, but I see its AP in my phone's WiFi list..
Dang, and another update. I let it sit in its AP mode while I messed with something else. After a few moments, the device clicked off and rebooted. Once back up, it appeared on my WiFi list and BC can control the relays (only 3 of the 4 can be used since pin 21 can't be used for this, but I only want cooling, heating, and spunding anyways).

Sorry for the post bomb, but I'll keep playing with this and give a review of it and try to replicate how to make it work. It's very very ideal to for a fermenter control setup.

Another update: I rebooted the device. It will sit in AP mode for a few moments, reset, then will connect to my WiFi and become found by BC. So, this is a viable options, I just need to see why it goes to AP mode for so long.
 
Last edited:
Sorry you jumped through all these hoops! Yes, this should be a viable board, and is.

The reason it’s going into AP mode (and btw you can enter your WiFi credentials here rather than using termite) is one of the pins is being pulled low. We did this for the UniFlex model and kept it in the ESP32 firmware in case someone couldn’t access the USB port.

I don’t recall the pin offhand but if you take a look at the User Manual or the UniFlex product note, it will tell you. I’ll look and report back when I get to the computer.
 
Thanks @BrunDog! I was happy to have it start working; patience was definitely a virtue as I tried a few ways to get things to work. I'm excited to use this board and save significant square inches in a project box.

I'll look at the AP mode setup when I buy my next of this board. That will be very handy.

As for the pin that is being pulled low and triggering AP mode, would that be pin 5? Looking at the Uniflex product note, it says v2 is put into setup mode if the primary probe port is empty, and I think that is pin 5 for the Uniflex.

For this board, pin 5 is one of the relays.
 
I think it is pin 5… if it is pulled to GND on startup, which it would likely be if that pin drives a relay, then the ESP-32 goes into AP mode.

AP mode times out after 3 mins by default, so that’s why it starts working after a bit.

Verified: GPIO 5 on the ESP-32.
 
Last edited:
I think it is pin 5… if it is pulled to GND on startup, which it would likely be if that pin drives a relay, then the ESP-32 goes into AP mode.

AP mode times out after 3 mins by default, so that’s why it starts working after a bit.
Cool. 3 minutes isn't a problem at all. Much appreciated! Hopefully, someone else interested in this board will see this save some headache and worry
 
Wow that is super nice! With the plastic enclosure and external antenna, this would make for a perfect fermentation controller. $22... can't beat that!

I like that they include headers for IO and onboard AC-DC power. Unfortunate they didn't include the USB onboard, but once it's programmed with BC, you can do OTA updates going forward.

Thanks for sharing this - will grab one to test it out!
 
If someone is interested i bought couple of those lately and they work good.
Nice form factor with din mount.
https://robotdyn.com/catalog/smarth...ol-programmable-esp32-4-relays-controller-boa
For extra in/outs you need to desolder 4 micro switches and use a USB dongle to programm IT.
Oh that is nice! Does it let you do a single hot wire in for those relays (the orange block)? Or do you still need to run hot to each relay?

For desoldering the micro switches, do you mean the four small buttons?

The price is fantastic as well. I wish I had seen this before I bought several of the one I had posted about... maybe I'll save those for another project and try one of these.
 
The I/O for the buttons are smartly only inputs anyway. Probably need to desolder the pullup / pulldown resistors in addition to or instead-of the buttons. That said, if you really need these I/O, it's probably easier to just add another interface instead.
 
Like an I2C breakout interface?

I'm making one control box per fermenter, so I'd only need pressure and temp sensors for each. Seems I'd have enough I/O space here. This might be overkill for that simple task, but the opportunity to toy with this is calling, hah.
 
For additional input i just solder a connection to one leg of switch that's IT and works as IT should.Its really nice controller. Iam using one to controll my wood pellet burner for boiling Kettle, i threw away factory controller and put this instead.
Iam using a 1wire probe, flame sensor (photoresitor), and 4 relays to drive augers, ignitor and blow fan. Works very stable, never had a hiccup during a brew.
Bought it on aliexpress.
 
For additional digital outputs i just solder a connection to one leg of switch that's IT and works as IT should.Its really nice controller. Iam using one to controll my wood pellet burner for boilig Kettle, i threw away factory controller and put this instead.
Iam using a 1wire probe, flame sensor (photoresitor), and 4 relays to drive augers, ignitor and blow fan. Works very stable, never had a hiccup during a brew.
Bought it on aliexpress.
Very nicely done, and thanks for the share! Sounds to be very reliable with such a load and a lot going on.
 
@radzieju can you run a single hot line into the AC In to power the relay circuits? Or do you still have to supply hot lines to each relay's COM line? Seems like it would be the main line supply for the relay circuits but I can't find that explicitly on their site.
 
I ordered one for my Fermentation Room. I have two fermenters, two Tilts. and three 12vdc glycol pumps ( one to cool tap water for cooling wort). Looking forward to setting it up.
 
I have a AC line connected to AC in and same line goes through the relays to power a AC loads , fan, 2 augers and ignitor.
They have also nice relay addon boards for this controller in the same factor but BC doesnt work with them (i2c).
 
I have a AC line connected to AC in and same line goes through the relays to power a AC loads , fan, 2 augers and ignitor.
They have also nice relay addon boards for this controller in the same factor but BC doesnt work with them (i2c).
@radzieju Sorry for the questions! Just one more. If powered through AC, does that then power the module as well? Looks like a stepdown is attached, and not worrying about an external stepdown to power the ESP32 would be awesome.
 
AC powers the board, relays are powered from internal step down. I only have AC line attached to controller, no need for extra suplies.1wire probe is powered from board also , and analog sensor too.
 
AC powers the board, relays are powered from internal step down. I only have AC line attached to controller, no need for extra suplies.1wire probe is powered from board also , and analog sensor too.
Thanks for the info! I just realized the relay board I posted about earlier doesn't have a 5V pin, which I need for my pressure transducer (with voltage divider to get it back to the 3.3V input range on the return side), so I guess I'll now be ordering the board you shared since it does support 5V out. I don't want to deal with an external 5V step down since I'd also need a 12–24v step down just to power the board I posted about. Too complicated; I want a simple project box.

Plus the single AC line input makes it a huge selling point for wiring management. The less "I'll kill you" voltage wiring running around the box, the better!
 
We posted firmware beta version 46. This version includes some fixes and paves the way for some advanced functionality in the future. It also uses a better memory management system for its real-time algorithms. This will help with memory-limited interfaces like the MEGA.

New Interface Wiring Maps for v46 are posted as well. That said, hold off on trying it until we publish new Interface Definition files (.brumc) for BruControl. Going forward, we will NOT use ports 100+ for Analog Inputs. These inputs will use their native numbers from here on (eg. MEGA pin A0 which maps to BC port 100 will be port 54, etc.). This will require everyone to switch Analog Inputs to these new ports - sorry!
 
Last edited:
I have some momentary push button LEDs that I want to use as Digital Inputs. They are wired to provide 5 vdc to their respective Port (P Pin) on the Unishield.

I also plan on some floats using Digital Inputs.

I am getting an error in my script:

//ScrDin
//07/19/2022
//OakBarn Brewery
[DinLooper]
sleep 100
//Blue Din
if "MB_43_di_Blue_DINS" value = = true
"sw_AllSwitch" state = true
sleep 2000
endif
go to "DinLooper"


if "MB_43_di_Blue_DINS" value = = true
throws this error:
[ERROR Line 7: 'true' is not a valid second operator]

I have tried on, and -1 with same results

I also tried state instead of value

//ScrReset
//07/19/2022
//OakBarn Brewery
[DinLooper]
sleep 100
//Blue Din
if "MB_43_di_Blue_DINS" state = = On
"sw_AllSwitch" state = true
sleep 2000
endif
go to "DinLooper"

Error: [ERROR Line 7: 'On' is not a valid second operator]

The manual (page 35)

"The state is presented as the Element’s value and will either be ON or OFF depending if the voltage is high or low"

What attribute of a Digital Input can I read and what are acceptable operators?
 
We posted firmware beta version 46. This version includes some fixes and paves the way for some advanced functionality in the future. It also uses a better memory management system for its real-time algorithms. This will help with memory-limited interfaces like the MEGA.

New Interface Wiring Maps for v46 are posted as well. That said, hold off on trying it until we publish new Interface Definition files (.brumc) for BruControl. Going forward, we will NOT use ports 100+ for Analog Inputs. These inputs will use their native numbers from here on (eg. MEGA pin A0 which maps to BC port 100 will be port 54, etc.). This will require everyone to switch Analog Inputs to these new ports - sorry!
Not always as simple as deleting a Device Element and making it correspond to your new mapping if I use my scheme. I have so many Elements that I name them in a very specific way.

For example my Port 105 on my Brewery Mega is:
MB_105_10KLittleMac_B1


The name is unique and tells me a lot about what it is. I decided to do this when I was finding that repeating something on another workspace generated an error. So long ago I do not remember why, but by doing this and using the Alias Display Name, the issue was resolved.

I would suggest that you allow both the "old" analog Numbers AND the new native ports going forward if possible in your Interface Definition files (.brumc). That would allow anyone that has already assigned the "old" port numbers to do nothing and new Analog inputs could use your new scheme.
Any one that has the "old" Analog numbers could upgrade to the new firmware and at their own pace and eventually meet the new scheme. You could give a year to get to the new scheme.
 
Not always as simple as deleting a Device Element and making it correspond to your new mapping if I use my scheme. I have so many Elements that I name them in a very specific way.

For example my Port 105 on my Brewery Mega is:
MB_105_10KLittleMac_B1


The name is unique and tells me a lot about what it is. I decided to do this when I was finding that repeating something on another workspace generated an error. So long ago I do not remember why, but by doing this and using the Alias Display Name, the issue was resolved.

I would suggest that you allow both the "old" analog Numbers AND the new native ports going forward if possible in your Interface Definition files (.brumc). That would allow anyone that has already assigned the "old" port numbers to do nothing and new Analog inputs could use your new scheme.
Any one that has the "old" Analog numbers could upgrade to the new firmware and at their own pace and eventually meet the new scheme. You could give a year to get to the new scheme.

Sorry, this just isn't possible. Once we set the port numbers in the firmware, they are fixed and expect those to be used by BruControl.

That said, you can edit your configuration file (or we can) to change the port numbers without deleting and recreating the Analog Input Elements.
 
We posted firmware beta version 46. This version includes some fixes and paves the way for some advanced functionality in the future. It also uses a better memory management system for its real-time algorithms. This will help with memory-limited interfaces like the MEGA.

New Interface Wiring Maps for v46 are posted as well. That said, hold off on trying it until we publish new Interface Definition files (.brumc) for BruControl. Going forward, we will NOT use ports 100+ for Analog Inputs. These inputs will use their native numbers from here on (eg. MEGA pin A0 which maps to BC port 100 will be port 54, etc.). This will require everyone to switch Analog Inputs to these new ports - sorry!
Looking forward to what comes after. :) Thank you for all the updates.
 
Rather than
"That said, hold off on trying it until we publish new Interface Definition files (.brumc) for BruControl. Going forward, we will NOT use ports 100+ for Analog Inputs. These inputs will use their native numbers from here on (eg. MEGA pin A0 which maps to BC port 100 will be port 54, etc.). This will require everyone to switch Analog Inputs to these new ports - sorry!"

Why not have both the Old Ports and the new ones active for one year. That would give everyone a change to upgrade to the firmware and some time to change their configuration within the year time frame.
 
Your line 7 error is because you are looking for "state" but that is not a valid DI operator. Try "value" instead.
If you look at my post I did try both state and value. They both produced the same error.

if "MB_43_di_Blue_DINS" value = = true
throws this error:
[ERROR Line 7: 'true' is not a valid second operator]

or

if "MB_43_di_Blue_DINS" state = = true
throws this error:
[ERROR Line 7: 'true' is not a valid second operator]

Have you used Digital Inputs? Post some code and that may help.
 
Have you used Digital Inputs? Post some code and that may help.
Of course,

1658270598858.png
 
Rather than
"That said, hold off on trying it until we publish new Interface Definition files (.brumc) for BruControl. Going forward, we will NOT use ports 100+ for Analog Inputs. These inputs will use their native numbers from here on (eg. MEGA pin A0 which maps to BC port 100 will be port 54, etc.). This will require everyone to switch Analog Inputs to these new ports - sorry!"

Why not have both the Old Ports and the new ones active for one year. That would give everyone a change to upgrade to the firmware and some time to change their configuration within the year time frame.

You can use your existing FW and definition files - no problem. But we can't have two new versions of FW. Between the different interfaces, different connection types, it's too much to manage. Also the new FW and definition files will give you access to the DO's freed up by @staffordj 's recommendation. Something about an egg and an omlette... also I have never liked the '100' ports for Analog Inputs... so much better to use their native assignments.

If you have a concern with switching, you can send us your config file and we'll move it over for you. Switching then will be totally transparent and easy for you.
 
it was as @BrunDog said "==" and not "= =" with the space. It threw a different error with state this time :
[ERROR Line 7: No property found with name 'state']

It was not clear to me in the manual weather it should be "state" or "value". I am always confused as to which is correct and the manual sums my confusion up:

"The state is presented as the Element’s value and will either be ON or OFF ..."

"value" throws no error.
 

Latest posts

Back
Top