• 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.

[email protected], no need of RPI and Arduino.

HomeBrewTalk.com - Beer, Wine, Mead, & Cider Brewing Discussion Community.

Help Support Homebrew Talk:

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
Running BrewPi without RPI would lose the most powerful functions of it, but these will still be available:
Remote LCD display:
lcd.jpg
Run-Once-and-forget device setting:
device setup.jpg
Temperature control, include scheduled temperature:
temperature control.jpg

The only thing missed is the beautiful temperature charts, but storing the temperature log is also possible.
logsettting.jpg

This is how the GoogleSheet looks like:

https://docs.google.com/spreadsheets/d/1Zq2vR8DL5Xr_95H6LiLrpHZqwIm9rbvMX84UeI6hhNU/edit?usp=sharing

The data on "bluemoon" sheet is real data from my fermenter in which is fact an IPA, not bluemoon. It has been fermenting for two weeks, so I dare to run the test on it. BTW, I just replaced the Arduino Nano with a NodeMcu board, and it works like a charm.


To reduce resource requirement, jQuery is not used, so the pages look ugly. That is the price for a SD card.

I've just run it for a few days. Therefore, it might still be unstable. Please verify before you put it into real brew. (IMO, enable watchdog timer reset is a better and for now the only way I can think to improve the usability.)

The instruction and source code are here:
https://github.com/vitotai/BrewPiLess

******
Special thanks to Thorax for the porting of BrewPi to ESP8266, which saves a lot time for me. The BrewPi part is copied from his git.
 
Last edited:
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
not really. I eliminate the RPI while Thorax replaces Arduino with ESP8266.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
never mind. I was thinking post in that thread but decided not to hijack his thread.
I started by developing ESP8266 for replacing RPI and thought about porting Arduino code to ESP8266. Just about the time I was going to start, Thorax did it. Then, I just merged his code.
 

froot

Well-Known Member
Joined
Sep 7, 2014
Messages
114
Reaction score
13
I'm sure there are more than a few of us keeping an eye on this thread and your development, post count isn't everything. My software skills finish with Dhtml. And seems you've got the hardware wired, and I'm about to move house so no more projects for me till thats done and dusted.
 

pointcity-homebrew

Crafting openers 1 at a time
Joined
Jan 23, 2014
Messages
2,429
Reaction score
634
Location
West Point
Nice project.

I love the ESP8266 module.

I made a wifi mash temp monitor so could watch my temp and not have to keep opening the mash tun and letting heat escape.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
Can this form be used to push data arbitrarily to what ever url is in that URL text box? IE my local ruby web server?
Yes, You can specify any URL as long as it is HTTP, and it is reachable by ESP8266. That is the exact way by which I push data to GoogleSheet.

I wanted to push data to GoogleSheet directly but found out that SSL used too much resource and crashed ESP8266. Then, I changed the code to GET/POST data to a specified URL with specified field names, and setup a PHP script on my NAS as a proxy to push data to Google by HTTPS.

The maximize the flexibility, the filed names can be specified. For example, I use "bt" for BeerTemp in my proxy, and thingspeak.com requires "field1".
 

thekraken

Well-Known Member
Joined
Aug 18, 2014
Messages
1,960
Reaction score
449
Location
DFW
Yes, You can specify any URL as long as it is HTTP, and it is reachable by ESP8266. That is the exact way by which I push data to GoogleSheet.

I wanted to push data to GoogleSheet directly but found out that SSL used too much resource and crashed ESP8266. Then, I changed the code to GET/POST data to a specified URL with specified field names, and setup a PHP script on my NAS as a proxy to push data to Google by HTTPS.

The maximize the flexibility, the filed names can be specified. For example, I use "bt" for BeerTemp in my proxy, and thingspeak.com requires "field1".
I'm starting to think your project will suit me perfectly!

I was looking at your Github readme, in the 'Hardware Setup' there is no mention of the heating actuator?
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
I'm starting to think your project will suit me perfectly!

I was looking at your Github readme, in the 'Hardware Setup' there is no mention of the heating actuator?
I don't need heating for now, so I didn't test it.
The other reason is that the left PINs are D0(GOIO16) and D8(GPIO15). On my NodeMcu board, I had trouble using them.
D8(GPIO15) should be pulled down during boot to enable normal boot. Connect D8 to the rotary encoder seems to stop ESP8266 from booting. (sorry, I don't remember what's wrong with D0. )

Anyway, I modified the code to support using D0 and D8 as heater, and they seems to control the LEDs correctly. However, I would suggest not to use D8(GPIO15) if possible. I will update after testing it on my really working setup.
 

sandyeggoxj

Well-Known Member
Joined
Jan 15, 2011
Messages
3,167
Reaction score
531
Location
Sunshine and Big Holes
So I have lots of learning to do here... I bought the board and downloaded the IDE and libraries but I keep getting errors. What is the best way to connect the wemos d1 mini to my mac to initially program it?

Code:
Arduino: 1.6.10 (Mac OS X), Board: "WeMos D1 R2 & mini, 160 MHz, 921600, 4M (1M SPIFFS)"

/Users/username/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:11:21: fatal error: OneWire.h: No such file or directory
 #include <OneWire.h>
                     ^
compilation terminated.
exit status 1
Error compiling for board WeMos D1 R2 & mini.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
So I have lots of learning to do here... I bought the board and downloaded the IDE and libraries but I keep getting errors. What is the best way to connect the wemos d1 mini to my mac to initially program it?

Code:
Arduino: 1.6.10 (Mac OS X), Board: "WeMos D1 R2 & mini, 160 MHz, 921600, 4M (1M SPIFFS)"

/Users/username/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:11:21: fatal error: OneWire.h: No such file or directory
 #include <OneWire.h>
                     ^
compilation terminated.
exit status 1
Error compiling for board WeMos D1 R2 & mini.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
It seems that you don't install OneWire library.
Go to the menu of Arduino IDE
sketch>Import Library > Manage Library
Search "OneWire" and install the library.

I forget which library I downloaded, but the following library is exact the one I have.
You can manually download the library (this is the one in my library path) and put it in your library path.(usually in [user path]/Arduino/libraries/)
https://github.com/PaulStoffregen/OneWire
 

sandyeggoxj

Well-Known Member
Joined
Jan 15, 2011
Messages
3,167
Reaction score
531
Location
Sunshine and Big Holes
Code:
Arduino: 1.6.10 (Mac OS X), Board: "WeMos D1 R2 & mini, 160 MHz, Serial, 921600, 4M (3M SPIFFS)"

In file included from [userpath]/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:38:0:
[userpath]/Documents/Arduino/libraries/esp8266-SNTPClock-master/SNTPTime.h:34:8: error: redefinition of 'struct tm'
 struct tm {
        ^
In file included from [userpath]/Documents/Arduino/libraries/ESPAsyncWebServer-master/src/WebHandlerImpl.h:26:0,
                 from [userpath]/Documents/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:389,
                 from [userpath]/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:7:
[userpath]/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/xtensa-lx106-elf/include/time.h:31:8: error: previous definition of 'struct tm'
 struct tm
        ^

exit status 1
Error compiling for board WeMos D1 R2 & mini.
So I got the onewire library installed and got another error about SNTP missing. So I downloaded that library as well. This is the next error I get when I verify the sketch. It looks like there is a conflict trying to structure the time. How do I resolve that? If I delete the library "esp8266-SNTPClock" then I get an error for the SNTP includes. What SNTP library are you using?
 

Thorrak

Supporting Member
HBT Supporter
Joined
Feb 7, 2016
Messages
2,422
Reaction score
1,320
Location
New York, NY
I don't need heating for now, so I didn't test it.
The other reason is that the left PINs are D0(GOIO16) and D8(GPIO15). On my NodeMcu board, I had trouble using them.
D8(GPIO15) should be pulled down during boot to enable normal boot. Connect D8 to the rotary encoder seems to stop ESP8266 from booting. (sorry, I don't remember what's wrong with D0. )

Anyway, I modified the code to support using D0 and D8 as heater, and they seems to control the LEDs correctly. However, I would suggest not to use D8(GPIO15) if possible. I will update after testing it on my really working setup.
I had issues with D0 as well, but can't remember what they were. I believe it's "output only" - but this should be fine for controlling the heating/cooling side of the relay.

One alternative would be to use OneWire GPIO switches but that would mean more hardware.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
I had issues with D0 as well, but can't remember what they were. I believe it's "output only" - but this should be fine for controlling the heating/cooling side of the relay.

One alternative would be to use OneWire GPIO switches but that would mean more hardware.
I checked my rotary module, a KY-010, and found two of the connection are pulled up. That explains why connecting the rotary to D8(GPIO15) prevents normal booting.

The D0(GPIO16) is a special GPIO which doesn't support PULL-UP but only PULL-DOWN according to this page:
http://blog.falafel.com/programming-gpio-on-the-esp8266-with-nodemcu/

The code in RotoryEncoder.cpp sets the rotary encoder input as INPUT_PULLUP. Maybe that's the reason why it won't work.

If both of D0 and D8 work fine as output, they can be used as heating and buzzer control, which would fulfill my needs.
 

Shockerengr

Well-Known Member
Joined
Feb 22, 2007
Messages
469
Reaction score
31
Code:
Arduino: 1.6.10 (Mac OS X), Board: "WeMos D1 R2 & mini, 160 MHz, Serial, 921600, 4M (3M SPIFFS)"

In file included from [userpath]/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:38:0:
[userpath]/Documents/Arduino/libraries/esp8266-SNTPClock-master/SNTPTime.h:34:8: error: redefinition of 'struct tm'
 struct tm {
        ^
In file included from [userpath]/Documents/Arduino/libraries/ESPAsyncWebServer-master/src/WebHandlerImpl.h:26:0,
                 from [userpath]/Documents/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:389,
                 from [userpath]/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:7:
[userpath]/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/xtensa-lx106-elf/include/time.h:31:8: error: previous definition of 'struct tm'
 struct tm
        ^

exit status 1
Error compiling for board WeMos D1 R2 & mini.
So I got the onewire library installed and got another error about SNTP missing. So I downloaded that library as well. This is the next error I get when I verify the sketch. It looks like there is a conflict trying to structure the time. How do I resolve that? If I delete the library "esp8266-SNTPClock" then I get an error for the SNTP includes. What SNTP library are you using?
I've run into the same issue and have the referenced library installed. Any luck on it?
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
I've run into the same issue and have the referenced library installed. Any luck on it?
I checked the library in my library path and found that ESPAsyncWebServer library has been updated.

The version I am using doesn't include <time.h> while what you used does.

I will start to work on this issue. If you can't wait, you can find a version of ESPAsyncWebServer before June 18.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
Code:
Arduino: 1.6.10 (Mac OS X), Board: "WeMos D1 R2 & mini, 160 MHz, Serial, 921600, 4M (3M SPIFFS)"

In file included from [userpath]/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:38:0:
[userpath]/Documents/Arduino/libraries/esp8266-SNTPClock-master/SNTPTime.h:34:8: error: redefinition of 'struct tm'
 struct tm {
        ^
In file included from [userpath]/Documents/Arduino/libraries/ESPAsyncWebServer-master/src/WebHandlerImpl.h:26:0,
                 from [userpath]/Documents/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:389,
                 from [userpath]/Documents/Arduino/BrewPiLess-master/BrewPiLess/BrewPiLess.ino:7:
[userpath]/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/xtensa-lx106-elf/include/time.h:31:8: error: previous definition of 'struct tm'
 struct tm
        ^

exit status 1
Error compiling for board WeMos D1 R2 & mini.
So I got the onewire library installed and got another error about SNTP missing. So I downloaded that library as well. This is the next error I get when I verify the sketch. It looks like there is a conflict trying to structure the time. How do I resolve that? If I delete the library "esp8266-SNTPClock" then I get an error for the SNTP includes. What SNTP library are you using?
Sorry, I didn't study the error message carefully.
I've ditch the library and tried the new ESPAsyncWebServer library.

Please download the new code on github.
 

januzz

Member
Joined
Dec 8, 2015
Messages
13
Reaction score
5
Location
Somewhere in the Netherlands
Hi,

First of all great work i am really impressed!!

I sadly cannot get it to work, i have an ESP8266 nodeMCU as sold here: http://www.aliexpress.com/item/New-...265993979.html?spm=2114.13010608.0.103.BD77DW

I have flashed the firmware with their tool as stated here: https://github.com/nodemcu/nodemcu-flasher

Then i added all the libraries as instructed at your github page. In Arduino i setup the board to NodeMCU 1.0 (ESP12-E module)

I doubleclick the BrewPiLess.ino file, choose upload and after the compiling it uploads to my ESP8266 module. After that i saw a Brewpi SSID, so i connected to this and setup so it connects to my own wireless network.
So far so good: the ESP8266 connects to my wireless network, i see in my router that the ESP gets an ipaddress that i can ping. BUT i cannot ping brewpi.local and also when browsing to http://192.168.1.152 (the ipaddress of the ESP) i do not see a webpage (tried in 2 browsers, Chrome gives a blank page, IE gives a webpage not found error)

However as telnet 192.168.1.152 at port 80 works so the ESP is listening at port 80 it just doesn't show anything .

Is there anything i missed ? i wonder if i have to add these library entries into the BrewPiLess.ino file?

I'm not very familair with arduino sketch so i hope you can give some hints

Jan
 

thekraken

Well-Known Member
Joined
Aug 18, 2014
Messages
1,960
Reaction score
449
Location
DFW
Hi,

First of all great work i am really impressed!!

I sadly cannot get it to work, i have an ESP8266 nodeMCU as sold here: http://www.aliexpress.com/item/New-...265993979.html?spm=2114.13010608.0.103.BD77DW

I have flashed the firmware with their tool as stated here: https://github.com/nodemcu/nodemcu-flasher

Then i added all the libraries as instructed at your github page. In Arduino i setup the board to NodeMCU 1.0 (ESP12-E module)

I doubleclick the BrewPiLess.ino file, choose upload and after the compiling it uploads to my ESP8266 module. After that i saw a Brewpi SSID, so i connected to this and setup so it connects to my own wireless network.
So far so good: the ESP8266 connects to my wireless network, i see in my router that the ESP gets an ipaddress that i can ping. BUT i cannot ping brewpi.local and also when browsing to http://192.168.1.152 (the ipaddress of the ESP) i do not see a webpage (tried in 2 browsers, Chrome gives a blank page, IE gives a webpage not found error)

However as telnet 192.168.1.152 at port 80 works so the ESP is listening at port 80 it just doesn't show anything .

Is there anything i missed ? i wonder if i have to add these library entries into the BrewPiLess.ino file?

I'm not very familair with arduino sketch so i hope you can give some hints

Jan

I'm in the same boat, januzz.

I'm using a Adafruit Huzzah (esp-12) and windows 10. In the code I set SerialDebug to true and it shows connected to my router but the webserver is serving blanks.

Here's the debug output:
Code:
connected with PainInTheAss, channel 1
dhcp client start...
cnt 
*WM: 
*WM: AutoConnect
*WM: Connecting as wifi client...
*WM: Using last saved values, should be faster
state: 5 -> 0 (0)
rm 0
f r0, scandone
state: 0 -> 2 (b0)
state: 2 -> 3 (0)
state: 3 -> 5 (10)
add 0
aid 11

connected with PainInTheAss, channel 1
dhcp client start...
cnt 
ip:192.168.1.13,mask:255.255.255.0,gw:192.168.1.1
*WM: Connection result: 
*WM: 3
*WM: IP Address:
*WM: 192.168.1.13
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
please start sntp first !
Fri Aug 12 16:30:35 2016

Connected!HTTP server started
HTTP Update server started

pm open,type:2 0
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
you are almost there. you just have to upload data files to ESP8266.
You can google "ESP8266 SPIFFS" to find the tool and instruction.
I am outside home. will update later.
 

thekraken

Well-Known Member
Joined
Aug 18, 2014
Messages
1,960
Reaction score
449
Location
DFW
Hi,

First of all great work i am really impressed!!

I sadly cannot get it to work, i have an ESP8266 nodeMCU as sold here: http://www.aliexpress.com/item/New-...265993979.html?spm=2114.13010608.0.103.BD77DW

I have flashed the firmware with their tool as stated here: https://github.com/nodemcu/nodemcu-flasher

Then i added all the libraries as instructed at your github page. In Arduino i setup the board to NodeMCU 1.0 (ESP12-E module)

I doubleclick the BrewPiLess.ino file, choose upload and after the compiling it uploads to my ESP8266 module. After that i saw a Brewpi SSID, so i connected to this and setup so it connects to my own wireless network.
So far so good: the ESP8266 connects to my wireless network, i see in my router that the ESP gets an ipaddress that i can ping. BUT i cannot ping brewpi.local and also when browsing to http://192.168.1.152 (the ipaddress of the ESP) i do not see a webpage (tried in 2 browsers, Chrome gives a blank page, IE gives a webpage not found error)

However as telnet 192.168.1.152 at port 80 works so the ESP is listening at port 80 it just doesn't show anything .

Is there anything i missed ? i wonder if i have to add these library entries into the BrewPiLess.ino file?

I'm not very familair with arduino sketch so i hope you can give some hints

Jan
you are almost there. you just have to upload data files to ESP8266.
You can google "ESP8266 SPIFFS" to find the tool and instruction.
I am outside home. will update later.
Per pocketmon I googled "ESP8266 SPIFFS" and came to this github page: https://github.com/esp8266/Arduino/blob/master/doc/filesystem.md
Under the "Uploading to File System" section is a link to this zip file: https://github.com/esp8266/arduino-esp8266fs-plugin/releases/download/0.2.0/ESP8266FS-0.2.0.zip
I installed unzipped this into me $HOME/Arduino/Tools/ directory per instructions from my first link.
From the arduino IDE open the BrewPiLess project and go to Tools -> ESP8266 Sketch Data Upload and it will upload the web page files. This took quite a long time to upload for me. Make sure you're in 'upload mode'. Finally, I had to reset the esp board. Now I'm in business. :rockin:
 

thekraken

Well-Known Member
Joined
Aug 18, 2014
Messages
1,960
Reaction score
449
Location
DFW
@pocketmon,
My first feature request would be to have a Celsius Fahrenheit selector.

Looks like the settings is in EepromStructs.h -> line 18, and json info is in JsonKeys.h around line 40 and the function that sets it is in PiLink.cpp line 924. I don't know how this spiffs business works or I'd attempt to make the tweaks my self. (edit) the defaults are defined in TempControl.cpp line 631, I guess as a work around I'll try erasing eeprom and hard coding it to 'F' here.

(edit edit) FYI work around seems to work: I used "esptool -p com3 erase_flash" to wipe it clean and start over, then change TempControl.cpp line 634 from 'C' to 'F'. Reuploaded everything as usual.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
@pocketmon,
My first feature request would be to have a Celsius Fahrenheit selector.

Looks like the settings is in EepromStructs.h -> line 18, and json info is in JsonKeys.h around line 40 and the function that sets it is in PiLink.cpp line 924. I don't know how this spiffs business works or I'd attempt to make the tweaks my self. (edit) the defaults are defined in TempControl.cpp line 631, I guess as a work around I'll try erasing eeprom and hard coding it to 'F' here.
If your ESP8266 has the ip 192.168.1.152, browse to
http://192.168.1.152/testcmd.htm


Enter the following string, and "send". Then you have it.
Code:
j{"tempFormat":"F"}
 

thekraken

Well-Known Member
Joined
Aug 18, 2014
Messages
1,960
Reaction score
449
Location
DFW
So I have 3 ds18b20s plugged in, I can't seem to be able to assign them.

All three show up in the device list and they report their temperature. I assign a device slot and a function and click apply, my terminal reads out "putline:U{"i":"1","c":1,"f":"5","b":0,"h":2,"p":12,"a":"28FF10F76314010B"}" for example. When I go back to the first page nothing is changed.

When I go back to the setup again and refresh the probes are still unassigned.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
would you try Erasing EEPROM? I used to have this issue on my Arduino setup, so I include an ERASE button in the setup page, but I never have this issue on ESP8266.
 

thekraken

Well-Known Member
Joined
Aug 18, 2014
Messages
1,960
Reaction score
449
Location
DFW
would you try Erasing EEPROM? I used to have this issue on my Arduino setup, so I include an ERASE button in the setup page, but I never have this issue on ESP8266.
That seems to have done it, though I had some issues.

First, when I query the list of installed devices the web interface shows that each probe is installed 5 times.

Second, as I was assigning the probes something happened and the esp become unresponsive, even after reboots. I had to reupload the program to get it running.

... and some crazy **** just happened as I was typing just now. The huzzah's upload mode LED came on and I got the following messages in my debug terminal

Code:
putline:l
putline:l
putline:l
Fatal exception 9(LoadStoreAlignmentCause):
epc1=0x4020768f, epc2=0x00000000, epc3=0x00000000, excvaddr=0x2232317d, depc=0x00000000

Exception (9):
epc1=0x4020768f epc2=0x00000000 epc3=0x00000000 excvaddr=0x2232317d depc=0x00000000

ctx: cont 
sp: 3fff3350 end: 3fff35b0 offset: 01a0

>>>stack>>>
3fff34f0:  3fff7bbc 00000000 001ea197 402075ed  
3fff3500:  ffe16e70 3fff3530 3fff3544 00000014  
3fff3510:  3fff1820 000000df 3fff2368 3fff2588  
3fff3520:  3fff0ecd 00000061 2232316d 40207751  
3fff3530:  00000061 3fff0ecd 2232396d 40207790  
3fff3540:  3fff12d4 3fff0ecc 3fff16cc 40208487  
3fff3550:  3fff2588 3fffdad0 3fff3574 40209c24  
3fff3560:  3fffdad0 3fff0ecc 57aea9fd 40208d1e  
3fff3570:  c47a0000 c47a0000 feef466f feefeffe  
3fff3580:  00000000 00000000 00000001 3fff2588  
3fff3590:  3fffdad0 00000000 3fff2580 4021e71c  
3fff35a0:  feefeffe feefeffe 3fff2590 40100718  
<<<stack<<<

 ets Jan  8 2013,rst cause:2, boot mode:(1,7)


 ets Jan  8 2013,rst cause:4, boot mode:(1,7)

wdt reset
And it froze after "wdt reset". I've reset the board and it's running fine at the moment.
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
Anything that can go wrong will go wrong.

Make sure your system will restart after crash.

In my career of a software engineer, I always expect bugs. I never expect a bug-free system, but a system survives through bugs. My Arduino BrewPi setup usually crashed in 2~5 days, which might be the result of my bad hardware setup. I didn't have the ability to fix it, either hardware or software, but I managed to add a watchdog timer in BrewPi, so that the system will reset/restart when it freezes. i might have lost temperature control up to 10 minutes for several times, which seems to be nothing to me, to my beer.

I have run this ESP8266 build for three weeks. It was beer constant mode for one week, beer profile mode for cold crash, and fridge constant for 4 days. I guess it might have crashed for 2 or 3 times, because I have a monitoring script which monitors the temperature logging. However, if it will restart after crashing, I am cool with it.
 

januzz

Member
Joined
Dec 8, 2015
Messages
13
Reaction score
5
Location
Somewhere in the Netherlands
Per pocketmon I googled "ESP8266 SPIFFS" and came to this github page: https://github.com/esp8266/Arduino/blob/master/doc/filesystem.md
Under the "Uploading to File System" section is a link to this zip file: https://github.com/esp8266/arduino-esp8266fs-plugin/releases/download/0.2.0/ESP8266FS-0.2.0.zip
I installed unzipped this into me $HOME/Arduino/Tools/ directory per instructions from my first link.
From the arduino IDE open the BrewPiLess project and go to Tools -> ESP8266 Sketch Data Upload and it will upload the web page files. This took quite a long time to upload for me. Make sure you're in 'upload mode'. Finally, I had to reset the esp board. Now I'm in business. :rockin:
Thanks Guys! i can see the display now! its time to play :rockin:

pocketmon: maybe a good idea to add this to your documentation at github?

keep up the good work!

Jan
 

thekraken

Well-Known Member
Joined
Aug 18, 2014
Messages
1,960
Reaction score
449
Location
DFW
Anything that can go wrong will go wrong.

Make sure your system will restart after crash.

In my career of a software engineer, I always expect bugs. I never expect a bug-free system, but a system survives through bugs. My Arduino BrewPi setup usually crashed in 2~5 days, which might be the result of my bad hardware setup. I didn't have the ability to fix it, either hardware or software, but I managed to add a watchdog timer in BrewPi, so that the system will reset/restart when it freezes. i might have lost temperature control up to 10 minutes for several times, twhich seems to be nothing to me, to my beer.

I have run this ESP8266 build for three weeks. It was beer constant mode for one week, beer profile mode for cold crash, and fridge constant for 4 days. I guess it might have crashed for 2 or 3 times, because I have a monitoring script which monitors the temperature logging. However, if it will restart after crashing, I am cool with it.
Well the system failed to recover on it's own this time, I had to intervene.

Besides that I have noticed relatively frequent restarts, at the moment I'm attributing it to my breadboard and questionable power supply. Certainly more than would be acceptable while in use.
 

januzz

Member
Joined
Dec 8, 2015
Messages
13
Reaction score
5
Location
Somewhere in the Netherlands
Hi,

Got my brewpi on ESP also up and running now cool!!
I have the same issues as Kraken each probe installed 5 times and it also crashes frequently. Hopefully i can find some time today to hookup the relais board and see if that works.

/edit

I have 3 DS18B20 sensors all recognized on the device list and a relaisboard, but it is impossible to install them all. The apply button seems to work 1 time OK for the first device you add, but adding more devices seems to be impossible. Nothing happens and after a refresh (or reboot) you will see the first device like 5 times installed on the same port and function. Is it possible to download the config file from ESP , edit manually and upload it again?

Jan
 
OP
P

pocketmon

Well-Known Member
Joined
Oct 12, 2015
Messages
684
Reaction score
217
Sorry for being weekend, I don't have much time to respond in detail.

Browse to
http://[your ESP8266 IP]/testcmd.htm
You can issue commands to BrewPi directly and see the response.

The format can be found here:
http://wiki.brewpi.com/index.php/Device_Config_JSON_Format
The command to setup a device is like this:
Code:
U{"i":"0","c":"1","b":"0","f":"9","h":"2","p":"14","a":"28F0EBDD0600008B"}
"h" command is used to list all devices:
Code:
h{}
 
Last edited:

januzz

Member
Joined
Dec 8, 2015
Messages
13
Reaction score
5
Location
Somewhere in the Netherlands
Sorry for being weekend, I don't have much time to respond in detail.
No problem!, youre giving usefull info:) i just cant get it to work yet though i'm very close i think.

When i do
Code:
h{}
{"i":-1,"t":0,"c":1,"b":0,"f":0,"h":2,"d":0,"p":12,"a":"28FF593F7415037C","j": 0.000}
{"i":-1,"t":0,"c":1,"b":0,"f":0,"h":2,"d":0,"p":12,"a":"28FF1B447415032A","j": 0.000}
{"i":-1,"t":0,"c":1,"b":0,"f":0,"h":2,"d":0,"p":12,"a":"28FF8774741503F4","j": 0.000}
{"i":-1,"t":0,"c":1,"b":0,"f":0,"h":1,"d":0,"p":15,"x":1}
{"i":-1,"t":0,"c":1,"b":0,"f":0,"h":1,"d":0,"p":0,"x":1}
{"i":-1,"t":0,"c":1,"b":0,"f":0,"h":1,"d":0,"p":16,"x":1}
and then add a sensor:
Code:
U:{"i":"1","c":"1","b":"0","f":"9","h":"2","p":"12","a":"28FF593F7415037C"}
After this command alot of data is being generated in the console, but nothing happens afterwards the h{} command show exactly the same again. I tried also without the quotations, with lower case u: etc but no luck.

greetings,

Jan
 
2
Top