2024-09-23 04:02 AM - edited 2024-09-23 04:12 AM
Hello,
We’ve designed a device that uses an STM32 microcontroller to manage various features such as I2C, UART, ADC, IWDG, DMA, Flash memory handling etc. After running smoothly for a month, the device began malfunctioning, drawing 220 mA of current and heating up noticeably. I’m trying to determine the root cause of this issue. Could you provide insights into the possible reasons for this behavior?
Thank you.
Solved! Go to Solution.
2024-09-23 12:26 PM
Hi,
in such "cases" , i just power the board and watch it with an IR cam ->
you see, where the power goes -- or only cpu gets hot, then you damaged it (if your program was working before, without heating, otherwise try the simple test setup with all pins unused or inputs.)
2024-09-24 02:47 AM
We have an output that is internally pulled down and configured in push-pull mode. I’ve read that setting the GPIO output speed too high could potentially lead some issues mentioned below:
"The output speed register only affects pins which are configured as outputs. It controls the slew rate (drive strength) used for the output. Using an excessively high speed may cause ringing and EMI on outputs, so it is important to use the minimum speed required for your application"
Could this be related to the issue I’m experiencing?
2024-09-24 02:54 AM
Your problem is a short on (1 or more) pins - or a killed cpu. (Overvoltage...or ESD can kill it easy...)
not (too) high speed on any pin.
2024-09-24 05:19 AM - edited 2024-09-24 05:22 AM
I reviewed the datasheet and discovered in (Table 11. Pin assignment and description) that using PC13/14/15 has output limitations in certain cases. However, in my design, PC13 is configured as open-drain output with external pull-up resistor.
Could this be the cause of the malfunction?
2024-09-24 06:17 AM
@Wadeva wrote:PC13/14/15 has output limitations in certain cases. However, in my design, PC13 is configured as open-drain output with external pull-up resistor.
Could this be the cause of the malfunction?
Unlikely.
The limitation there is just about sourcing current, not sinking - see:
Open-drain can only ever sink current.
2024-09-24 07:05 AM
Since it is a custom-made device, chances are high that there is a manufacturing error. Please check the PCB for errors. Maybe there is an accidental short circuit or broken traces.
https://www.youtube.com/watch?v=OxlqhZVOdNI
https://www.pcbway.com/blog/2/Modern_PCB_testing_strategies.html
2024-09-24 07:11 AM
@liaifat85 wrote:Since it is a custom-made device, chances are high that there is a manufacturing error.
Since it is (or seems to be?) a new design, chances are also quite high that there is a design error.
There could, of course, be both!
2024-09-24 07:23 AM
Hello @Wadeva ,
Start by reviewing the schematics and refer to the reference design described in the AN5096 "Getting started with STM32G0 Series hardware development"
Check if there is a short-circuit between the pins.
If you run a very basic application, let's say by toggling a LED, do you face the same behavior?
2024-09-24 11:39 PM
Hello everyone, after reviewing our design, I discovered an unprotected pin that is connected to the chassis ground of the device. I’ll need to check if there are any other similar pins. It must be the problem.
2024-09-25 10:09 AM
@Wadeva wrote:Hello everyone, after reviewing our design, I discovered an unprotected pin that is connected to the chassis ground of the device. I’ll need to check if there are any other similar pins. It must be the problem.
In this case, you better provide more information. In special the (important parts of the) schematic. A new thread is a good idea - with linking here to it.