Hello,
I have been working on improvements to the FastLED driver for ESP32 based on the RMT device, and I've run into a problem when our code is run in conjunction with flash-based file systems. Users are reporting that their programs occasionally trigger a cache access failure when attempting to write out the LED data. You can see some of the discussion here: https://github.com/FastLED/FastLED/issues/1115
The problem is that our driver calls RMT functions (like rmt_tx_start) in the ESP-IDF library that are not in IRAM. So, when flash access occurs on the other core, these calls trigger a cache access failure. My stop-gap solution is to replace those calls with the underlying low-level code (direct access to the RMT memory-mapped registers), but that totally breaks the "hal" abstraction that the newer versions of ESP-IDF have been using.
Are there any other good solutions for this problem?
RMT functions not in IRAM
Jump to
- English Forum
- Explore
- News
- General Discussion
- FAQ
- Documentation
- Documentation
- Sample Code
- Discussion Forum
- Hardware
- ESP-IDF
- ESP-BOX
- ESP-ADF
- ESP-MDF
- ESP-WHO
- ESP-SkaiNet
- ESP32 Arduino
- IDEs for ESP-IDF
- ESP-AT
- ESP IoT Solution
- ESP RainMaker
- Rust
- ESP8266
- Report Bugs
- Showcase
- Chinese Forum 中文社区
- 活动区
- 乐鑫活动专区
- 讨论区
- 全国大学生物联网设计竞赛乐鑫答疑专区
- ESP-IDF 中文讨论版
- 《ESP32-C3 物联网工程开发实战》书籍讨论版
- 中文文档讨论版
- ESP-AT 中文讨论版
- ESP-BOX 中文讨论版
- ESP IoT Solution 中文讨论版
- ESP-ADF 中文讨论版
- ESP Mesh 中文讨论版
- ESP Cloud 中文讨论版
- ESP-WHO 中文讨论版
- ESP-SkaiNet 中文讨论版
- ESP 生产支持讨论版
- 硬件问题讨论
- 项目展示
Who is online
Users browsing this forum: Bing [Bot], Google [Bot] and 64 guests
- All times are UTC
- Top
- Delete cookies
About Us
Espressif Systems is a fabless semiconductor company providing cutting-edge low power WiFi SoCs and wireless solutions for wireless communications and Internet of Things applications. ESP8266EX and ESP32 are some of our products.