I read (no, I ‘scanned’ har, har) “Precise Energy Modeling for the Bluetooth LowEnergy Protocol” and set up advertising and scanning parameters based on it’s teachings.
I concluded:
- Advertising interval 1-2.5 seconds
- Scan interval 2.56s
- Scan window 11.25 ms
I made two new test programs for David to measure.
Advertise250mNoLeds.hex
Performs an advertising cycle every 250ms – no led activity under test! N.B. There will be some random additional housekeeping activity every 5th advertising cycle, which should be ignored.
Scan256m12msNoLeds.hex
Performs a 12ms scanning cycle every 255ms – no led activity under test! I think it should run for about an hour before it performs disruptive housekeeping.
———-
David writes
My attempt at shielding has failed miserably. It turns out that the best results comes from not using the uCurrent but rather a larger resistor. these photos used the 10 ohm resistor in the uCurrent but the uCurrent is turned off and the scope connected directly to the wires from the TS06.
What does it mean when all of the LEDs flash on and off 4 times per second when running Scan256m12msNoLeds.
It’s a bug! I set a timer-based pause, and sometimes it’s value is zero seconds. This causes the soft-machine to crash. Seems like pasue(0) ought to make sense. Fixed in the next version.
Scan256m12msNoLeds.hex booting
Random initialization code running I expect
Scan256m12msNoLeds.hex advertising
This is actually interesting – be good to know what that current is.
All LDEs start flashing after a couple of minutes
Bug. See note above.
Zoomed in on an event but not sure what it is
Nor me.
Flash.hex. Notice the scale is 10s per div
Looks pretty good to me.
Flash multi.hex
1kHz flash
2 kHz flash
10kHz flash
Advertise250mNoLeds.hex booting
Garbage
Advertise250mNoLeds.hex zoomed on short pulse
I suspect these are the adv. packets going out on channels: 37, 38 and 39. But it would be good to guestimate the current for this.
I haven’t tried to calculate the current.