celliesprojects / aquacontrol32 Goto Github PK
View Code? Open in Web Editor NEW5 channel aquarium LED controller with web interface for ESP32 boards. Supports DS18B20, SSD1306, ILI9341, XPT2046 and SmartConfig. Arduino IDE.
License: MIT License
5 channel aquarium LED controller with web interface for ESP32 boards. Supports DS18B20, SSD1306, ILI9341, XPT2046 and SmartConfig. Arduino IDE.
License: MIT License
Involves changes to the webserver code and web interface.
channels
and setup
.webservertask.ino
.When I power the ESP32 with the usb cable and a wall socket, the oled screen boots up as it should and the text appears smoothly.
When I remove the usb cable and put 5v directly on the VCC input, the ESP boots up normally, and I can get to the webpage, but the OLED screen only shows random pixels.
I think something is wrong with the initialization of the screen, but I cannot figure out what it is.
I hope you can update the code soon if you have time, this project was truly amazing. I could help you to improve the design.
Which is 3.4.1 atm.
aquacontrol version: [v1.6.6]
Arduino IDE version: [1.8.12]
ESP32 Arduino core version: [ESP32 Arduino 1.0.4 (IDF 3.2) Release]
The issue is:
After flashing the board, it connects to my router (espressif) through a local IP (192.168.2.25) but even if I wait about 20 minutes or more for the internal flash drive to be formatted, I get a blank page.
I already flashed it several times after a full flash erase, but I'm still having the same issue:
esptool.py --port /dev/cu.SLAB_USBtoUART erase_flash
I'm using the default settings to flash it and I haven't changed anything but the wifi network and password.
Debug log:
How can I get the debug log if I don't have access to the gui?
Additional information:
Board: ESPWROOM32 - ESP32 DEVKITV1
Partition Scheme: Default with FFAT enabled
Btw I'm so excited because this software looks amazing and I'm so glad that you're sharing your work. I would really appreciate your help because I'm not sure if the board has to be flashed differently.
Thanks again.
Sometimes the Dallas sensors will return an invalid value.
Check the value with a CRC.
See https://github.com/PaulStoffregen/OneWire/blob/master/examples/DS18x20_Temperature/DS18x20_Temperature.pde#L38-L42
or
https://github.com/PaulStoffregen/OneWire/blob/master/examples/DS18x20_Temperature/DS18x20_Temperature.pde#L82-L84
Greetings and hats down for the impressive job! I recently ordered three esp32 boards and started looking for possible options to upgrade my ageing aquarium controller with esp32 based one. Soon I realized that with my very limited programming skills I will never be able to do it myself. And today I found this brilliant work. Sorry, but I'm really excited . Donated immediately a few beers and have some questions, if you can spare some time:
Are you planning to add relays support in the future? I would like to control my food feeder with an option to add feed times and duration from the web interface, my self made feeder is powered by 12 volt DC motor. The real time provision is already there, so it should be an easy task. At the same time I want to be able to stop automatically all pumps in the aquarium for 30 seconds before the feeding time and start them again 2 minutes after the feeding is finished (maybe this is also a good idea to be controlled from the web interface, not hardcoded.
As lullaby37 asked, it would be great if we can use the temperature readings to control another relay for heaters, or two - one for heaters above web interface set temperature and one for fans for cooling with provision for some hysteresis to avoid constant on/of cycles.
If you can add this functionality this would be enough for probably 90% of all freshwater aquarium hobbyists and I would definitely buy you more beer😂
I have many more ideas, but I know how hard work is all this, so ill leave them tor later, if you are willing to improve more. By the way your project is not easy to find and I'm sure if it can be somehow advertised more it will attract a lot of people. I'm starting a blog about a fully automated aquarium that can work with no attention for months, and if I build your controller I will definitely give it a separate (or more than one ) article. You can check it here: www.tufaquarium.com. I like it very much and I see a very big potential in aquacontrol32.
Cheers, Valentin
I'm interested in doing the same project but adding PH & TDS sensor for short periods and integrating it with Home Assistant in one way or another. With Tasmota/ESPHome/EspEasy I didn't have good progress.
Ex:
https://www.aliexpress.com/item/32803578131.html?spm=a2g0o.detail.1000014.26.5c6d3ca0Wxwubd&gps-id=pcDetailBottomMoreOtherSeller&scm=1007.13338.133222.0&scm_id=1007.13338.133222.0&scm-url=1007.13338.133222.0&pvid=759e65e9-64a6-4d37-8014-c67fddd57149
This should be fixed on:
Web interface is a mess.
To name just a few issues:
Partially done with commit 7e88dc0
https://github.com/CelliesProjects/aquacontrol32/blob/master/webservertask.ino#L843-L856
Hey,
nice project! I have built the aquacontrol2 on the ESP8266 and I am now aiming for the aquacontrol32, I am just waiting for my ESP32 to arrive.
Anyways, your project is awesome and I wish I could add stuff but my programming skills are just too basic and this is much too complex and advance for me, so this not really an issue but rather a request or a wish for future versions. I hope this is okay.
As you are monitoring temperature already, why not add the function is heat or cool if temperature is not as needed... you could just trigger a relay that starts a fan or a the aquarium heater.
Anysways, keep up the good work! Awesome project. :) I hope wishing for functions here is no problem. If it is, I can just delete this. ;)
aquacontrol version: [replace this with your aquacontrol version]
1.6.8
Arduino IDE version: [replace this with your Arduino IDE version]
2.1.1
ESP32 Arduino core version: [replace this with your ESP32 Arduino core version]
1.8.6
The issue is:
I'm trying to flash a ESP board but I'm getting lots of errors, is the code working with the latest arduino IDE? Thanks for your help
Would it be possible or feasible to implement adding a second controller that could be working as a slave? So if you change the leds to 85% on the master controller the slave gets updated automatically.
Maybe a new function called updateLEDs() that will take care of updating the LEDs on the slave. This function could receive the array LED intensity values (a 5 element array for all 5 LED channels) and update the corresponding LED values on the slave.
Then you could add a new websocket for slave controller communication. This websocket supposedly, will connect to the master controller's websocket to receive LED intensity change instructions.
In the webSocketEvent() function, you could identify if the websocket request is coming from the master or slave controller. If it's coming from the master, it should update the LEDs on the master and send the update instructions via the slave controller's websocket. If it's coming from the slave, it will just update the LEDs on the slave.
Finally, adding the logic to configure communication between the master and slave controllers over WiFi. On the master controller it will have to create a WiFi network and connect to it on the slave controller. Would that be a good idea? It would be very helpful for adding several wireless controllers.
See here.
bool connect() {
Wire.begin(this->_sda, this->_scl);
// Let's use ~700khz if ESP8266 is in 160Mhz mode
// this will be limited to ~400khz if the ESP8266 in 80Mhz mode.
Wire.setClock(700000);
return true;
}
Clock is at 700Khz, might be possible to up that on ESP32.
Hey,
sorry to bother you again with another request. I got everything set up and working but I am still struggling with the ILI9341. I tried two different displays and several ways of wiring, yet iut does not work.
I have bought the following displays:
https://de.aliexpress.com/item/32960934541.html
https://de.aliexpress.com/item/33012793224.html
They both work using the following example:
https://educ8s.tv/arduino-2-8-ili9341-tutorial/
Yet I cannot get them to work with your project. I think it might be duw to the wiring.
I checked wiring several time but I cannot find a mistake. I connected pins as shown in "tft_board_pins". As for the Pullups, I used a 10k resistors to connect the board pins to +3,3V. AS for TFT LED I went directly from PIN 2 using a 100Ohm resistor.
I am stuck and I cannot find my mistake, so maybe schematics would be useful. If you want, I can draw my shematics and you point out the mistakes?
Sorry to bother you again and thanks for your help.
Hello,
i tried to make a Language change for the Html files and convert it to a same lookin file as your e.g. channels_htm_gz.h
But when i will compile it Arduino gives me failure on compiling. I think because i didnt gzipped it. But how to gzip it that it will work?
Or in what order i have to zip the file?
Hi, even reading all this (#43) I still have doubts how it works regarding the ON or OFF.
I can't see anywhere on the EDITOR to choose if is normal light or moonlight.
I'm using 2 channels as this image:
so for full moon I should have 30% intensity on the blue light channel, but even showing now this:
The blue lights are off.
How really this works and I can setup specific timings for moonlight?
Thanks.
When unauthorized users try to scan for sensors, the status text is updated before the request is authenticated. This leaves an ugly Scanning...
text in the status line after the call is rejected.
I've been using aquacontrol32 v1.6.8 for two months now.
Everything works according to my expectations, but it would be nice to have the possibility to use one or two dosing pumps that could also be operated by aquacontrol32. With adjustable start times and dosing durations.
Hello.The controller is working perfectly but the ILI9341 screen is only white and I need some advice.Thanks
aquacontrol version: 1.6.8
Arduino IDE version: 2.2.1
ESP32 Arduino core version: ESP32 DEV module
The issue is:
[replace this with a clear and concise desciption of the issue]
Debug log:
C:\aquacontrol32-1.6.8\aquacontrol32\webservertask.ino: In function 'bool setupMDNS(const char*)':
C:\aquacontrol32-1.6.8\aquacontrol32\webservertask.ino:673:49: error: cannot convert 'ip4_addr*' to 'esp_ip4_addr_t*' {aka 'esp_ip4_addr*'}
esp_err_t res = mdns_query_a( hostname, 2000, &addr );
^~~~~
In file included from C:\Users\tberenyi\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.11\libraries\ESPmDNS\src/ESPmDNS.h:46,
from C:\aquacontrol32-1.6.8\aquacontrol32\aquacontrol32.ino:7:
C:\Users\tberenyi\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.11/tools/sdk/esp32/include/mdns/include/mdns.h:649:83: note: initializing argument 3 of 'esp_err_t mdns_query_a(const char*, uint32_t, esp_ip4_addr_t*)'
esp_err_t mdns_query_a(const char * host_name, uint32_t timeout, esp_ip4_addr_t * addr);
~~~~~~~~~~~~~~~~~^~~~
exit status 1
Compilation error: cannot convert 'ip4_addr*' to 'esp_ip4_addr_t*' {aka 'esp_ip4_addr*'}
Additional information:
I tried with another Arduino IDE version, but the problem is the same
aquacontrol32 1.6.8 [replace this with your aquacontrol version]
Arduino IDE version: 2.2.1 [replace this with your Arduino IDE version]
ESP32 Arduino core version: 1.0.4 [replace this with your ESP32 Arduino core version]
I upload to ESP32 the aquacontrol32 1.6.8, good working , but the temp sensor don't good.
The DS18B20 connect the pin 5. In the web setup I click the sensor "scan" , then show it " No sensor found ".
On the OLED display show the RAM size, but don't showing the temp .
What is the problem ?
I check the temp sensor with other hardwer, that's ok.
Additional information:
[replace this with additional information]
I have tested 2 different ILI9341 screens, both with XPT2046 touch controller and wired correctly (I assume). Screen works fine with the has_no_mosi option, but I cant get the touch function working. Is there a touch example I could try? I tried the examples in the librarie without succes.
Good day. Your project is nice, but the led strip only lights up to 50% after setting it to 100%. Which is a great shame that they are not working at full capacity. Otherwise dimming etc is great. Please help. Thank you
See issue #39
I keep running into this error and searching the web for a solution but to know avail.
I am using Arduino IDE 1.8.7 (Windows Store 1.18.15) and the latest version of Aquacontrol32.
Below is the error message log.
Arduino: 1.8.7 (Windows Store 1.8.15.0) (Windows 10), Board: "LOLIN D32, Default, 80MHz, 921600, None"
aquacontrol32:114:6: error: use of enum 'lightStatus_t' without previous declaration
enum lightStatus_t
^
aquacontrol32:119:39: error: 'lightStatus_t' does not name a type
const char lightStatusToString( const lightStatus_t status )
^
aquacontrol32:119:60: error: two or more data types in declaration of 'lightStatusToString'
const char lightStatusToString( const lightStatus_t status )
^
aquacontrol32:115:1: error: expected unqualified-id before '{' token
{
^
aquacontrol32:119:39: error: 'lightStatus_t' does not name a type
const char lightStatusToString( const lightStatus_t status )
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino: In function 'const char lightStatusToString(int)':
aquacontrol32:123:10: error: 'LIGHTS_OFF' was not declared in this scope
case LIGHTS_OFF: return PSTR(" LIGHTS OFF");
^
In file included from C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/WString.h:29:0,
from C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/Arduino.h:150,
from sketch\aquacontrol32.ino.cpp:1:
C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/pgmspace.h:36:25: error: invalid conversion from 'const char*' to 'char' [-fpermissive]
#define PSTR(s) (s)
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino:123:31: note: in expansion of macro 'PSTR'
case LIGHTS_OFF: return PSTR(" LIGHTS OFF");
^
aquacontrol32:124:10: error: 'LIGHTS_ON' was not declared in this scope
case LIGHTS_ON: return PSTR(" LIGHTS ON ");
^
In file included from C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/WString.h:29:0,
from C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/Arduino.h:150,
from sketch\aquacontrol32.ino.cpp:1:
C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/pgmspace.h:36:25: error: invalid conversion from 'const char*' to 'char' [-fpermissive]
#define PSTR(s) (s)
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino:124:31: note: in expansion of macro 'PSTR'
case LIGHTS_ON: return PSTR(" LIGHTS ON ");
^
aquacontrol32:125:10: error: 'LIGHTS_AUTO' was not declared in this scope
case LIGHTS_AUTO: return PSTR("LIGHTS AUTO");
^
In file included from C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/WString.h:29:0,
from C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/Arduino.h:150,
from sketch\aquacontrol32.ino.cpp:1:
C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/pgmspace.h:36:25: error: invalid conversion from 'const char*' to 'char' [-fpermissive]
#define PSTR(s) (s)
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino:125:31: note: in expansion of macro 'PSTR'
case LIGHTS_AUTO: return PSTR("LIGHTS AUTO");
^
C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\cores\esp32/pgmspace.h:36:25: error: invalid conversion from 'const char*' to 'char' [-fpermissive]
#define PSTR(s) (s)
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino:126:31: note: in expansion of macro 'PSTR'
default: return PSTR(" UNDEFINED ");
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino: At global scope:
aquacontrol32:177:1: error: 'lightStatus_t' does not name a type
lightStatus_t lightStatus;
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino: In function 'void setup()':
aquacontrol32:234:33: error: no matching function for call to 'Adafruit_ILI9341::begin(int, SPIClass&)'
tft.begin( TFT_SPI_CLOCK, SPI );
^
In file included from C:\Users\Tom\Documents\Arduino\aquacontrol32\aquacontrol32.ino:7:0:
C:\Users\Tom\Documents\Arduino\libraries\Adafruit_ILI9341/Adafruit_ILI9341.h:131:17: note: candidate: virtual void Adafruit_ILI9341::begin(uint32_t)
void begin(uint32_t freq=0);
^
C:\Users\Tom\Documents\Arduino\libraries\Adafruit_ILI9341/Adafruit_ILI9341.h:131:17: note: candidate expects 1 argument, 2 provided
C:\Users\Tom\Documents\Arduino\aquacontrol32\dimmertask.ino: In function 'void dimmerTask(void*)':
dimmertask:42:3: error: 'lightStatus' was not declared in this scope
lightStatus = LIGHTS_AUTO;
^
dimmertask:42:17: error: 'LIGHTS_AUTO' was not declared in this scope
lightStatus = LIGHTS_AUTO;
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\dimmertask.ino: In function 'void lightsOn()':
dimmertask:137:3: error: 'lightStatus' was not declared in this scope
lightStatus = LIGHTS_ON;
^
dimmertask:137:17: error: 'LIGHTS_ON' was not declared in this scope
lightStatus = LIGHTS_ON;
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\dimmertask.ino: In function 'void lightsOff()':
dimmertask:148:3: error: 'lightStatus' was not declared in this scope
lightStatus = LIGHTS_OFF;
^
dimmertask:148:17: error: 'LIGHTS_OFF' was not declared in this scope
lightStatus = LIGHTS_OFF;
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\dimmertask.ino: In function 'void lightsAuto()':
dimmertask:153:3: error: 'lightStatus' was not declared in this scope
lightStatus = LIGHTS_AUTO;
^
dimmertask:153:17: error: 'LIGHTS_AUTO' was not declared in this scope
lightStatus = LIGHTS_AUTO;
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\tfttask.ino: In function 'void showMenu()':
tfttask:155:10: error: 'lightStatus_t' does not name a type
static lightStatus_t displayedLightStatus;
^
tfttask:168:5: error: 'displayedLightStatus' was not declared in this scope
displayedLightStatus = lightStatus;
^
tfttask:168:28: error: 'lightStatus' was not declared in this scope
displayedLightStatus = lightStatus;
^
tfttask:181:8: error: 'displayedLightStatus' was not declared in this scope
if ( displayedLightStatus != lightStatus )
^
tfttask:181:32: error: 'lightStatus' was not declared in this scope
if ( displayedLightStatus != lightStatus )
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\tfttask.ino: In function 'void showStatus()':
tfttask:233:10: error: 'lightStatus_t' does not name a type
static lightStatus_t displayedLightStatus;
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\tfttask.ino: In function 'void drawMenuButtons()':
tfttask:431:24: error: 'lightStatus' was not declared in this scope
tempButton.color = ( lightStatus == LIGHTS_ON ) ? ILI9341_RED : ILI9341_BLUE;
^
tfttask:431:39: error: 'LIGHTS_ON' was not declared in this scope
tempButton.color = ( lightStatus == LIGHTS_ON ) ? ILI9341_RED : ILI9341_BLUE;
^
tfttask:435:39: error: 'LIGHTS_OFF' was not declared in this scope
tempButton.color = ( lightStatus == LIGHTS_OFF ) ? ILI9341_RED : ILI9341_BLUE;
^
tfttask:439:39: error: 'LIGHTS_AUTO' was not declared in this scope
tempButton.color = ( lightStatus == LIGHTS_AUTO ) ? ILI9341_RED : ILI9341_BLUE;
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\webservertask.ino: In lambda function:
webservertask:293:67: error: 'lightStatus' was not declared in this scope
response->printf( "%s\n%s\n", timeStr, lightStatusToString( lightStatus ) );
^
C:\Users\Tom\Documents\Arduino\aquacontrol32\webservertask.ino: In lambda function:
webservertask:462:68: error: 'lightStatus' was not declared in this scope
return request->send( 200, HTML_HEADER, lightStatusToString( lightStatus ) );
^
webservertask:462:82: error: return-statement with a value, in function returning 'void' [-fpermissive]
return request->send( 200, HTML_HEADER, lightStatusToString( lightStatus ) );
^
webservertask:468:68: error: 'lightStatus' was not declared in this scope
return request->send( 200, HTML_HEADER, lightStatusToString( lightStatus ) );
^
webservertask:468:82: error: return-statement with a value, in function returning 'void' [-fpermissive]
return request->send( 200, HTML_HEADER, lightStatusToString( lightStatus ) );
^
webservertask:474:68: error: 'lightStatus' was not declared in this scope
return request->send( 200, HTML_HEADER, lightStatusToString( lightStatus ) );
^
webservertask:474:82: error: return-statement with a value, in function returning 'void' [-fpermissive]
return request->send( 200, HTML_HEADER, lightStatusToString( lightStatus ) );
^
Multiple libraries were found for "SSD1306.h"
Used: C:\Users\Tom\Documents\Arduino\libraries\ESP8266_and_ESP32_Oled_Driver_for_SSD1306_display
Not used: C:\Users\Tom\Documents\Arduino\libraries\esp8266-oled-ssd1306-3.2.5
Not used: C:\Users\Tom\Documents\Arduino\libraries\arduino_880236
Multiple libraries were found for "WiFi.h"
Used: C:\Users\Tom\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.0\libraries\WiFi
Not used: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.15.0_x86__mdqgnx93n4wtt\libraries\WiFi
exit status 1
use of enum 'lightStatus_t' without previous declaration
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
Please advise.
Hello
im interest in this project and when i tried it this error occurs
c:/users/kamal/appdata/local/arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/1.22.0-80-g6c4433a-5.2.0/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\kamal\AppData\Local\Temp\arduino_build_676954/aquacontrol32.ino.elf section .dram0.bss' will not fit in region
dram0_0_seg'
c:/users/kamal/appdata/local/arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/1.22.0-80-g6c4433a-5.2.0/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: DRAM segment data does not fit.
c:/users/kamal/appdata/local/arduino15/packages/esp32/tools/xtensa-esp32-elf-gcc/1.22.0-80-g6c4433a-5.2.0/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: region `dram0_0_seg' overflowed by 29192 bytes
can you help me with this issue?
regard
kamal
Hello, thank you very much for your project, I´m testing it, and for now it is great!
I would like to know the maximum number of channels, and if is possible to add channels, for simple ON/OFF (with timers)?
I have tested and I can switch it without "fadein/fadeout" but I dont have a button on web for single (temporary) on/off.
My current setup is:
I´m electronic technician , and my programming skills are limited for now, a help is much appreciated ! :)
Thanks in advance!
Hello,
Probably I'm doing something wrong but I got a problem with the key feature of the aquacontrol32.
Oled works, Lights_ON works, but if i'm going in Lights_auto mode and i try to upload new timers to the controller, it doesn't do anything. If I go to another webpage and back to the editor, the timers I set before have vanished.
What could be going wrong?
Thanks for your reply.
**aquacontrol version: 1.6.6
**Arduino IDE version: 1..8.12
**ESP32 Arduino core version:1.0.4
The Readme tells "Moon light settings can be adjusted in the channels area of the web-interface" but I can't figure out how. Maybe the problem lies between chair and computer, I can't find any setting related to moon light on this area of the web interface that I could change. It only shows the percentage of illumonation and a picture of the moon phase. In the lower area I can change the channel names and colors. Can you clarify how the moon light setup is supposed to work?
Thanks for your help and this great project
Compiling and uploading sketch "version 0.0.2" runs flawlessly.
Start up of controller seems to get stuck. Serial monitor output:
ets Jun 8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:812
load:0x40078000,len:0
load:0x40078000,len:11392
entry 0x40078a9c
aquacontrol version: v1.6.6
Arduino IDE version: 1.8.11
ESP32 Arduino core version: 1.0.3 -1.04-master
The issue is:
SmartConfig does not work
Debug log:
ets Jun 8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5816
entry 0x400806ac
[I][aquacontrol32.ino:270] setup(): aquacontrol32 v1.6.6-master
[I][aquacontrol32.ino:271] setup(): ESP32 SDK: v3.2.3-14-gd3e562907
[E][Preferences.cpp:457] getBytesLength(): nvs_get_blob len fail: tftbrightness NOT_FOUND
[E][Preferences.cpp:437] getString(): nvs_get_str len fail: tftorientation NOT_FOUND
[I][aquacontrol32.ino:296] setup(): Forced an ILI9341 display on SPI.
[I][aquacontrol32.ino:314] setup(): Found SSD1306 OLED on I2C at address 0x3c.
[E][Preferences.cpp:437] getString(): nvs_get_str len fail: oledorientation NOT_FOUND
[I][aquacontrol32.ino:352] setup(): FFat mounted.
[E][WiFiSTA.cpp:219] begin(): connect failed!
[I][wifitask.ino:28] wifiTask(): Waiting 300 seconds for SmartConfig.
[W][WiFiGeneric.cpp:353] _eventCallback(): Reason: 15 - 4WAY_HANDSHAKE_TIMEOUT
[I][wifitask.ino:64] wifiTask(): WiFi connected to '' 0.0.0.0 B4:E6:2D:97:A8:4D
[E][Preferences.cpp:437] getString(): nvs_get_str len fail: hostname NOT_FOUND
[E][ESPmDNS.cpp:72] begin(): Failed setting MDNS hostname
[I][webservertask.ino:688] setupMDNS(): Looking for: aquacontrol32-97A84D.local...
[I][webservertask.ino:696] setupMDNS(): Setting up aquacontrol32-97A84D in mDNS.
[E][Preferences.cpp:437] getString(): nvs_get_str len fail: timezone NOT_FOUND
Additional information:
Reason: 15 - 4WAY_HANDSHAKE_TIMEOUT
is a new one for me.
Hello, I'm trying to flash a Nodemcu but I'm getting this error even if I press the flash button on the board:
A fatal error occurred: Timed out waiting for packet header
What am I doing wrong?
Thanks for putting so much effort into this project, I appreciate your help.
Hey,
i am on the way to make for your Project an Fritzing Connection scheme but actually i have a Problem with PIN 12 in Master/devicePinSetup i see the following line
#define SPI_TFT_RST_PIN 12 /* Goes to TFT RESET */
but i cant find anywhere a description of that pin... not on the Pinout on the web or in the PIN-Description of the Arduino ESP 1.0.4 Core Package. can you please describe or change the title to the Original Board Marking like so:
#define SPI_SCK_PIN 25 /* Goes to TFT SCK/CLK, Board PIN IO25*/
#define SPI_MOSI_PIN 32 /* Goes to TFT MOSI, Board PIN IO32 /
#define SPI_TFT_RST_PIN 12 / Goes to TFT RESET, Board PIN ??GPIO12/TDI?? /
#define SPI_TFT_CS_PIN 4 / Goes to TFT CS,Board PIN IO4 /
#define SPI_SD_CS_PIN 0 / Goes to SD CS,Board PIN IO0 /
#define SPI_MISO_PIN 39 / Goes to TFT MISO,Board PIN ??SVN/GPIO39?? /
#define TOUCH_CS_PIN 33 / Goes to TFT T_CS,Board PIN IO33 /
#define TOUCH_IRQ_PIN 35 / Goes to TFT T_IRQ, Board PIN IO35 */
That willl be very helpfull, thank for your Hard work.
If iam ready then you can upload something like this:
Actually this is only Prototyping not the endproduct.
OLED_SHOW_SYSTEMDATA
) in deviceSetup.h
which should be selectable from the web interface.OLED_ADDRESS
) should be selectable in the web interface.Hello. I like the project, but it won't connect to wifi even though the compilation runs fine without errors and the password and ssid are correct. Thanks in advance for your help
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.