espressif / esp-rainmaker

ESP RainMaker Agent for firmware development
Apache License 2.0
446 stars 151 forks source link

ESP32-C6 crashing after update to latest version (MEGH-5894) #325

Open P-R-O-C-H-Y opened 4 weeks ago

P-R-O-C-H-Y commented 4 weeks ago

Answers checklist.

IDF / ESP32-Arduino version.

release/v5.1 5c57dfe949 / Arduino master

Operating System used.

macOS

How did you build your project?

Arduino IDE

Development Kit.

ESP32-C6-DevKitC-1 V1.2

What is the expected behavior?

The Rainmaker on esp32c6 was working without any errors. For testing I am using RainMaker switch example from esp32-arduino repo.

What is the actual behavior?

After updating to latest Rainmaker version the board crashes after scanning QR code. Versions used:

espressif__esp_rainmaker: 1.4.0
espressif__rmaker_common: 1.4.6

Error:

E (25623) OPENTHREAD: esp_openthread_lock_acquire(21): Failed to acquire the lock because the mutex is not ready
assert failed: otTaskletsSignalPending esp_openthread_task_queue.c:48 (ret == sizeof(val))

Steps to reproduce.

  1. Update ESP32-Arduino core to latest master
  2. Select RainMaker Switch example
  3. In Tools -> select ESP32C6, Partition scheme -> RainMaker no OTA Core Debug Level -> Verbose
  4. In the sketch comment line 79: RMaker.enableOTA(OTA_USING_TOPICS); as partition without OTA is used.
  5. Flash and try to connect the device in RainMaker App

Debug Logs.

E (25623) OPENTHREAD: esp_openthread_lock_acquire(21): Failed to acquire the lock because the mutex is not ready
assert failed: otTaskletsSignalPending esp_openthread_task_queue.c:48 (ret == sizeof(val))

More Information.

No response

wqx6 commented 4 weeks ago

Could you check whether the OPENTHREAD_ENABLED in menuconfig is enabled for the example? It should not be enabled if you are running RainMaker Over Wi-Fi on C6.

P-R-O-C-H-Y commented 4 weeks ago

Could you check whether the OPENTHREAD_ENABLED in menuconfig is enabled for the example? It should not be enabled if you are running RainMaker Over Wi-Fi on C6.

Yes it is. We need to have it enabled in Arduino to provide support for it.

me-no-dev commented 4 weeks ago

This is a similar issue to how we often see PSRAM_ENABLED being treated as if PSRAM has been started and used, which might not be the case.