cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F407 clock problem? on production boards.

russdx
Associate II
Posted on May 02, 2013 at 23:24

Hello

I have a production board that I have currently produced 200 Units, the board uses a STM32F407VET6 and all 200 units work great!

I have just had another batch made up. I have tested 3 so far and 2 have died after 5min! They don't totally die but seem to stop using the external 8mhz crystal and use the internal oscillator, as I have put a scope on the external crystal and its dead.

The two 'dead' ones now seem to run the firmware at like a 3rd of the normal speed. To the point the DFU does not work any more. So I can not connect them to the pc to load new firmware on.

I'm not sure what has gone wrong on these boards? I did notice I used a different load capacitor for these new 200 boards to the previous ones. Could this upset the clock to a point it stops working? If so how come it works for a bit then dies? And when it dies it stays dead. No matter how many times I power cycle it, it remains in this 3rd speed mode.

Have these new load caps damaged the stm32 chip? Or have a received a dodgy batch of stm32's

I'm really confused to why my boards are dying and am not really sure what direction to go in to repair them?

Any help would be really appreciated.
25 REPLIES 25
russdx
Associate II
Posted on May 04, 2013 at 11:10

Note to self JTAG pins will be exposed in next revision!

The problem is the load caps, I don't know why these new ones don't work properly. But swapping the load caps with the older ones BEFORE I turn the board on seams to solve the problem.

Ill have to get all the caps swapped over.

Thanks for all your help guys!
jj2
Associate II
Posted on May 04, 2013 at 15:52

''Swapping the load caps with the older ones BEFOREI turn on the board!''

Doubt that anyone here ever considered that you'd do this any other way!  If indeed - as that writing suggests - you desoldered/removed/placed new/soldered - while the board was powered/live - my God, mate! 

That is not the ''normal/customary'' method to replace components - subjects the MCU to extraordinary stress - and casts doubt about all of your assembly/handling methods!  (not trying to be mean - but couple of hours of purchased time from assembly expert - should be high on your radar...)

Very early on - this reporter/others - honed in on xtal bypass caps.  (my 1st post)  Reveals that both attention to detail and methods employed may benefit from ''tweaking.''

We are glad that its now (one hopes) working - and that you made the time/effort to ''close the thread loop.''

Edit/Add on: Upon rethink - your writing may imply that powering your new boards - with incorrect xtal bypass caps - has ''done in'' each/every MCU - so subjected!  Is this what you meant?  Our group has used ARM MCUs - this vendor, multiple others - and have observed ill effects resulting from excessive ''C'' @ xtal bypass.  But - as best as I can recall - this never/ever ''killed'' the MCU!  Removal of cap and proper replacement - brought these boards to full spec compliance.

Would you be so good as to comment - again I believe my earlier interpretation was ''w/in the realm'' - but this new sense seems more likely... 

Posted on May 04, 2013 at 16:50

Might I suggest you evaluate the parts you took off, making sure they are capacitors, and the correct values/characteristics (LCR Meter). I've seen the wrong reel being used before, wrong values placed, orientated backward (not a problem for the ceramic caps, but diodes, tants, and electrolytics), and at least one case where chip inductors were place as capacitors.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
jj2
Associate II
Posted on May 04, 2013 at 19:33

Inductor!  By far - best explanation of why/how the MCU could be killed - and ''after the fact component swap'' - could/would not, ''re-animate.'' 

And it is easy to load the wrong reel - or misprogram Pick/Place so that an incorrect reel's component is placed.  And 200 board run may not insure most attentive/caring ''pick/place set-up!''

By chance - did your BOM include any tiny, chip inductors?  (if so - it may be that xtal bypass caps now reside in ''inductor'' board location...)

russdx
Associate II
Posted on May 05, 2013 at 19:14

Hello

My wording was a bit poor in the previous post hehe. I ment the first few boards i turned on they died within 5min. (After turning off and swapping to good know caps) They remained using the internal oscillator, nothing would make them use the external crystal again.

So I took another 10 Boards and before I even powered them up I swapped over the load caps then turned them on first the first time and all 10 have run great for well over 24hours. So im 99% sure these load caps are the problem!

I will be running some tests on the 'dodgy' load caps as I still have the reel.

No chip inductors on the board, Just one 3.3 voltage regulator.

My dad seems to think the dodgy caps cause the crystal to oscillate to much / voltage rise and it damaged the stm32's internal amplifier. And this is why the chip remains unable to use the external crystal once the damage is done.

I have managed to solder some wires onto uart3 tx/rx so I will load on some test firmware and see whats going on in detail when i have some spare time. seems to work fine apart from being able to use the external crystal.

Time for me to send them off and have the load caps swapped over hehe.

Thanks for all your help 🙂
jj2
Associate II
Posted on May 06, 2013 at 04:15

Always listen to your parents - but unless yours really were orders of magnitude in excess - hard to see how they'd wreak such havoc.  The 2-3 clients we've restored (in each case w/excessive C on xtal bypass) suffered no lasting repurcussions.  But - if those caps were so large that they were able to ''hold charge'' - and then discharge back into the MCU upon board power removal - that may explain...

Perhaps you'd perform a ''public service'' by listing make, part no. of those parts.  Suspect that it could not hurt to notify maker/vendor of your difficulty (perhaps a batch went awry or reel was mismarked!)  Or - in more modern times - parts were counterfeit! 

My intent is to not cast any negative light upon maker/vendor - but instead to alert others here to this unexpected difficulty - and to perform incoming QC to insure that parts perform as marked and to specification and are the actual issue of that maker...