Can you explain, how all the "standard-settings" can be disabled?
Can you explain, how all the "standard-settings" can be disabled?
Czy wolisz polską wersję strony elektroda?
Nie, dziękuję Przekieruj mnie tam
// Here is how you can get log print on UART1, instead of default UART2 on Beken
// Enable "[UART] Enable UART command line"
// this also can be done in flags, enable command line on UART1 at 115200 baud
SetFlag 31 1
// UART1 is RXD1/TXD1 which is used for programming and for TuyaMCU/BL0942,
// but now we will set that UART1 is used for log
logPort 1
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:2
load:0x3fff0030,len:7176
load:0x40078000,len:15564
ho 0 tail 12 room 4
load:0x40080400,len:4
load:0x40080404,len:3904
entry 0x40080640
I (31) boot: ESP-IDF c8fc5f64 2nd stage bootloader
I (31) boot: compile time Sep 10 2024 09:09:59
I (31) boot: Multicore bootloader
I (36) boot: chip revision: v3.0
I (39) boot.esp32: SPI Speed : 40MHz
I (44) boot.esp32: SPI Mode : DIO
I (49) boot.esp32: SPI Flash Size : 4MB
I (53) boot: Enabling RNG early entropy source...
I (59) boot: Partition Table:
I (62) boot: ## Label Usage Type ST Offset Length
I (69) boot: 0 otadata OTA data 01 00 00009000 00002000
I (77) boot: 1 nvs WiFi data 01 02 0000b000 00005000
I (84) boot: 2 app0 OTA app 00 10 00010000 001d0000
I (92) boot: 3 app1 OTA app 00 11 001e0000 001d0000
I (99) boot: 4 lfs Unknown data 01 82 003b0000 00050000
I (107) boot: End of partition table
I (111) esp_image: segment 0: paddr=001e0020 vaddr=3f400020 size=21e90h (138896) map
I (167) esp_image: segment 1: paddr=00201eb8 vaddr=3ff8005f size=00008h ( 8) load
I (167) esp_image: segment 2: paddr=00201ec8 vaddr=3ffb0000 size=04a8ch ( 19084) load
I (180) esp_image: segment 3: paddr=0020695c vaddr=40080000 size=096bch ( 38588) load
I (197) esp_image: segment 4: paddr=00210020 vaddr=400d0020 size=821e4h (532964) map
I (379) esp_image: segment 5: paddr=0029220c vaddr=400896bc size=0e06ch ( 57452) load
I (402) esp_image: segment 6: paddr=002a0280 vaddr=400c0000 size=00060h ( 96) load
I (414) boot: Loaded app from partition at offset 0x1e0000
I (415) boot: Disabling RNG early entropy source...
I (427) cpu_start: Multicore app
I (435) cpu_start: Pro cpu start user code
I (435) cpu_start: cpu freq: 160000000 Hz
I (435) app_init: Application information:
I (438) app_init: Project name: OpenBeken
I (443) app_init: App version: 512e0b4
I (448) app_init: Compile time: Sep 10 2024 15:40:46
I (454) app_init: ELF file SHA256: d5f0f82af...
I (459) app_init: ESP-IDF: c8fc5f64
I (464) efuse_init: Min chip rev: v0.0
I (469) efuse_init: Max chip rev: v3.99
I (474) efuse_init: Chip rev: v3.0
I (479) heap_init: Initializing. RAM available for dynamic allocation:
I (486) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (492) heap_init: At 3FFBDF98 len 00022068 (136 KiB): DRAM
I (498) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (504) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (511) heap_init: At 40097728 len 000088D8 (34 KiB): IRAM
I (519) spi_flash: detected chip: generic
I (522) spi_flash: flash io: dio
I (537) pm: Frequency switching config: CPU_MAX: 160, APB_MAX: 80, APB_MIN: 40, Light sleep: DISABLED
I (538) main_task: Started on CPU0
I (548) main_task: Calling app_main()
Entering initLog()...
Commands registered!
initLog() done!
Info:MAIN:Main_Init_Before_Delay
Main_Init_Before_Delay done
Main_Init_Delay
Main_Init_Delay done
Warn:CFG:CFG_InitAndLoad: Correct config has been loaded with 4 changes count.
Error:CMD:lfs is absent
Info:GEN:PIN_SetupPins pins have been set up.
Info:MAIN:Main_Init_Before_Delay done
Info:MAIN:Main_Init_Delay
Info:MAIN:Main_Init_Delay done
Info:MAIN:Main_Init_After_Delay
Info:MAIN:Using SSID [Ordinacija]
Info:MAIN:Using Pass [DraganSavatic]
Info:MQTT:MQTT_RegisterCallback called for bT esp8487B1AC/ subT esp8487B1AC/+/se t
Info:MQTT:MQTT_RegisterCallback called for bT esp/ subT esp/+/set
Info:MQTT:MQTT_RegisterCallback called for bT cmnd/esp8487B1AC/ subT cmnd/esp848 7B1AC/+
Info:MQTT:MQTT_RegisterCallback called for bT cmnd/esp/ subT cmnd/esp/+
Info:MQTT:MQTT_RegisterCallback called for bT esp8487B1AC/ subT esp8487B1AC/+/ge t
Error:CMD:LFS_ReadFile: lfs is absent
Info:CMD:CMD_StartScript: failed to get file autoexec.bat
Info:MAIN:Main_Init_After_Delay done
Info:MAIN:Time 1, idle 0/s, free 236216, MQTT 0(0), bWifi 0, secondsWithNoPing - 1, socks 0/0
Info:MAIN:Time 2, idle 0/s, free 236216, MQTT 0(0), bWifi 0, secondsWithNoPing - 1, socks 0/0
Info:MAIN:Time 3, idle 0/s, free 236216, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 4, idle 0/s, free 236216, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 5, idle 0/s, free 236216, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 0/0
I (5568) wifi:wifi driver task: 3ffc7c54, prio:23, stack:3072, core=0
I (5588) wifi:wifi firmware version: ccaebfa
I (5588) wifi:wifi certification version: v7.0
I (5588) wifi:config NVS flash: enabled
I (5588) wifi:config nano formating: enabled
I (5588) wifi:Init data frame dynamic rx buffer num: 32
I (5598) wifi:Init static rx mgmt buffer num: 5
I (5598) wifi:Init management short buffer num: 32
I (5598) wifi:Init dynamic tx buffer num: 32
I (5608) wifi:Init static rx buffer size: 1600
I (5608) wifi:Init static rx buffer num: 10
I (5618) wifi:Init dynamic rx buffer num: 32
I (5618) wifi_init: rx ba win: 6
I (5618) wifi_init: accept mbox: 6
I (5628) wifi_init: tcpip mbox: 32
I (5628) wifi_init: udp mbox: 6
I (5638) wifi_init: tcp mbox: 6
I (5638) wifi_init: tcp tx win: 5760
I (5638) wifi_init: tcp rx win: 5760
I (5648) wifi_init: tcp mss: 1440
I (5648) wifi_init: WiFi IRAM OP enabled
I (5658) wifi_init: WiFi RX IRAM OP enabled
I (5658) phy_init: phy_version 4830,54550f7,Jun 20 2024,14:22:08
I (5748) wifi:mode : sta (78:21:84:87:b1:ac)
I (5748) wifi:enable tsf
Info:MAIN:Main_OnWiFiStatusChange - WIFI_STA_CONNECTING - 1
Info:MAIN:WiFi Connecting...
I (5758) wifi:new:<11,0>, old:<1,0>, ap:<255,255>, sta:<11,0>, prof:1, snd_ch_cfg:0x0
I (5758) wifi:state: init -> auth (0xb0)
I (5768) wifi:state: auth -> assoc (0x0)
I (5778) wifi:state: assoc -> run (0x10)
I (5788) wifi:<ba-add>idx:0 (ifx:0, f4:17:b8:fa:ad:23), tid:0, ssn:0, winSize:64
I (5788) wifi:<ba-add>idx:1 (ifx:0, f4:17:b8:fa:ad:23), tid:5, ssn:0, winSize:64
I (5808) wifi:connected with Ordinacija, aid = 10, channel 11, BW20, bssid = f4:17:b8:fa:ad:23
I (5808) wifi:security: WPA2-PSK, phy: bgn, rssi: -41
I (5808) wifi:pm start, type: 1
I (5808) wifi:dp: 1, bi: 102400, li: 3, scale listen interval from 307200 us to 307200 us
I (5898) wifi:AP's beacon interval = 102400 us, DTIM period = 1
Info:MAIN:Time 6, idle 0/s, free 199756, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 0/0
Info:MAIN:Boot complete time reached (5 seconds)
Info:MAIN:Time 7, idle 0/s, free 199756, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 0/0
I (7818) esp_netif_handlers: sta ip: 192.168.0.50, mask: 255.255.255.0, gw: 192.168.0.1
Info:MAIN:Main_OnWiFiStatusChange - WIFI_STA_CONNECTED - 4
Info:MAIN:Time 8, idle 0/s, free 199108, MQTT 0(0), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 9, idle 0/s, free 198936, MQTT 0(0), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MQTT:mqtt_host empty, not starting mqtt
Info:MAIN:Time 10, idle 0/s, free 196152, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 11, idle 0/s, free 186440, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 12, idle 0/s, free 195768, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 13, idle 0/s, free 195456, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 14, idle 0/s, free 194920, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 15, idle 0/s, free 194836, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 16, idle 0/s, free 194940, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 17, idle 0/s, free 194596, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 18, idle 0/s, free 194424, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
Info:MAIN:Time 19, idle 0/s, free 194252, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 0/0
p.kaczmarek2 wrote:I wonder if DHT and DS18B20 are working already
p.kaczmarek2 wrote:Anyway, it doesn't look like it's working
p.kaczmarek2 wrote:Or maybe you forgot the resistor?
p.kaczmarek2 wrote:Is your pin index correct?
p.kaczmarek2 wrote:I'd just try blinking a LED first on that pin. If it blinks, then assigment is okay.
p.kaczmarek2 wrote:In a meantime, I'm working on charts driver:
insmod wrote:
Why isn't fast connect enabled by default?
insmod wrote:We could repurpose the fast connect flag then to make further connections via psk. LN882H for example would be very easy to adapt, and i have made an example for beken.
insmod wrote:
ESP8266 can be ported later, SDK's are similar enough.
insmod wrote:
But, will it have enough RAM? ESP32-C2 is already struggling, some time after boot it will sometimes fail at allocating memory for tcp client (?, don't exactly remember which, just remember errors in uart and failing at loading main page).
insmod wrote:
Questions: should setting loglevel/logfeature in autoexec.bat/early.bat crash the system? When executing manually from console it's working ok.
insmod wrote:
Maybe we should call HAL_WiFi_SetupStatusCallback before HAL_ConnectToWiFi? Some events may otherwise be lost.
TL;DR: 4MB stało się domyślną bazą dla OpenESP32, a autor poprawki napisał: "Now configured with 4MB by default". Ten FAQ jest dla osób uruchamiających OpenBeken na ESP32 i wyjaśnia, jak dobrać build, rozwiązać błędy partycji, bootloadera, OTA, UART i Wi‑Fi na C2, C3, S2, S3 oraz klasycznym ESP32. [#21220790]
Dlaczego to ważne: Błędny rozmiar flash, zły offset bootloadera albo niewłaściwy typ obrazu potrafią dać „invalid header”, bootloop albo bezpieczny tryb AP mimo sprawnego sprzętu.
| Wariant | Typowy flash z wątku | Co działało najlepiej | Najczęstszy problem |
|---|---|---|---|
| ESP32-C3 | 4MB | Wi‑Fi, OTA, PWM, czujniki I2C | SuperMini miewa problemy z Wi‑Fi i DHCP |
| Klasyczny ESP32 | 4MB, czasem wykrywany jako 2MB | GPIO, OTA, Wi‑Fi po poprawnym flashu | błędy tabeli partycji i safe mode po reboocie |
| ESP32-S2/S3 | 4MB lub 16MB | DS1820, GPIO, AP/STA po poprawkach | stack overflow, problemy z temperaturą wewnętrzną |
| ESP32-C2 | 4MB | podstawowe funkcje, PWM | mało RAM, czułość na taktowanie i baud |
| ESP8266 | 1MB, 4MB, 8MB po swapie | eksperymenty po rozdzieleniu wątku | zbyt mały flash dla dual-OTA przy 8Mbit |
Najważniejszy wniosek: Na ESP32 najpierw dobierz właściwy obraz do realnego flashu i układu, a dopiero potem diagnozuj skrypty, UART lub Wi‑Fi. W wątku większość „magicznych” awarii okazała się skutkiem złego rozmiaru flash, złego offsetu bootloadera albo użycia factory.bin zamiast .img. [#21221363]
sdkconfig.defaults.esp32; to była kluczowa poprawka startowa całego portu. [#21220790]sdkconfig.defaults.esp32 i ustaw w nim wariant 4MB jako domyślny dla ESP32. To właśnie ta zmiana odblokowała poprawny start portu i autor podsumował ją krótko: „Now configured with 4MB by default”. Jeśli tworzysz także obraz scalony, dopasuj --flash_size 4MB, bo samo SDK nie naprawi błędnego merge bin. [#21220790]factory.bin został zmergowany z nagłówkiem 2MB, mimo że płytka ma fizycznie 4MB. W logu widać wtedy SPI Flash Size : 2MB, a zaraz potem błąd typu partition ... exceeds flash chip size 0x200000. W wątku poprawka polegała na zmianie polecenia esptool.py merge_bin z --flash_size 2MB na --flash_size 4MB, bez zmiany samej płyty. [#21221363]factory.bin to obraz scalony z bootloaderem, tabelą partycji i aplikacją, a .img to zwykle sam obraz aplikacji do istniejącego układu partycji. Gdy układ startuje od zera, po erase_flash, albo masz uszkodzone partycje, użyj factory.bin. Gdy bootloader i partycje już są poprawne, często bezpieczniej użyć .img; w wątku klasyczny ESP32 ruszył po przejściu z factory na non-factory. [#21221359]erase_flash, aby usunąć stare partycje, konfigurację i błędne autostarty. 2. Wgraj właściwy obraz dla układu i realnego flashu: factory.bin przy czystym starcie albo .img przy istniejących partycjach. 3. Na S2 wejdź w boot przez przyciski RST i 0, a potem sprawdź log i AP przed testem GPIO. Ten schemat przywrócił poprawne działanie LED-ów i factory.bin na kilku płytkach. [#21221622]invalid header. Na ESP32-C3 boot ROM oczekiwał bootloadera od 0x0, więc obraz z offsetem 0x1000 wyglądał jak uszkodzony mimo poprawnego flashowania. [#21221037]g_deltaTimeMS i z niepoprawnego użycia opóźnienia FreeRTOS. Poprawa miała dwa elementy: dla ESP-IDF czas zaczęto brać z esp_timer_get_time()/1000, a w wątku timera zmieniono vTaskDelay(QUICK_TMR_DURATION) na vTaskDelay(QUICK_TMR_DURATION / portTICK_RATE_MS). To ograniczyło dryf, który wcześniej dawał wynik około MAIN:Time 150 przy kanale zwiększonym tylko do 121. [#21221114]Flash Encryption: Enabled i nie startował jak zwykła płytka deweloperska. Po zmianie eFuse tak, by raport pokazywał Flash Encryption: Disabled oraz SPI_BOOT_CRYPT_CNT: 0x3, urządzenie zaczęło bootować OpenBeken poprawnie. [#21221080]lfs is absent oznacza zwykle brak zamontowanej partycji LFS lub jeszcze nieutworzony system plików. W wątku ten komunikat pojawiał się przy starcie, ale później testy pokazały, że skrypty i zapis zaczęły działać po dalszych poprawkach partycji i flashowania. [#21221088]TG0WDT_SYS_RESET lub TG1WDT_SYS_RESET, szukaj blokującego kodu, a nie problemu RTC WDT. Jeśli log mówi o stack overflow w sys_evt, quick albo IntTemp, zwiększ stack albo znajdź pętlę rekurencyjną. W wątku restart rozbijał się o nieskończoną pętlę: WIFI_STA_DISCONNECTED wywoływało HAL_DisconnectFromWifi, które generowało ten sam event ponownie. [#21224554]UART_AppendByteToReceiveRingBuffer dodał vTaskDelay(3), aby uniknąć crasha. To stabilizowało pracę, ale przy większym strumieniu danych nadal mogło przepełnić bufor, wywołać flush wejścia i reset kolejki. [#21222660]powersave 1 10, gdzie 10 oznacza 10 dBm, a w jednym przypadku urządzenie połączyło się dopiero przy 6 dBm. To pomogło przy wolnym DHCP, braku adresu IP i niestabilnych połączeniach, typowych właśnie dla SuperMini. [#21450298]esptool flash_id poprawnie raportował nowy rozmiar pamięci. Po wymianie zawsze sprawdź producenta układu, kod urządzenia i Detected flash size, bo to jedyny szybki sposób potwierdzenia, że lutowanie i konfiguracja SPI są poprawne. [#21238166]addChangeHandler, bez dalszej odpowiedzi z działającym rozwiązaniem. Jeśli chcesz pozostać zgodny z tym wątkiem, jedyną potwierdzoną ścieżką jest dalszy eksperyment ze skryptami lub Berry, ale bez gotowej recepty opisanej w podanych postach. [#21798097]