You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current bluetooth implementation does a lot of things in IRQs (for instance promise resolution) that allocate variables - Espruino was never meant for that, and you can occasionally hit an issue where Espruino is unable to allocate a variable from an IRQ because it's doing GC in the main thread.
Not such an issue for advertising, but a deal-breaker during a promise.
I've spent a while trying to improve matters quite a lot, but at the end of the day it's almost unavoidable - so I want to move away from allocating JsVars, and to instead use the IO queue that we use for other events (eg BLE UART, Serial, Watches, etc).
The text was updated successfully, but these errors were encountered:
The current bluetooth implementation does a lot of things in IRQs (for instance promise resolution) that allocate variables - Espruino was never meant for that, and you can occasionally hit an issue where Espruino is unable to allocate a variable from an IRQ because it's doing GC in the main thread.
Not such an issue for advertising, but a deal-breaker during a promise.
I've spent a while trying to improve matters quite a lot, but at the end of the day it's almost unavoidable - so I want to move away from allocating JsVars, and to instead use the IO queue that we use for other events (eg BLE UART, Serial, Watches, etc).
The text was updated successfully, but these errors were encountered: