-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
espulp module broken in CircuitPython 9 #8770
Comments
I have since found out that the location where The issue seems to be that It looks like this issue has to be fixed upstream in the espressif toolchain. In the meantime I would suggest to enable/disable FSM/RISCV support based on the |
According to the Reference Manual of the ESP32S3 (Page 29), the ULPs cannot be used simultaneously. This means that Espressif will likely not update But compiling Circuitpython with both ULPs worked for Circuitpython 8, so I suggest to revert the related changes from commit c38972b. |
I suspect you'll need to copy over the IDF functions we use so they are both available at compile time until espressif fixes it. I'd suggest filing an issue with them about making the API work dynamically like we use it. |
It doesn't look like we will get a response from espressif soon. In the meantime I would propose to enable the FSM ULP for all boards. Then the API is consistent across all ESPs (unlike now, where RISCV is enabled on some and FSM on others). @tannewt What do you think? |
If you want to get it working with FSM only that's fine with me. I'd be happy to review it. It isn't a priority for me at the moment. |
Fixed by #9277. |
CircuitPython version
Code/REPL
Behavior
In CircuitPython 9 it is no longer possible to instantiate a ULP object. In CircuitPython 8 this still worked.
Description
The reason for this seems to be the new preprocessor directives that were introduced between CircuitPython 8 and 9:
In particular
CONFIG_ULP_COPROC_TYPE_FSM
does not seem to get defined anywhere.I had started to work on improving the espulp module for CircuitPython 8 and wanted to port my changes to CircuitPython 9, but i hit this issue that i was not yet able to resolve.
Additional information
No response
The text was updated successfully, but these errors were encountered: