My initial thought is that's probably Apple's way of saying "you didn't pay us to be part of our MFi program". At least they didn't go out of their way to actually block it from working.
But after some googling it seems it even affects some Apple Bluetooth accessories, and Apple's website says "some iPad models": https://support.apple.com/en-us/HT211009
So my guess is that it shares the same radio hardware for WiFi and Bluetooth, so whenever it has to service Bluetooth it has to stop transmitting on WiFi.
It's possible that if you do NRF.setConnectionInterval(100) on the Puck it'll be fine - maybe it was complaining about Puck.js's default polling interval (before it goes into low power mode after 60 seconds) of 7.5ms - which would mean the iPad was having to stop WiFi comms pretty often.
© Espruino, powered by microcosm.
Report a problem