Skip to content

ESP8266 crash "ISR not in IRAM" #11

@who-has-seen-the-wind

Description

@who-has-seen-the-wind

With Arduino 1.8.10, ESP8266 library v2.62, ESP12 module,
serial monitor reports
"ISR not in IRAM"

See
esp8266/Arduino#6127
in particular,
esp8266/Arduino#6127 (comment)
and the two comments that follow that, where they specifically cite LoRa.cpp, including:
"Is that code doing an spi transaction from an ISR???
There are strict timing requirements on the exec time of an ISR in the ESP.
Blocking operations are a big no no, and in general ISRs shouldn't take more than a few us.
At a glance, I don't think that code will work, at least not with wifi running.
I would advise an ESP user to set a flag in the ISR and execute from the loop,
or use the scheduled function api (runs a cb as though it were in the loop)."

Additionally, I see that a LoRa.cpp file is contained inside the LoRaNow src directory.
Perhaps this is some prior version of SandeepMistry's code.
Perhaps this library be included rather than copied?
If it was included, the current version has a macro to define ISR_PREFIX as ICACHE_RAM_ATTR
but doesn't really address the fundamental points in the comments cited above.

This is related to
#6

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingduplicateThis issue or pull request already exists

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions