esphome / issues

Issue Tracker for ESPHome
https://esphome.io/
285 stars 34 forks source link

ESPHOME cycling reboot when connect Wifi on start up #5729

Closed huishizhao closed 3 weeks ago

huishizhao commented 3 weeks ago

The problem

could not connect wifi when start up. Found "Brownout detector was triggered" in log then auto reboot again. continuely in the boot cycle.

Which version of ESPHome has the issue?

2024.4.0

What type of installation are you using?

Home Assistant Add-on

Which version of Home Assistant has the issue?

2024.4.3

What platform are you using?

ESP32

Board

ESP32-Korvo-v1.1

Component causing the issue

Wifi

Example YAML snippet

substitutions:
  name: esp32-korvo-1
  friendly_name: esp32-korvo-1
  voice_assist_idle_phase_id: "1"
  voice_assist_listening_phase_id: "2"
  voice_assist_thinking_phase_id: "3"
  voice_assist_replying_phase_id: "4"
  voice_assist_not_ready_phase_id: "10"
  voice_assist_error_phase_id: "11"
  voice_assist_muted_phase_id: "12"
  micro_wake_word_model: okay_nabu
esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  min_version: 2023.12.8
  platformio_options:
    board_build.flash_mode: dio
  project:
    name: esphome.voice-assistant
    version: "2.0"
  on_boot:
    - priority: -100
      then:
        - light.turn_on:
            id: led_ring
            blue: 0%
            red: 100%
            green: 0%
            effect: Fast Pulse
        - delay: 1s
        - wait_until:
            condition:
              wifi.connected:
        - light.turn_on:
            id: led_ring
            blue: 0%
            red: 100%
            green: 50%
            effect: Slow Pulse
        - wait_until: 
            condition:
              api.connected
        - lambda: id(init_in_progress) = false;
        - lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
        - script.execute: reset_led
esp32:
  board: esp-wrover-kit
  flash_size: 16MB
  framework:
    type: esp-idf
    version: recommended
    sdkconfig_options:
      CONFIG_IDF_TARGET_ESP32: y
      CONFIG_ESPTOOLPY_FLASHMODE_QIO: y
      CONFIG_ESPTOOLPY_FLASHFREQ_80M: y
      CONFIG_ESPTOOLPY_FLASHSIZE_16MB: y
      CONFIG_PARTITION_TABLE_CUSTOM: y
      CONFIG_PARTITION_TABLE_CUSTOM_FILENAME: "default_16MB.csv" #"partitions_esp32.csv"
      CONFIG_PARTITION_TABLE_FILENAME: "default_16MB.csv" #"partitions_esp32.csv"
      CONFIG_PARTITION_TABLE_OFFSET: "0x8000"
      CONFIG_ESP32_DEFAULT_CPU_FREQ_240: y
      CONFIG_ESP32_SPIRAM_SUPPORT: y
      CONFIG_SPIRAM_SPEED_80M: y
      CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT: y
      CONFIG_I2S_ENABLE_DEBUG_LOG: y
      CONFIG_MODEL_IN_SPIFFS: y
#psram:
#  mode: octal
#  speed: 80MHz
external_components:
  - source: github://rpatel3001/esphome@es8311
    components: [ es8311 ]
#  - source: github://pr#4861
#    components: [es8311]
#    refresh: 0s
  - source: github://rpatel3001/esphome@es7210
    components: [ es7210 ]
  - source: github://pr#5230
    components:
      - esp_adf

# Enable logging
logger:
  level: VERBOSE

# Enable Home Assistant API
api:
  encryption:
    key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

ota:
  password: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Esp32-Korvo-1 Fallback Hotspot"
    password: "xxxxxxxxxxxxxxxxx"

captive_portal:

i2c:
  - id: bus
    sda: GPIO19
    scl: GPIO32
    scan: true
#    frequency: 400kHz

es8311:
  address: 0x18

es7210:
  address: 0x40

output:
  - platform: gpio
    id: pa_ctrl
    pin:
      number: GPIO12
      ignore_strapping_warning: true
i2s_audio:
  - id: codec
    i2s_lrclk_pin: GPIO22 
    i2s_bclk_pin: GPIO25 
    i2s_mclk_pin:
       number: GPIO0
       allow_other_uses: true
       ignore_strapping_warning: true
  - id: mic_adc
    i2s_lrclk_pin: GPIO26 
    i2s_bclk_pin: GPIO27 
    i2s_mclk_pin:
       number: GPIO0
       allow_other_uses: true
       ignore_strapping_warning: true

speaker:
  - platform: i2s_audio
    id: external_speaker
    dac_type: external
    i2s_audio_id: codec
    i2s_dout_pin: GPIO13
    mode: mono

microphone:
  - platform: i2s_audio
    id: external_mic
    adc_type: external
    i2s_audio_id: mic_adc
    i2s_din_pin: GPIO36
    pdm: false

micro_wake_word:
  model: ${micro_wake_word_model}  #okay_nabu
  on_wake_word_detected:
    then:
      - voice_assistant.start:
          wake_word: !lambda return wake_word;
esp_adf:

voice_assistant:
  id: voice_asst
  microphone: external_mic
  speaker: external_speaker
  noise_suppression_level: 2
  auto_gain: 15dBFS
  volume_multiplier: 0.5
  vad_threshold: 3
  on_listening:
    - lambda: id(voice_assistant_phase) = ${voice_assist_listening_phase_id};
    - script.execute: reset_led
  on_stt_vad_end:
    - lambda: id(voice_assistant_phase) = ${voice_assist_thinking_phase_id};
    - script.execute: reset_led
  on_tts_start:
    - light.turn_on:
        id: led_ring
        blue: 0%
        red: 100%
        green: 100%
        brightness: 60%
        effect: Working
  on_stt_end: 
    - homeassistant.service:
        service: media_player.play_media
        data:
          entity_id: media_player.ke_ting
          media_content_id: !lambda return x;
          media_content_type: music
          announce: "true"

  on_tts_stream_start:
    - output.turn_on: pa_ctrl
    - delay: 100ms
    - lambda: id(voice_assistant_phase) = ${voice_assist_replying_phase_id};
    - script.execute: reset_led

  on_end:
    - wait_until:
        not:
          speaker.is_playing:
    - lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
    - script.execute: reset_led
    - if:
        condition:
          and:
            - switch.is_off: mute
            - lambda: return id(wake_word_engine_location).state == "On device";
        then:
          - wait_until:
              not:
                voice_assistant.is_running:
          - micro_wake_word.start:

  on_error:
    - if:
        condition:
          lambda: return !id(init_in_progress);
        then:
          - lambda: id(voice_assistant_phase) = ${voice_assist_error_phase_id};
          - script.execute: reset_led
          - delay: 2s
          - if:
              condition:
                switch.is_off: mute
              then:
                - lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
              else:
                - lambda: id(voice_assistant_phase) = ${voice_assist_muted_phase_id};
          - script.execute: reset_led

  on_client_connected:
    - if:
        condition:
          switch.is_off: mute
        then:
          - if:
              condition:
                lambda: return id(wake_word_engine_location).state == "In Home Assistant";
              then:
                - lambda: id(voice_asst).set_use_wake_word(true);
                - voice_assistant.start_continuous:
          - if:
              condition:
                lambda: return id(wake_word_engine_location).state == "On device";
              then:
                - micro_wake_word.start
          - lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
        else:
          - lambda: id(voice_assistant_phase) = ${voice_assist_muted_phase_id};
    - lambda: id(init_in_progress) = false;
    - script.execute: reset_led

  on_client_disconnected:
    - if:
        condition:
          lambda: return id(wake_word_engine_location).state == "In Home Assistant";
        then:
          - lambda: id(voice_asst).set_use_wake_word(false);
          - voice_assistant.stop:
    - if:
        condition:
          lambda: return id(wake_word_engine_location).state == "On device";
        then:
          - micro_wake_word.stop
    - lambda: id(voice_assistant_phase) = ${voice_assist_not_ready_phase_id};
    - script.execute: reset_led

script:
  - id: reset_led
    then:
      - if:
          condition:
            lambda: return !id(init_in_progress);
          then:
            - if:
                condition:
                  lambda: return id(voice_assistant_phase) == ${voice_assist_listening_phase_id};
                then:                     
                  - light.turn_on:
                      id: led_ring
                      blue: 0%
                      red: 0%
                      green: 100%
                      brightness: 100%
                      effect: wakeword
            - if:
                condition:
                  lambda: return id(voice_assistant_phase) == ${voice_assist_thinking_phase_id};
                then:                     
                  - light.turn_on:
                      id: led_ring
                      blue: 100%
                      red: 100%
                      green: 0%
                      brightness: 100%
                      effect: Working
                  - delay: 100ms
            - if:
                condition:
                  lambda: return id(voice_assistant_phase) == ${voice_assist_replying_phase_id};
                then:                     
                  - light.turn_on:
                      id: led_ring
                      blue: 100%
                      red: 0%
                      green: 0%
                      brightness: 100%
                      effect: Working
            - if:
                condition:
                  lambda: return id(voice_assistant_phase) == ${voice_assist_idle_phase_id};
                then:
                  - light.turn_on:
                      id: led_ring
                      blue: 100%
                      red: 0%
                      green: 0%
                      brightness: 40%
                      effect: none
                  - delay: 200ms
            - if:
                condition:
                  lambda: return id(voice_assistant_phase) == ${voice_assist_not_ready_phase_id};
                then:                     
                  - light.turn_on:
                      id: led_ring
                      blue: 40%
                      red: 100%
                      green: 0%
                      effect: Slow Pulse
            - if:
                condition:
                  lambda: return id(voice_assistant_phase) == ${voice_assist_error_phase_id};
                then:                     
                  - light.turn_on:
                      id: led_ring
                      blue: 0%
                      red: 100%
                      green: 0%
                      brightness: 100%
                      effect: none
            - if:
                condition:
                  lambda: return id(voice_assistant_phase) == ${voice_assist_muted_phase_id};
                then:                     
                  - light.turn_off: led_ring
          else:
            - light.turn_on:
                id: led_ring
                blue: 0%
                red: 100%
                green: 0%
                effect: Fast Pulse

light:
  - platform: esp32_rmt_led_strip
    id: led_ring
    name: "${friendly_name} Light"
    pin: GPIO33 #GPIO19
    num_leds: 12
    rmt_channel: 0
    rgb_order: GRB
    chipset: ws2812
    default_transition_length: 0s
    effects:
      - pulse:
          name: "Pulse"
          transition_length: 300ms
          update_interval: 300ms
          min_brightness: 50%
          max_brightness: 100%

      - addressable_twinkle:
          name: "Working"
          twinkle_probability: 5%
          progress_interval: 3ms
      - addressable_color_wipe:
          name: "Wakeword"
          colors:
            - red: 0%
              green: 50%
              blue: 0%
              num_leds: 12
          add_led_interval: 40ms
          reverse: false
      - pulse:
          name: "Slow Pulse"
          transition_length: 0.5s
          update_interval: 1s
          min_brightness: 0%
          max_brightness: 100%
      - pulse:
          name: "Fast Pulse"
          transition_length: 50ms
          update_interval: 100ms
          min_brightness: 50%
          max_brightness: 100%

switch:
  - platform: template
    name: Mute
    id: mute
    optimistic: true
    restore_mode: RESTORE_DEFAULT_OFF
    entity_category: config
    on_turn_off:
      - if:
          condition:
            lambda: return !id(init_in_progress);
          then:
            - lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
            - if:
                condition:
                  not:
                    - voice_assistant.is_running
                then:
                  - if:
                      condition:
                        lambda: return id(wake_word_engine_location).state == "In Home Assistant";
                      then:
                        - lambda: id(voice_asst).set_use_wake_word(true);
                        - voice_assistant.start_continuous
                  - if:
                      condition:
                        lambda: return id(wake_word_engine_location).state == "On device";
                      then:
                        - micro_wake_word.start
            - script.execute: reset_led
    on_turn_on:
      - if:
          condition:
            lambda: return !id(init_in_progress);
          then:
            - lambda: id(voice_asst).set_use_wake_word(false);
            - voice_assistant.stop
            - micro_wake_word.stop
            - lambda: id(voice_assistant_phase) = ${voice_assist_muted_phase_id};
            - script.execute: reset_led
  - platform: restart
    name: "${name} Restart"
select:
  - platform: template
    entity_category: config
    name: Wake word engine location
    id: wake_word_engine_location
    optimistic: true
    restore_value: true
    options:
      - In Home Assistant
      - On device
    initial_option: On device
    on_value:
      - wait_until:
          lambda: return id(voice_assistant_phase) == ${voice_assist_muted_phase_id} || id(voice_assistant_phase) == ${voice_assist_idle_phase_id};
      - if:
          condition:
            lambda: return x == "In Home Assistant";
          then:
            - micro_wake_word.stop
            - delay: 500ms
            - if:
                condition:
                  switch.is_off: mute
                then:
                  - lambda: id(voice_asst).set_use_wake_word(true);
                  - voice_assistant.start_continuous:
      - if:
          condition:
            lambda: return x == "On device";
          then:
            - lambda: id(voice_asst).set_use_wake_word(false);
            - voice_assistant.stop
            - delay: 500ms
            - micro_wake_word.start

globals:
  - id: init_in_progress
    type: bool
    restore_value: false
    initial_value: "true"
  - id: voice_assistant_phase
    type: int
    restore_value: false
    initial_value: ${voice_assist_not_ready_phase_id}

binary_sensor:
  - platform: template
    name: "${friendly_name} Volume Up"
    id: btn_volume_up
    publish_initial_state : True
  - platform: template
    name: "${friendly_name} Volume Down"
    id: btn_volume_down
    publish_initial_state : True
  - platform: template
    name: "${friendly_name} Set"
    id: btn_set
    publish_initial_state : True
  - platform: template
    name: "${friendly_name} Play"
    id: btn_play
    publish_initial_state : True
  - platform: template
    name: "${friendly_name} Mode"
    id: btn_mode
    publish_initial_state : True
  - platform: template
    name: "${friendly_name} Record"
    id: btn_record
    publish_initial_state : True
    on_press:
      - voice_assistant.start:
      - light.turn_on:
          id: led_ring
          blue: 0%
          red: 0%
          green: 100%
          brightness: 100%
          effect: "Wakeword"
#    on_release:
#      - voice_assistant.stop:
#      - output.turn_off: pa_ctrl
#      - light.turn_off:
#          id: led_ring
sensor:
  - id: button_adc
    platform: adc
    internal: true
    pin: 39 #8
    attenuation: 11db
    update_interval: 15ms
    filters:
      - median:
          window_size: 5
          send_every: 5
          send_first_at: 1
      - delta: 0.1
    on_value_range:
      - below: 0.55
        then:
          - binary_sensor.template.publish:
              id: btn_volume_up
              state: ON
      - above: 0.65
        below: 0.92
        then:
          - binary_sensor.template.publish:
              id: btn_volume_down
              state: ON
      - above: 1.02
        below: 1.33
        then:
          - binary_sensor.template.publish:
              id: btn_set
              state: ON
      - above: 1.43
        below: 1.77
        then:
          - binary_sensor.template.publish:
              id: btn_play
              state: ON
      - above: 1.87
        below: 2.15
        then:
          - binary_sensor.template.publish:
              id: btn_mode
              state: ON
      - above: 2.25
        below: 2.56
        then:
          - binary_sensor.template.publish:
              id: btn_record
              state: ON
      - above: 2.8
        then:
          - binary_sensor.template.publish:
              id: btn_volume_up
              state: OFF
          - binary_sensor.template.publish:
              id: btn_volume_down
              state: OFF
          - binary_sensor.template.publish:
              id: btn_set
              state: OFF
          - binary_sensor.template.publish:
              id: btn_play
              state: OFF
          - binary_sensor.template.publish:
              id: btn_mode
              state: OFF
          - binary_sensor.template.publish:
              id: btn_record
              state: OFF

Anything in the logs that might be useful for us?

flash chip QIO
I (39) boot.esp32: SPI Speed      : 40MHz
I (44) boot.esp32: SPI Mode       : QIO
I (49) boot.esp32: SPI Flash Size : 16MB
I (53) boot: Enabling RNG early entropy source...
I (59) boot: Partition Table:
I (62) boot: ## Label            Usage          Type ST Offset   Length
I (70) boot:  0 otadata          OTA data         01 00 00009000 00002000
I (77) boot:  1 phy_init         RF data          01 01 0000b000 00001000
I (84) boot:  2 app0             OTA app          00 10 00010000 007c0000
I (92) boot:  3 app1             OTA app          00 11 007d0000 007c0000
I (99) boot:  4 nvs              WiFi data        01 02 00f90000 0006d000
I (107) boot: End of partition table
I (111) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=5d7e4h (382948) map
I (238) esp_image: segment 1: paddr=0006d80c vaddr=3ffb0000 size=0280ch ( 10252) load
I (242) esp_image: segment 2: paddr=00070020 vaddr=400d0020 size=111a70h (1120880) map
I (590) esp_image: segment 3: paddr=00181a98 vaddr=3ffb280c size=00e1ch (  3612) load
I (591) esp_image: segment 4: paddr=001828bc vaddr=40080000 size=1aa78h (109176) load
I (647) boot: Loaded app from partition at offset 0x10000
I (647) boot: Disabling RNG early entropy source...
I (659) cpu_start: Multicore app
I (659) psram: This chip is ESP32-D0WD
I (659) spiram: Found 64MBit SPI RAM device
I (661) spiram: SPI RAM mode: flash 80m sram 80m
I (666) spiram: PSRAM initialized, cache is in low/high (2-core) mode.
I (674) cpu_start: Pro cpu up.
I (677) cpu_start: Starting app cpu, entry point is 0x40082dd0
I (670) cpu_start: App cpu up.
I (1186) spiram: SPI SRAM memory test OK
I (1194) cpu_start: Pro cpu start user code
I (1194) cpu_start: cpu freq: 240000000
I (1194) cpu_start: Application information:
I (1197) cpu_start: Project name:     esp32-korvo-1
I (1202) cpu_start: App version:      2024.4.0
I (1207) cpu_start: Compile time:     Apr 17 2024 23:30:52
I (1214) cpu_start: ELF file SHA256:  917450571551603c...
I (1220) cpu_start: ESP-IDF:          4.4.6
I (1225) cpu_start: Min chip rev:     v0.0
I (1229) cpu_start: Max chip rev:     v3.99 
I (1234) cpu_start: Chip rev:         v3.0
I (1239) heap_init: Initializing. RAM available for dynamic allocation:
I (1246) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (1253) heap_init: At 3FFB9938 len 000266C8 (153 KiB): DRAM
I (1259) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (1265) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (1272) heap_init: At 4009AA78 len 00005588 (21 KiB): IRAM
I (1278) spiram: Adding pool of 4095K of external SPI memory to heap allocator
I (1287) spi_flash: detected chip: gd
I (1290) spi_flash: flash io: qio
I (1295) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (1310) spiram: Reserving pool of 32K of internal memory for DMA/internal allocations
[I][logger:158]: Log initialized
[C][ota:483]: There have been 6 suspected unsuccessful boot attempts.
[D][esp32.preferences:114]: Saving 1 preferences to flash...
[D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed
[I][app:029]: Running through setup()...
[C][i2c.idf:017]: Setting up I2C bus...
[I][i2c.idf:252]: Performing I2C bus recovery
[D][esp-idf:000]: I (1375) gpio: GPIO[32]| InputEn: 1| OutputEn: 1| OpenDrain: 1| Pullup: 1| Pulldown: 0| Intr:0 

[D][esp-idf:000]: I (1385) gpio: GPIO[19]| InputEn: 1| OutputEn: 1| OpenDrain: 1| Pullup: 1| Pulldown: 0| Intr:0 

[D][esp-idf:000]: I (1425) gpio: GPIO[12]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 

[C][esp32_rmt_led_strip:021]: Setting up ESP32 LED Strip...
[D][template.select:014]: Setting up Template Select
[D][template.select:023]: State from initial (could not load stored index): On device
[D][select:015]: 'Wake word engine location': Sending state On device (index 1)
[D][binary_sensor:034]: 'esp32-korvo-1 Volume Up': Sending initial state OFF
[D][binary_sensor:034]: 'esp32-korvo-1 Volume Down': Sending initial state OFF
[D][binary_sensor:034]: 'esp32-korvo-1 Set': Sending initial state OFF
[D][binary_sensor:034]: 'esp32-korvo-1 Play': Sending initial state OFF
[D][binary_sensor:034]: 'esp32-korvo-1 Mode': Sending initial state OFF
[D][binary_sensor:034]: 'esp32-korvo-1 Record': Sending initial state OFF
[C][light:035]: Setting up light 'esp32-korvo-1 Light'...
[D][light:036]: 'esp32-korvo-1 Light' Setting:
[D][light:041]:   Color mode: RGB
[D][template.switch:046]:   Restored state OFF
[D][switch:016]: 'Mute' Turning OFF.
[D][switch:055]: 'Mute': Sending state OFF
[C][i2s_audio:024]: Setting up I2S Audio...
[C][i2s_audio:024]: Setting up I2S Audio...
[C][i2s_audio.microphone:018]: Setting up I2S Audio Microphone...
[C][adc:047]: Setting up ADC 'button_adc'...
[D][esp-idf:000]: I (1527) gpio: GPIO[39]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 

[C][adc:093]: ADC 'button_adc' setup finished!
[C][wifi:038]: Setting up WiFi...
[D][esp-idf:000]: I (1560) wifi:
[D][esp-idf:000]: wifi driver task: 3ffd2b58, prio:23, stack:6656, core=0
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1568) system_api: Base MAC address is not set

[D][esp-idf:000]: I (1578) system_api: read default base MAC address from EFUSE

[D][esp-idf:000]: I (1605) wifi:
[D][esp-idf:000]: wifi firmware version: 1ba8b6a
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1609) wifi:
[D][esp-idf:000]: wifi certification version: v7.0
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1609) wifi:
[D][esp-idf:000]: config NVS flash: enabled
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1619) wifi:
[D][esp-idf:000]: config nano formating: disabled
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1629) wifi:
[D][esp-idf:000]: Init data frame dynamic rx buffer num: 32
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1650) wifi:
[D][esp-idf:000]: Init management frame dynamic rx buffer num: 32
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1660) wifi:
[D][esp-idf:000]: Init management short buffer num: 32
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1671) wifi:
[D][esp-idf:000]: Init static tx buffer num: 16
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1691) wifi:
[D][esp-idf:000]: Init tx cache buffer num: 32
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1701) wifi:
[D][esp-idf:000]: Init static rx buffer size: 1600
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1711) wifi:
[D][esp-idf:000]: Init static rx buffer num: 10
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1721) wifi:
[D][esp-idf:000]: Init dynamic rx buffer num: 32
[D][esp-idf:000]: 

[D][esp-idf:000]: I (1732) wifi_init: rx ba win: 6

[D][esp-idf:000]: I (1732) wifi_init: tcpip mbox: 32

[D][esp-idf:000]: I (1742) wifi_init: udp mbox: 6

[D][esp-idf:000]: I (1742) wifi_init: tcp mbox: 6

[D][esp-idf:000]: I (1752) wifi_init: tcp tx win: 5744

[D][esp-idf:000]: I (1762) wifi_init: tcp rx win: 5744

[D][esp-idf:000]: I (1763) wifi_init: tcp mss: 1440

[D][esp-idf:000]: I (1773) wifi_init: WiFi IRAM OP enabled

[D][esp-idf:000]: I (1783) wifi_init: WiFi RX IRAM OP enabled

[C][wifi:051]: Starting WiFi...
[C][wifi:052]:   Local MAC: CC:DB:A7:9C:8B:08
[D][esp-idf:000]: I (1804) phy_init: phy_version 4771,450c73b,Aug 16 2023,11:03:10

Brownout detector was triggered

Additional information

development board user manual: https://github.com/espressif/esp-skainet/blob/master/docs/en/hw-reference/esp32/user-guide-esp32-korvo-v1.1.md

ssieb commented 3 weeks ago

Brownout means your power supply isn't good enough.