cancel
Showing results for 
Search instead for 
Did you mean: 

STM32L562E-DK current up to 150mA?

Diego B.
Associate II

I'm trying to measure an IoT device current consumption with the devKit STM32L562E-DK. It claims to measure currents from 300 nA to 150 mA but I'm unable to measure any current beyond 50mA. To run the tests I'm using STM32CubeMonitor-Power and the board works fine with low currents but it stops as soon as the Tx (LoRa) starts.

[https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-discovery-kits/stm32l562e-dk.html]

Am I missing anything?

Kind regards,

Diego

1 ACCEPTED SOLUTION

Accepted Solutions
ChristopheB
ST Employee

Hi Diego,

Behavior you are describing looks very strange to me and especially regarding the workaround (removing R155 and connecting R154 with 10k ) that solves your issue.

In the STM32L562E-DK, there are both:

  • hardware overcurrent protection (PM_IBREAKER) that controls the output power switch (T6). This signal is filtered by a low pass 1uF/150R to skip overcurrent glitch. This circuitry behaves as hIccup protection...
  • software overcurrent protection (PM_IBREAKED) that goes to microcontroller IO to generate interrupt in case of overcurrent (without filter)

Your workaround (removing R155) disables the software overcurrent detection; but does not disable the hardware overcurrent protection.

I suspect there is a very short overcurrent in your application when you enable the Tx (LoRa).

Could you please make a new measurement with STM32CubeMonitor-Power:

  • set the sampling frequency to max
  • Start acquisition (to infinite)
  • enable your application
  • Starts Tx (LoRa)
  • Stop acquisition then zoom in where Tx started to find peak current (alternatively, you can use "Show Report" on top right to enable frame that shows "Max" current measured during the acquisition)

Please provide Max current and make a screen shot of the curve when this max current occured (and past the screenshot to this post)

By the way, if the current exceed 166mA, it is normal that STM32L562E-DK detects an overcurrent.

View solution in original post

3 REPLIES 3
Diego B.
Associate II

I managed to run the measurement removing R155 and populating R154 (10K).

This way the microcontroller doesn't know if the protection circuit is enabled and carry on measuring all the time.

0693W000004K1jDQAS.png 

https://www.st.com/content/ccc/resource/technical/layouts_and_diagrams/schematic_pack/group1/82/4d/d8/7c/d8/77/47/13/MB1280-3V3-C01_Schematic/files/MB1280-3V3-C01_Schematic.PDF/jcr:content/translations/en.MB1280-3V3-C01_Schematic.PDF

ChristopheB
ST Employee

Hi Diego,

Behavior you are describing looks very strange to me and especially regarding the workaround (removing R155 and connecting R154 with 10k ) that solves your issue.

In the STM32L562E-DK, there are both:

  • hardware overcurrent protection (PM_IBREAKER) that controls the output power switch (T6). This signal is filtered by a low pass 1uF/150R to skip overcurrent glitch. This circuitry behaves as hIccup protection...
  • software overcurrent protection (PM_IBREAKED) that goes to microcontroller IO to generate interrupt in case of overcurrent (without filter)

Your workaround (removing R155) disables the software overcurrent detection; but does not disable the hardware overcurrent protection.

I suspect there is a very short overcurrent in your application when you enable the Tx (LoRa).

Could you please make a new measurement with STM32CubeMonitor-Power:

  • set the sampling frequency to max
  • Start acquisition (to infinite)
  • enable your application
  • Starts Tx (LoRa)
  • Stop acquisition then zoom in where Tx started to find peak current (alternatively, you can use "Show Report" on top right to enable frame that shows "Max" current measured during the acquisition)

Please provide Max current and make a screen shot of the curve when this max current occured (and past the screenshot to this post)

By the way, if the current exceed 166mA, it is normal that STM32L562E-DK detects an overcurrent.

This very-limited maximum for dynamic measurement - and, in particular, the way over-limit is handled - makes the X-NUCLEO-LPM01A PowerShield useless in many STM32 applications - see:

https://community.st.com/s/question/0D53W00000kvhhCSAQ/xnucleolpm01a-powershield-dynamic-current-range-too-limited

:unamused_face: