since 2.22 there are scan window and interval parameters, default is 100 for both https://www.espruino.com/Reference#l_NRF_requestDevice
I wonder if it could improve if you set them both to something larger like 200-500
It says how long the Puck scans each advertising channel before moving to next one (there are 3 advertising channels)
If there are lots of devices around I wonder if with active scan the Puck has enough time to ask each found device for scan response packet before the window for this channel is over and it needs to stop and switch to next channel. In next channel it may again manage to find only some subset of devices and so on and never actually complete the scan for all devices in any channel. This is however just a random guess, it may not help at all.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
since 2.22 there are scan window and interval parameters, default is 100 for both
https://www.espruino.com/Reference#l_NRF_requestDevice
I wonder if it could improve if you set them both to something larger like 200-500
It says how long the Puck scans each advertising channel before moving to next one (there are 3 advertising channels)
If there are lots of devices around I wonder if with active scan the Puck has enough time to ask each found device for scan response packet before the window for this channel is over and it needs to stop and switch to next channel. In next channel it may again manage to find only some subset of devices and so on and never actually complete the scan for all devices in any channel. This is however just a random guess, it may not help at all.