-
-
Notifications
You must be signed in to change notification settings - Fork 8.2k
S3 Pin IRQ #8488
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
Comments
Using GENERIC_S3 firmware, I was able to track down the commit where the issue begins, 279 commits ago! The issue is when "Pin MicroPython to core 1 again". This makes sense as to the differing behavior between S2 (single core) and S3 (dual core). Though, to my primitive understanding, I don't understand how this would affect IRQ handler. 278 XXXXXXXXXXXXXX 648656d esp32/esp32_rmt: Call rmt_driver_install directly if running on core 1. My gut guess here is the irq is firing into the wrong core. Is that a thing? |
Back on master branch, with the following setting, pin.irq handler is firing again. The test code in the first comment above now works. CONFIG_FREERTOS_UNICORE=y I'm not sure what the side-effects are here or the story behind the current pinning setup, but hopefully another clue towards resolution of this issue. |
This allows PixelBuf to call transmit after setting a value. Fixes micropython#8488
Another odd S3 related issue. In S2 (and previous versions), I have no problem with pin irqs. In S3, the IRQ handler seems to not be called.
I have no problem on ESP32-S2 as tested on:
On S3, seeing the issues on:
My gut feel would be this would be related to pin definition for RTC pins in machine_pin.c. I don't see anything popping out at me, though eyes aren't properly calibrated here.
The text was updated successfully, but these errors were encountered: