Oczywiście że spróbuję... czyli po prostu dopisać #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048vajera wrote: Thu May 30, 2024 7:02 pm
Też miałem z tym problem przy zapisywaniu adresów czujników Xiaomi.
W pliku
trzeba poprawić:I zwiększyć wartość z 1024 na np. 2048.Code: Select all
#define SUPLA_LITTLEFS_CONFIG_BUF_SIZE
Tryb konfiguracyjny i różne inputy do wprowadzania parametrów
-
- Posts: 569
- Joined: Wed Oct 26, 2022 7:35 pm
-
- Posts: 1765
- Joined: Wed Oct 31, 2018 7:58 am
Tam już jestzzrr wrote: Thu May 30, 2024 7:07 pm Oczywiście że spróbuję... czyli po prostu dopisać #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048
Code: Select all
#define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 1024
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
-
- Posts: 569
- Joined: Wed Oct 26, 2022 7:35 pm
Code: Select all
Compiling .pio\build\d1_mini\src\web_interface.cpp.o
src\web_interface.cpp:56: warning: "SUPLA_LITTLEFS_CONFIG_BUF_SIZE" redefined
56 | #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048
|
In file included from src\web_interface.cpp:9:
.pio\libdeps\d1_mini\SuplaDevice\src/supla/storage/littlefs_config.h:24: note: this is the location of the previous definition
24 | #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 1024
|
-
- Posts: 1765
- Joined: Wed Oct 31, 2018 7:58 am
Tak się zastanawiam czy to zadziała? Ja zmieniłem to bezpośrednio w pliku littlefs_config.h. Nie pamiętam jak preprocesor przetwarza te makra - globalnie czy na poziomie plików?zzrr wrote: Thu May 30, 2024 7:24 pmCode: Select all
Compiling .pio\build\d1_mini\src\web_interface.cpp.o src\web_interface.cpp:56: warning: "SUPLA_LITTLEFS_CONFIG_BUF_SIZE" redefined 56 | #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048 | In file included from src\web_interface.cpp:9: .pio\libdeps\d1_mini\SuplaDevice\src/supla/storage/littlefs_config.h:24: note: this is the location of the previous definition 24 | #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 1024 |
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
-
- Posts: 11032
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Preprocesor przetwarza to zgodnie z tym jak są include'y zrobione i jak przebiega cały proces kompilacji.
Tutaj powinien aplikować sobie wartość 1024.
Natomiast można w konstruktorze podać tą maksymalną wielkość:
Także wystarczy w kodzie dać:
Tylko trzeba pamiętać, że rozmiar tego configa wpływa na zużycie pamięci RAM. Na ESP8266 tej pamięci jest bardzo mało.
Obecnie na githubie leży jeszcze nie wydana wersja supla-device, gdzie powinno się zrobić dodatkowe 3 kB luzu na ESP8266 i ESP32, więc w razie czego można testować tą najnowszą wersję prosto z gita
Tutaj powinien aplikować sobie wartość 1024.
Natomiast można w konstruktorze podać tą maksymalną wielkość:
Code: Select all
explicit LittleFsConfig(int configMaxSize = SUPLA_LITTLEFS_CONFIG_BUF_SIZE);
Code: Select all
Supla::LittleFsConfig configSupla(3000);
Obecnie na githubie leży jeszcze nie wydana wersja supla-device, gdzie powinno się zrobić dodatkowe 3 kB luzu na ESP8266 i ESP32, więc w razie czego można testować tą najnowszą wersję prosto z gita

-
- Posts: 569
- Joined: Wed Oct 26, 2022 7:35 pm
@klew czyli w kodzie zmienić
to
Supla::LittleFsConfig configSupla(3000);
a nie dopisywać #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048
Czyli można to podsumować że można to zrobić tak jak podał @vajera w pliku littlefs_config.h
a jeśli w kodzie to dodając ten argument dla konstruktora tutaj Supla::LittleFsConfig configSupla(3000); tak?
bo faktycznie jak wpisałem #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048 to niby był komunikat że nadpisało ale jakoś tak nie elegancko to wyglądało
. No i nie wiem czy w ogóle faktycznie zadziałało.
No i przy okazji jest już v24.5.2
to
Supla::LittleFsConfig configSupla(3000);
a nie dopisywać #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048
Czyli można to podsumować że można to zrobić tak jak podał @vajera w pliku littlefs_config.h
a jeśli w kodzie to dodając ten argument dla konstruktora tutaj Supla::LittleFsConfig configSupla(3000); tak?
bo faktycznie jak wpisałem #define SUPLA_LITTLEFS_CONFIG_BUF_SIZE 2048 to niby był komunikat że nadpisało ale jakoś tak nie elegancko to wyglądało

No i przy okazji jest już v24.5.2
-
- Posts: 569
- Joined: Wed Oct 26, 2022 7:35 pm
Wemos pomimo powyższych zabiegów znowu wyczyścił flash. Rzecz się dzieje przy którymś tam włączaniu lub wyłączaniu zasilania. Wymieniam go na inny. Ktoś miał coś podobnego i skończyło się po prostu po zamianie urządzenia?
-
- Posts: 11032
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
Na 99% to nie jest wina urządzenia, tylko coś w sofcie.zzrr wrote: Sat Jun 01, 2024 9:22 am Wemos pomimo powyższych zabiegów znowu wyczyścił flash. Rzecz się dzieje przy którymś tam włączaniu lub wyłączaniu zasilania. Wymieniam go na inny. Ktoś miał coś podobnego i skończyło się po prostu po zamianie urządzenia?
Zbierałeś logi? Zostaw go na zbieraniu logów. Tak będzie najłatwiej to znaleźć
-
- Posts: 569
- Joined: Wed Oct 26, 2022 7:35 pm
Tak, zbierałem. I też mi sie coś nie chce wierzyć że to wina urządzenia. Tylko że jak działa to wszystko jest ok, i to może trwać godzinami. Jak wyłączam mu zasilanie to muszę go od USB i tak odpiąć. A to się dzieje właśnie wtedy. I logów nie ma.klew wrote: Sat Jun 01, 2024 9:35 am Na 99% to nie jest wina urządzenia, tylko coś w sofcie.
Zbierałeś logi? Zostaw go na zbieraniu logów. Tak będzie najłatwiej to znaleźć
Do kitu jest jak się takie coś nie wyjaśni bo spokoju nie daje a i nie ma pewności dalej że po zmianie będzie lepiej.
Na razie zrobiłem tak że do urządzenia w którym jest min. wemos dałem drugiego a ten oddzielnie też i będę obserwował oba. Zobaczę na którym się powtórzy sytuacja
-
- Posts: 569
- Joined: Wed Oct 26, 2022 7:35 pm
Powtórzyła się sytuacja na tym drugim Wemosie który podmieniłem. @klew jak byś miał obstawiać na bazie swojego doświadczenia...
- czy to może mieć znaczenie że
Supla::Html::DeviceInfo htmlDeviceInfo(&SuplaDevice);
Supla::Html::WifiParameters htmlWifi;
Supla::Html::ProtocolParameters htmlProto;
są zadeklarowane na początku kodu a nie w setup np dopiero po
SuplaDevice.setSuplaCACert(suplaCACert);
SuplaDevice.setSupla3rdPartyCACert(supla3rdCACert);
Teraz zrobiłem żeby te obiekty były tworzone dopiero po utworzeniu certyfikatów. Ale czy to może mieć wpływ na to że w pewnym momencie wszystko w configu jest czyste?
Dodam że na 100% sytuacja dzieje się przy wyłączaniu lub włączaniu urządzenia. Raczej obstawiałbym start i jakiś problem w trakcie ładowania programu. Po takim przypadku Wemos automatycznie wchodzi w tryb configa i rozgłasza swoją sieć.
- czy to może mieć znaczenie że
Supla::Html::DeviceInfo htmlDeviceInfo(&SuplaDevice);
Supla::Html::WifiParameters htmlWifi;
Supla::Html::ProtocolParameters htmlProto;
są zadeklarowane na początku kodu a nie w setup np dopiero po
SuplaDevice.setSuplaCACert(suplaCACert);
SuplaDevice.setSupla3rdPartyCACert(supla3rdCACert);
Teraz zrobiłem żeby te obiekty były tworzone dopiero po utworzeniu certyfikatów. Ale czy to może mieć wpływ na to że w pewnym momencie wszystko w configu jest czyste?
Dodam że na 100% sytuacja dzieje się przy wyłączaniu lub włączaniu urządzenia. Raczej obstawiałbym start i jakiś problem w trakcie ładowania programu. Po takim przypadku Wemos automatycznie wchodzi w tryb configa i rozgłasza swoją sieć.