Cześć,
Jak zrobić żeby WebInterface stworzony w IDE był dostępny podczas normalnej pracy a nie tylko w trybie konfiguracyjnym? Chodzi mi o identyczną funkcjonalność jak w GUI.
WebInterface dostepny podczas normalnej pracy
-
- Posts: 10193
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Code: Select all
Supla::WebServer::Instance()->start();
Dodatkowo na ESP8266 może być mało RAM-u. WebServer w SuplaDevice nie był optymalizowany pod kątem wymaganej pamięci, przez co przy szyfrowanym połączeniu z serwerem, oraz przy uruchomionym WebServer, na ESP8266 urządzenie może nie pracować prawidłowo.
Nie mam w planach optymalizacji, ani testowania tego pod tym kątem, także ogólnie taką konfigurację należy traktować jako niewspieraną.
Na ESP32 będzie to działać prawidłowo, bo tam pamięci jest na pewno wystarczająco.
-
- Posts: 602
- Joined: Sun Mar 20, 2022 9:30 am
- Location: Głogów
Cześć. A jak mam taki komunikat
No i oczywiście bootloop, to co namieszałem? dodałem tylkoprzed
ESP32, przykład z biblioteki: WebInterface
Code: Select all
Starting local web server
assert failed: tcpip_send_msg_wait_sem /IDF/components/lwip/lwip/src/api/tcpip.c:449 (Invalid mbox)
Code: Select all
Supla::WebServer::Instance()->start();
Code: Select all
SuplaDevice.begin();
Zamel Mew-01, Wemos D1 mini Pro + Ikea vindriktning + BME280, 3x - SonOff mini, 3x - SonOff Basic, 3xGosund SP111, SonOff S55, 2x GOSUND WB4
https://github.com/v33r005
https://github.com/v33r005
-
- Posts: 10193
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Startować web serwer można tylko, gdy jest już jakiś interfejs sieciowy gotowy. Przed begin (a nawet po nim) nie jest . Trzeba w loopie dać if'a czekającego na sieć i wtedy wystartować.veeroos wrote: Tue Jul 23, 2024 7:41 am Cześć. A jak mam taki komunikatCode: Select all
Starting local web server assert failed: tcpip_send_msg_wait_sem /IDF/components/lwip/lwip/src/api/tcpip.c:449 (Invalid mbox)
-
- Posts: 602
- Joined: Sun Mar 20, 2022 9:30 am
- Location: Głogów
a w sumie nie doczytałem ze zrozumieniem, już testujęklew wrote: Tue Jul 23, 2024 7:58 am
Startować web serwer można tylko, gdy jest już jakiś interfejs sieciowy gotowy. Przed begin (a nawet po nim) nie jest . Trzeba w loopie dać if'a czekającego na sieć i wtedy wystartować.
Edit. Pięknie działa, dzięki wielkie
Zamel Mew-01, Wemos D1 mini Pro + Ikea vindriktning + BME280, 3x - SonOff mini, 3x - SonOff Basic, 3xGosund SP111, SonOff S55, 2x GOSUND WB4
https://github.com/v33r005
https://github.com/v33r005
-
- Posts: 439
- Joined: Sun Aug 11, 2019 5:32 pm
Code: Select all
void loop() {
SuplaDevice.iterate();
static bool LOCAL_WEB_SERVER = false;
if (!LOCAL_WEB_SERVER) {
if (Supla::Network::IsReady()) {
LOCAL_WEB_SERVER = true;
SuplaDevice.handleAction(0, Supla::START_LOCAL_WEB_SERVER);
}
}
};