Steve and I did some analysis of Balloon returns last week.
The most significant thing we discovered was a design error that has
always been there, but doesn't usually cause problems (or we would
have noticed it before). However applying a mod to fix it does appear
to have brought several cards back to proper functioning so It's worth
telling people about in case they have misbehaving cards. Do this mod
first.
Steve would no doubt explain this rather better but here's the
software-engineer's version:
Essentially the problem is that the USB chip is on the data bus and
has it's power (VDD_3V_USB) controlled by the high-side switch chip
U24 (from GPIO25 on the CPU).
When the power to the USB chip is off but the databus is being driven
'bad karma' can happen as the chip tries to power itself off the
databus. It doesn't quite manage this and the net result is that the
USB power and clock cycles up and down at about 1Hz and bad data can
get on the bus.
This isn't always fatal, but it quite often is. On most boards the U24
VDD_3V_USB output seems to stay low anyway, but on some it doesn't.
Once the USB power is explictily turned on (or off) then the problem
goes away, but during early-stage bootloader activity there is the
risk of curruption.
The fix is to tie a 10K pulldown to 3V_USB_OFF so that the USB power
defaults to on when it is not driven.
wiki page here, which will have some pics shortly:
http://balloonboard.org/balloonwiki/HardwareMods
Wookey
--
Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK Tel +44 (0) 1223 811679
work: http://www.aleph1.co.uk/ play: http://wookware.org/