Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wemos D1 mini Pro crashes in debug mode because of watchdog reset #14

Open
breezer15 opened this issue Aug 10, 2021 · 1 comment
Open

Comments

@breezer15
Copy link

breezer15 commented Aug 10, 2021

Hi,

I wanted to run the pool controller on a "Wemos D1 mini Pro".

Unfortunately the ESP always crashed (WDT reset), see in the log.

The code is only executable when I change "build_type = debug" to "build_type = release" in the platformio.ini.

Is it possible that the code is too slow in debug mode or that the serial interface is too slow and the watchdog is triggered as a result?

Many greetings

log:

11:29:27.817 > ✖ /homie/config.json doesn't exist

11:29:27.817 > Configuration invalid. Using CONFIG MODE

11:29:27.817 > 💡 Firmware pool-controller (2.0.0)

11:29:27.817 > 🔌 Booting into config mode 🔌

11:29:27.817 > Device ID is f4cfa2d0904a

11:29:27.817 > AP started as smart-swimmingpool-f4cfa2d0904a with IP 192.168.123.1

11:29:27.817 > 1227 [DEBUG]: void setup(): ngpool-f4cfa2d0904a
11:29:27.817 > Free heap: 31080

11:29:27.817 > Triggering Wi-Fi scan...

11:29:35.377 > 

11:29:35.378 >  ets Jan  8 2013,rst cause:4, boot mode:(3,7)

11:29:35.378 > 

11:29:35.378 > wdt reset

11:29:35.378 > load 0x4010f000, len 3656, room 16 

11:29:35.384 > tail 8

11:29:35.385 > chksum 0x0c

11:29:35.385 > csum 0x0c

11:29:35.385 > v9c56ed1f

11:29:35.385 > ~ld
11:29:35.456 > 72 [DEBUG]: void setup(): Before Homie setup())
11:29:36.547 > ✖ /homie/config.json doesn't exist

11:29:36.548 > Configuration invalid. Using CONFIG MODE

11:29:36.625 > 💡 Firmware pool-controller (2.0.0)

11:29:36.626 > 🔌 Booting into config mode 🔌

11:29:36.626 > Device ID is f4cfa2d0904a

11:29:36.626 > AP started as smart-swimmingpool-f4cfa2d0904a with IP 192.168.123.1

11:29:36.626 > 1228 [DEBUG]: void setup(): ngpool-f4cfa2d0904a
11:29:36.626 > Free heap: 31080

11:29:36.626 > Triggering Wi-Fi scan...

11:29:44.999 > 

11:29:44.999 >  ets Jan  8 2013,rst cause:4, boot mode:(3,7)

11:29:44.999 > 

11:29:44.999 > wdt reset

11:29:44.999 > load 0x4010f000, len 3656, room 16 

11:29:45.006 > tail 8

11:29:45.006 > chksum 0x0c

11:29:45.006 > csum 0x0c

11:29:45.006 > v9c56ed1f

11:29:45.006 > ~ld

platformio.ini:

; PlatformIO Project Configuration File
;
;   Build options: build flags, source filter
;   Upload options: custom upload port, speed and extra flags
;   Library options: dependencies, extra library storages
;   Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html

[platformio]
;default_envs = esp32dev
;default_envs = nodemcuv2
default_envs = d1_mini_pro

[common]
; build_flags = -g -DDEBUG_PORT=Serial
;Add the PIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY build flag to ensure reliable OTA updates.
build_flags = -D PIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY

; serial_speed = 74880
serial_speed = 115200

; You MUST inject these options into [env:] section
; using ${common_env_data.***} (see below)
[common_env_data]
lib_deps =
	DallasTemperature
	Wire
	paulstoffregen/OneWire
	Adafruit Unified Sensor
	DHT sensor library
	RelayModule
	NTPClient @ 3.1.0
	TimeZone @ 1.2.4
	ArduinoJson @ 6.18.0
	me-no-dev/ESP Async WebServer
  	thomasfredericks/Bounce2
  	marvinroger/AsyncMqttClient
	Homie
	; git+https://github.com/xoseperez/Time.git
	; git+https://github.com/homieiot/homie-esp8266.git#develop
	;../homie-esp8266

[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
build_flags = -D SERIAL_SPEED=${common.serial_speed}
build_unflags = -Werror=reorder
lib_deps = ${common_env_data.lib_deps}
monitor_speed = ${common.serial_speed}

; Monitor filters: https://docs.platformio.org/en/latest/core/userguide/device/cmd_monitor.html#filters
monitor_filters = esp32_exception_decoder, log2file, time, default

upload_speed = 230400
;upload_protocol = esptool
;upload_port = 192.168.178.23
;upload_flags =
;  --timeout=20
;  --port=3232
;   --auth=st25277472

; Unit Testing options
test_ignore = test_desktop

[env:nodemcuv2]
platform = espressif8266 @ 2.5.0
board = nodemcuv2
framework = arduino
build_type = debug
build_flags = -D SERIAL_SPEED=${common.serial_speed}
lib_deps = ${common_env_data.lib_deps}
monitor_speed = ${common.serial_speed}

; Monitor filters: https://docs.platformio.org/en/latest/core/userguide/device/cmd_monitor.html#filters
monitor_filters = esp8266_exception_decoder, log2file, time, default

upload_speed = 230400
test_ignore = test_desktop

[env:d1_mini_pro]
platform = espressif8266 @ 2.5.0
board = d1_mini_pro
board_build.filesystem = SPIFFS
board_build.ldscript = eagle.flash.8m7m.ld
framework = arduino
build_type = debug
build_flags = -D SERIAL_SPEED=${common.serial_speed}
lib_deps = ${common_env_data.lib_deps}
monitor_speed = ${common.serial_speed}

; Monitor filters: https://docs.platformio.org/en/latest/core/userguide/device/cmd_monitor.html#filters
monitor_filters = esp8266_exception_decoder, log2file, time, default

upload_speed = 115200
@breezer15 breezer15 changed the title Wemos D1 mini Pro crashed in debug mode because of watchdog reset Wemos D1 mini Pro crashes in debug mode because of watchdog reset Aug 10, 2021
@stritti
Copy link
Contributor

stritti commented Aug 15, 2021

Hm, probably the memory of D1 is too small. The release version is smaller than debug version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants