cancel
Showing results for 
Search instead for 
Did you mean: 

reheating a faultly GPIO pin/keeping chip off for long time makes it work again?

dhiraj
Associate II
Posted on March 20, 2017 at 11:06

Hi ST support,

I have made a custom PCB using stm32L152v8t6 , there are four copies and I have flashed same code in all four boards. There are 6 gpio input pins which are initially pulled up.So after keeping the device on for some time the voltage across some gpio pins drop down. If I keep the device off for some time or reheat the faulty pins it starts working. Why am I facing such a weird issue ?We are moving on to production and want to solve this issue as soon as possible.The problem is observed in two boards while other two are working.

Please Help ASAP,

Thanks,

Regards,

Dhiraj

5 REPLIES 5
S.Ma
Principal
Posted on March 20, 2017 at 13:31

Are these pins no connect ? otherwise, the chipsets driving these input pins may force some values.

Sometime the issue could be related to the SW, or alternate function or analog input mode being triggered.

How the voltage shifts? Slowly? Suddenly (SW) ? To which voltage? If it is possible to run the debugger, stop the code when anomany occurs and inspect the GPIO register settings for anything wrong

Posted on March 20, 2017 at 19:03

Centauris.Alpha

Are these pins no connect ?

-these pins act like switches(active low)

the chipsets driving these input pins may force some values.

-the chipset only reads these pins

Sometime the issuecould be related to the SW, or alternate function or analog input mode being triggered.

-Just want to add on this point , the low power mode(stop mode) is enabled after 3mins of inactivity. Before going to low power mode (stop mode), all the pins are configured as analog input pins except one pin being configured as interrrupt to exit low power mode. On wakeup 6 pins are again reinitialized to input pullup

How the voltage shifts?

-Suddenly

To which voltage?

-varies between 1.23V to 0.82V

If it is possible to run the debugger, stop the code when anomany occurs and inspect the GPIO register settings

-Attaching the gpio register values for both working and non working conditions

Working fine:

0690X00000603fCQAQ.jpg

Fault occured:

0690X00000603Q7QAI.jpg

Posted on March 20, 2017 at 20:58

Do you have some odd grounding issues in your design?

Make sure you have a solidly bonded ground across all the chips doing the input and output.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
dhiraj
Associate II
Posted on March 21, 2017 at 18:38

Hi

turvey.clive

‌,

Can you please elaborate on odd grounding issue? I have designed a two layered pcb with ground plane on both sides.

Thanks

Posted on March 21, 2017 at 21:41

It is multifaceted. 

All your board sub-assemblies have a common ground.

The board has a singular ground net, review netlist, so there aren't disconnected islands, and routing isn't achieved via different ground pads on the chip(s).

You have continuity of the ground, check via plating and connectivity, again to ensure you don't have disconnected islands due to manufacturing issues.

That you understand the current pathways back to the supply, and have adequate trace widths along the return paths. Similarly for power that you don't have thin traces snaking all around the board.

Look very carefully at the circuitry you have on the board related to the pins you are having issues with. Evaluate the failure condition on a board where you cut the traces so nothing else can be altering the STM32 pin states but the STM32 itself.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..