The main issue with the system is that bluetooth low energy just doesn't seem to have the range. I've tried extending range by hacking the aerial, but it doesn't make much difference.
After putting the dongle on a usb extension cable at my parents the range got a lot better. I'm assuming that getting it further away from the wifi dongle (both at 2.4GHz) reduced interference and improved range.
Strangely, doing the same thing in my (much smaller) flat - it didn't make much difference.
So how to increase range. Well my laptop is on a fair amount, so while it's on why not use its bluetooth to pass the message on if the wristband is out of range from the pi?
If the daemon is started with
--udp_repeat then it will broadcast any wristband messages (default 192.168.0.255).
The udp repeater program can be started at boot, and will pass on messages received over UDP to the wristband if it's in range.