BrewPi@ESP8266, no need of RPI and Arduino.

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.
Perhaps it's been mentioned in this thread, but how do you open the DMS log files after downloading them from brewpiless? Turns out searching DMS on a homebrew forum leads to a lot of erroneous results
 
Perhaps it's been mentioned in this thread, but how do you open the DMS log files after downloading them from brewpiless? Turns out searching DMS on a homebrew forum leads to a lot of erroneous results

BrewPiLess doesn’t handle DMS, it doesn’t generate DMS log.
There is a log viewer in “/extra” folder on github that can view logs of BrewPiLess but not DMS.
 
BrewPiLess doesn’t handle DMS, it doesn’t generate DMS log.
There is a log viewer in “/extra” folder on github that can view logs of BrewPiLess but not DMS.
When I download the temperature logs they have a .dms file extension. I'm using Safari.

Regardless of file extension, the log viewer works and can export as CSV so that's perfect, thanks!
 
I am in the process of setting up a BPL, but I'm still waiting for some parts. In the meantime, I have been fooling around, trying to understand things, and after finally managing to get it set up, I managed to break it again.
I had a working BPL running, and then my OLED came in the mail. When I hooked it up, nothing showed, so I checked PlatformIo for something about OLED. Found the OLED environment and uploaded it. OLED shows my settings, but I'm not able to connect. when I connect to the brewpiless AP, I don't get an IP, so I'm not able to configure anything.
On boot, the display is showing IP: 0.0.0.0, but this might be logical since it haven't been connected to my WiFi, yet.
Any tips to what I can try is appreciated, I really don't know what to try.
I redownloaded from GIT, I have uploaded both the classic, newui and newui-oled environments, but all works the same way.
This worked a couple of weeks ago, is it something the developers have broken or is my controller broken? I'm using a NodeMCU LoLin v3, if the mail man can hurry up, I have some V2s on it's way...
 
Nevermind, right after writing here, I got it working... Sorry.
Is it possible to delete a post? I tried, but couldn't find a way to do it...
 
BPL is a controller

It made me chuckle.

What is the preferred/recommended controller for BPL?

Usually, I would say NodeMcu or D1 mini. Now that the ESP32 port seems to work well. Maybe ESP32 is a future-proof option, although we don't get all the advantages but only rotary encoder support.
 
Well BPL comes from BrewPi right? And BrewPi is a controller (and software as well), so BrewPiLess is basically the same but without a Pi (ESP8266 instead). I understand that BPL is a hardware+software, like the whole package. ESP is just a microprocessor with network capability, it is not a controller as it can't control anything itself. Not that any of that matter or nor I am trying to be rude or something. Anyway, whatever :D

I use the cheapest Wemos clone fron aliexpress and it works ok.
 
Well BPL comes from BrewPi right? And BrewPi is a controller (and software as well), so BrewPiLess is basically the same but without a Pi (ESP8266 instead). I understand that BPL is a hardware+software, like the whole package. ESP is just a microprocessor with network capability, it is not a controller as it can't control anything itself. Not that any of that matter or nor I am trying to be rude or something. Anyway, whatever :D

I use the cheapest Wemos clone fron aliexpress and it works ok.

No problem ;-) I'm VERY new to this world, I just started looking into what I call micro controllers, but this is probably not the correct term. I am a C# developer with automation education from 25 years ago, so we didn't use these things. I try to gather as much knowledge I can, and in the process I might, or rather will, ask stupid questions. Feel free to laugh, but when you are done laughing, you should answer my stupid question :)
My plan is to build a system with 2 BrewPiLess and a BrewManiac.
You should wish me luck (and provide as many good advises possible) :)
 
I have never laughed and I am not en expert, just wanted to correct you and It looks other people corrected me so I wanted to write my explanation of my thinking :) That is how we learn, we shouldn't laugh when one ask a question.
 
Where sensor calibration is stored? How I can check these? Are they overwrited if flash new firmware?
 
Where sensor calibration is stored? How I can check these? Are they overwrited if flash new firmware?

It is stored in EEPROM, which survives flashing new firmware though not really EEPROM.
You can view it by JSON commands by which you modify it.
 
What command just show values without changing it?

"h". The response should include a list of devices, like
{"i":0,"t":1,"c":1,.....,"a":"28BE07Dxxxxxxxx","j":0.00} ...

"i" is device index, and "j" is the calibration value.
 
Is anybody using D8 for anything useful? And why is there a device with Controller pin set to NA?
upload_2020-1-4_17-43-3.png
 
I may have misunderstood, but are the LCD2004 going to break fast if left on 24/7 for months? What should I do to prevent that if this is the case? There is a LCD Off setting that I could set, but then the question is: How do I wake it up when off?
 
I may have misunderstood, but are the LCD2004 going to break fast if left on 24/7 for months? What should I do to prevent that if this is the case? There is a LCD Off setting that I could set, but then the question is: How do I wake it up when off?

I don't think hd44780 type LCD will break easily, but OLED LCD seems like easier to break.

If you install buttons on D3 and/or D4, you can wake up the LCD by pressing one of it. Otherwise, you might need to set "LCD auto off" time to 0(zero) to turn on it, and later set it to some other values you like.
 
I don't think hd44780 type LCD will break easily, but OLED LCD seems like easier to break.

If you install buttons on D3 and/or D4, you can wake up the LCD by pressing one of it. Otherwise, you might need to set "LCD auto off" time to 0(zero) to turn on it, and later set it to some other values you like.
OK, thank you.
I got it backwards then :)
I'm planning on using buttons, but I also have ordered some 2004 LCDs I'm planning to use.
Can I use a LCD12864 like this one? https://www.aliexpress.com/item/4000006815309.html?spm=a2g0s.9042311.0.0.30ac4c4ddnWQqc
I got one in the mail today, but since I use the OLED firmware at the moment I can't test it.
If I can, will I get the extra line like on OLEDs (IP at boot, then date/time)?
 
Is it possible to use a common temperature sensor on multiple BPLs? I'm planning on setting up 2 BPLs, but the fermenters wil be in the same room, so the room temperature will be the same for both. If both BPLs can share the room sensor, it would be nice, but I guess there might be some problems with delay or something...
 
I doubt BPL cares about the Room Temperature sensor at all so you could simply run one instance without it.
BrewPi definitely never cares...

Cheers!
OK, if BPL doesn't use the value for anything, I guess I can drop them both, but I'm a bit like "if you CAN, I MUST" :) I hate empty values, meaning that as long as the left side has a line saying "Room temp:", there SHOULD be a value, not just "-" :). That is also one of the reasons I'm about to build a few iSpindles :)
Having said that, I guess if nobody has an answer, I just have to test it myself and see what happens... I don't think I will break anything permanently by doing so, in worst case the sensor goes south, but I got a bunch of them cheap from China, so... I just need to build a second BPL...
 
fwiw, with no Room temperature probe assigned "BrewPi Classic" won't toggle either the physical LCD nor the virtual one in the gui to show the Room temperature line at all.

I don't know if BPL behaves the same but give it a try: just go into the Device configuration panel and change your existing Room temperature sensor "Function" setting from "Room temp" to "none" and hit Apply. Watch either the gui or your LCD if you have one and see what happens...

Cheers!
 
Could somebody explain to me why I'm experiencing a lot of reboots? Sometimes it is stable for hours, sometimes it's only minutes. At one time it would only stay on for a few seconds. It rebooted once the display went form "Initializing WiFi" to showing the mode/temp, and I actually had to pull out the wire to D6(temp sensors) to get it to stay on. After that, I could connect D6 again, and then it started behaving "normal" (except that it still reboots every now and then). I still have it on my breadboard, and I have attached 3 temperature sensors, a small OLED (0.96"), a 2 channel relay module and two buttons. Is this a bug in the code, or have I done something wrong when wiring?
I'm also getting a lot of "Controller not updating data" messages...
I'm using env:newui-oled, if that matters. When I get my LCDs, I plan on using the env:newui. Should I use the env:classic instead?
My power supply is 5V/2.5A, I'm not using voltage step-down on the outputs, but I guess this should be OK, or could this be the reason for this behavior?
I'm not sure I will risk using this for "production" if I can't be sure it will take care of my precious beer :) I have a STC-1000 that I know is working, but that is not as "intelligent" as this...
 
Last edited:
fwiw, with no Room temperature probe assigned "BrewPi Classic" won't toggle either the physical LCD nor the virtual one in the gui to show the Room temperature line at all.

I don't know if BPL behaves the same but give it a try: just go into the Device configuration panel and change your existing Room temperature sensor "Function" setting from "Room temp" to "none" and hit Apply. Watch either the gui or your LCD if you have one and see what happens...

Cheers!
The display will alter between fridge and room if there is a room sensor, but the web page will show room temp all the time.
I don't use the classic BPL, I use the newui version.
I'm actually considering trying the classic ui if the rebooting problem, described in my previous post, isn't going away.
 
Ne
Could somebody explain to me why I'm experiencing a lot of reboots? Sometimes it is stable for hours, sometimes it's only minutes. At one time it would only stay on for a few seconds. It rebooted once the display went form "Initializing WiFi" to showing the mode/temp, and I actually had to pull out the wire to D6(temp sensors) to get it to stay on. After that, I could connect D6 again, and then it started behaving "normal" (except that it still reboots every now and then). I still have it on my breadboard, and I have attached 3 temperature sensors, a small OLED (0.96"), a 2 channel relay module and two buttons. Is this a bug in the code, or have I done something wrong when wiring?
I'm also getting a lot of "Controller not updating data" messages...
I'm using env:newui-oled, if that matters. When I get my LCDs, I plan on using the env:newui. Should I use the env:classic instead?
My power supply is 5V/2.5A, I'm not using voltage step-down on the outputs, but I guess this should be OK, or could this be the reason for this behavior?
I'm not sure I will risk using this for "production" if I can't be sure it will take care of my precious beer :) I have a STC-1000 that I know is working, but that is not as "intelligent" as this...
Nevermind this question, I tried another NodeMCU, but this time I used the classic (added OLED), and it seems to work. Actually I'm also going to try the newui without OLED and see if that works... sometime in the near future...
 
I guess I don't understand why BPL (there's more than one version?) doesn't emulate BrewPi behavior wrt not having a Room temperature sensor...
Yes, you can choose the classic or the newui.
The classic UI (original from pocketmon) behaves like the LCD/OLED, it alternates between fridge and room, if there is a room sensor. It is the newui that shows room on a separate line, like this, it doesn't have the "display", like the classic:
upload_2020-1-10_1-6-20.png

The newUI is much more "sexy", but I also guess it is a lot "heavier" to handle. I'm going to try a few different things and see which UI I'm ending up with AND if I can share a temperature sensor between two (or more?) BPLs.
 
Last edited:
Is it a good idea to set the network mode to Station only after the BPL has been configured if I dont plan on using the iSpindel? I'm thinking about the resource usage. I still have some reboots, and I think I have read somewhere that it might be the lack of resources that might cause this. I really like the BPL, but I worry about the reboots, an may ditch my plans and use some other fermenting control device...
 
OK, I'm giving up.
Now I have 3 NodeMCUs that boots (watchdog?) once I configure the wifi. This I not worth the time if it can't be fixed. I see this is one of the known issues, but if nobody wants/can/care about finding a solution, I'm moving on.
Does anybody have a suggestion to a different diy project that is working and is stable? I MIGHT try the Brewbox, but this isn't real DIY IMHO :)
Thanks for all your help along the way.
 
I have BPL running in wemos d1 mini. 3 ds18b20 sensors, buzzer, oled and 2 buttons +ispindel. Works fine, few times web ui is crashed after week or so but MCU still work and keep things running.
Maybe you have faulty component or bad connection? Run it without web ui? Watching fridge/beer temps via web browser is quite boring :)
 
I have BPL running in wemos d1 mini. 3 ds18b20 sensors, buzzer, oled and 2 buttons +ispindel. Works fine, few times web ui is crashed after week or so but MCU still work and keep things running.
Maybe you have faulty component or bad connection? Run it without web ui? Watching fridge/beer temps via web browser is quite boring :)
Boring!? :) Well, the temperatures is not particularly interesting, but if you show them in a graph, I find it interesting. The interest may pass after a while, but for now this is one of the main reasons I'm looking at replacing my STC-1000 for something more "nerdy"...

OK, I might try it with a Wemos D1 mini, I have a few of them, so I can risk wasting one of them :).
What puzzles me is that they all worked fine on my workbench, for weeks. I connected 3 temp sensors, an OLED and a relay module and everything was just very promising.
I took my breadboard and components to my brewery in the garage, connected it to a heating cable wrapped around a tank (of water for test) and put it into a fridge that have been modified.
I then set the beer const to 20 degrees and started a log. The temp went up to 20 degrees and it kept it like that perfectly within 0.1-0.2 degrees.
For about 1.5 days it worked fine. A couple of resumes happened, but I could have lived with that. Then, suddenly it started restarting often.
Then, finally it never really started, You would see "Initializing WiFi" in the display, then, for half a second or so it would show the temperatures and then restart and showing "Initializing WiFi". This just repeated over and over.
I tried to reflash, no difference. Erase flash and upload firmware made it start, but the second i configured WiFi, it would start the bootlooping.
I tried a brand new NodeMcu, never used before, and it behaves the same.
What I CAN try is to download the source code again, I have tried to study it and MIGHT have changed something, and there might have been some changes since I downloaded it (I don't think so, but perhaps it's worth the time?).

I have been wondering if my wiring has been a bit wrong and that I have damaged my NodeMCU by doing so.
I power everything with 5V on the Vin. The display and relays are also connected to 5V, the displays works best on that, and the relays NEED 5V to activate.
I just noticed that I also feed the temp sensors with 5V and that may not be right? I will change that now.
I also feed the relay inputs with 5V, which will send 5V to the NodeMCU IOs which is 3V3, and this is my biggest reason to suspect I may have broken the NodeMCU. (But then again, why does a brand new chip behave the same way? Did I break it right from the beginnig?)
I have tried to ask if this is OK, but I never got an answer, so I really don't know.
I will also use 3v3 on the relay inputs, that will require 5 wires to the module, that is no problem, I just need to redesign my PCB.
(I really wish pocketmon would be a bit more active in here, but I guess he also have a life :) )

Are you using the classic UI or the new UI? Are you using an OLED or a LCD?
It would have been awesome if you posted your scematics, I really like this project, but right now I'm really considering finding something else.
Now, I'm going to try again, and before I configure the wifi, I will erase the eeprom, if I'm not wrong the "Erase Flash" method in PlatformIo doesn't do this.

Thank you for your time, and sorry for the long post...
 
Last edited:
Relay boards have naked opto-coupled inputs and will not do anything more than provide a small input load on the NodeMCU IO.

Some boards support 3.3V signalling reliably while providing a 5V input to the relay coils, you have to run separate power leads to the board for that configuration (which is probably what you want to do)...

Cheers!
 
Back
Top