SparkFun Forums 

Where electronics enthusiasts find answers.

Everything ARM and LPC
By Big Hairy Troll
#104860
I have been playing around with a logomatic V2 for a little more than a week now and could program both the firmware and the bootloader multiple times.

When I received it months ago it seemed DOA but then life caught up and I had to deal with more pressing matters.
When I resumed checking it out last week it seemed to at least power up and after some poking I got it to work about right.
During these days it was mostly on all the time, either with the USB attached or not (I used a LiPo from Sparkfun for this guy).

Last night I left it with the USB plugged in to recharge the LiPo.
And then this morning it stopped powering up altogether when I cycle power.
Well, not quite, actually: from time to time it would power up and boot ok, every 40th attempt or so but then only after some time off.
But most of the time I switch the power on and it does not boot. Everytime, now, in fact.
  • The USB LED does not switch on (my code switches it off as soon as the uSD is done configuring but I should still see it, and then I use it to indicate activity)
  • Nothing goes to the console - the RS232 and the USB are on the same laptop, therefore I rule out ground loops as a cause for damage.
  • If the USB is plugged in, the device does not enumerate
I fired up the oscilloscope.
  • The LiPo was properly charged (the charger LED still lights up when I plug in the USB).
  • 3V3 is present and stable when the switch is on.
  • The RST signal is not stuck, I could see it going up and down as I press the button.
  • The clock is more difficult to check but I have a hunch it works just fine by looking at the signal on the caps next to the oscillator, but mostly because when I power up the unit in ISP, flash magic can access the LPC2148 and reprogram it which would not be possible without a working clock.
So I thought to myself "You stupid guy! It's your $^c#!ng changes in the code that got you in this mess!" and I reprogrammed the original SFE bootloader in there using flash magic.
Programmed all right.
Same problem.
Now I don't know any more where to go.

The only things I can think of are:
  • If the PLL fried for some reason - the ISP probably does not use it.
  • Maybe the ISP runs on the 32kHz, and then my problem is my clock.
Does anybody have other leads?
By Big Hairy Troll
#104863
I think I found at least the failure mechanism:
The unit enters ISP every time, even when the button is physically removed.
I guess that now I can fire up the microscope!
I will let you know.
By Big Hairy Troll
#104868
Ok, all is good.
It was some oxydized solder blog on the BSL pin that was shorting to the nearby GND pin.
Apparently it worked fine so far because I was mostly working on it at night, but then in the day temperatures can be somewhat higher here (Costa Rica) and the expansion would do the trick - it seems to explain as well why it would sometimes boot after some time off: the LPC does not develop much power but it would still heat up internally...
Anyway Saint Xacto solved that for me.
(I have a microscope picture of the fixed pin, but I forgot to take one of the problem before xactoing my way through.)