cancel
Showing results for 
Search instead for 
Did you mean: 

How energy flows in STEVAL-HARVEST1

SaiVenkat
Associate II

Are there any more resources to understand how to use STEVAL-HARVEST1, how does the energy flow from super capacitors to the MCU and also the back up capacitors. I feel few things are missing the schematic and the user guide. I want to first implement a small UART program with energy harvesting. Can anyone guide through steps in achieving it.image.png

 

How to connect this to board, does it mean I need to add any external wire from harvester solar panel and short it here?

I have read 
https://www.st.com/resource/en/user_manual/um3539-getting-started-with-stevalharvest1-energy-harvesting-board-for-nucleowl55-stmicroelectronics.pdf
https://www.st.com/resource/en/schematic_pack/steval-harvest1-schematic.pdf
https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=11369460

Thanks in advance.

13 REPLIES 13
Andrew Neil
Super User

Image5.png

https://www.st.com/resource/en/user_manual/um3539-getting-started-with-stevalharvest1-energy-harvesting-board-for-nucleowl55-stmicroelectronics.pdf#page=11

via: https://www.st.com/en/evaluation-tools/steval-harvest1.html#documentation

 

The STEVAL-HARVEST1 User Manual describes how to connect the shield to the Nucleo board - which is how the energy gets to the MCU.

You'll also need to look at the NUCLEO-WL55JC1 board schematic & User Manual:

https://www.st.com/en/evaluation-tools/nucleo-wl55jc.html

 

You'll need to look at the STM32WL Datasheet and/or Reference Manual to uderstand how this "PVD feature" works:

https://www.st.com/en/microcontrollers-microprocessors/stm32wl55jc.html#documentation

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
SaiVenkat
Associate II

Thank you for the response. I reviewed the materials you pointed to and wrote a small test program to toggle a GPIO in order to observe the harvesting behavior. However, I still do not fully understand how the system is intended to be configured in harvesting mode.

SaiVenkat_1-1774526908169.png

 

From the referenced image, my interpretation is that the positive terminal of the energy harvester should be connected to VDD_MCU. What is not clear to me is what exactly is meant by the “positive terminal” in this context.

After examining the schematics of both the harvester board and the WL55 Nucleo board, I assumed that, in order to charge the tantalum capacitors (C2, C4) on the harvester, the solar panel output should be routed to the E5V pin. My understanding is that the ~5V from the solar panel is then regulated down to 3.3V by the onboard LDO, supplying both the MCU and the storage capacitors when the harvester is connected.

To implement this, I connected C7 pin 2 to pin 6, effectively routing the solar panel output to the E5V rail.

With this setup, I observed that the voltage across the harvester capacitors (C2, C4) does increase, but very slowly. The maximum voltage I observed was around 2V, after which it quickly drops to approximately 1.7V.

My questions are:

  1. Is connecting (or effectively shorting) the solar panel output to the E5V pin the correct approach, given that this step is not explicitly described in the documentation?
  2. If this approach is correct, what kind of charging time should I expect before the system can reliably execute a simple task like a blinking LED?
  3. If this approach is not correct, what is the proper method to charge the capacitors C2 and C4?
  4. I understand that the supercapacitor C1 is charged via a GPIO, but I am unclear on how the stored energy from C1 is then used to power the system.

Any clarification on the intended power flow and correct hardware setup would be very helpful.

Thanks in advance.




SaiVenkat
Associate II

Few days back I have posted a question related on how the power flows in seteval-harvest1. How to implement a basic example. I have explained elaborately in my pervious post linked below. Can any one please help me figuring out what is happening. From few days its roaming in my mind.

https://community.st.com/t5/power-management/how-energy-flows-in-steval-harvest1/m-p/888179#M15090

Thanks in advance. 

Peter BENSCH
ST Employee

@SaiVenkat 

The intended harvesting setup is not to connect the solar panel directly to E5V.

In energy harvesting mode, the solar cell charges the storage capacitors on STEVAL-HARVEST1 through the board’s harvesting path, and the MCU is then powered from the stored energy when the voltage reaches the PVD threshold. The “positive terminal” simply means the positive supply node of the harvested energy path, not the raw solar panel output routed to E5V.

So, in short:

  • Do not use the solar panel as a direct E5V input for harvesting mode
  • Follow the jumper configuration shown in UM3539 Figures 9...11
  • Open SB32 for harvesting mode
  • Program the board first in continuous mode, then switch to harvesting mode

The slow rise to about 2V and then collapse to 1.7V usually indicates that the available harvested energy is still insufficient, or that the board is not configured in the intended harvesting power path.

A practical bring-up for a first UART test would be:

  1. Start in Continuous Mode and program the board via USB
  2. Use a minimal firmware: initialise UART, send one short message, then enter STOP mode immediately
  3. Verify that the UART output works in stable power mode first
  4. Then change the board to Energy Harvesting Mode as described in UM3539: set the jumpers as shown in Figures 9...11 and open SB32
  5. Expose the solar cell to light and monitor the storage capacitor voltage
  6. Confirm the expected sequence: charging -> MCU wake-up via PVD -> UART message -> STOP mode -> recharge

For the first test, avoid long logging, blinking LEDs, or sensor reads, as the harvested energy margin is usually very small.

Hope that helps?

Regards
/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Thank you for your response Peter, 

I have wrote a small code for testing which makes the MCU wake using PVD then print a "Hello" message on UART1 and goes to stop mode.

  pwr.PVDLevel = PWR_PVDLEVEL_6;
  pwr.Mode = PWR_PVD_MODE_NORMAL;
  HAL_PWR_ConfigPVD(&pwr);
  HAL_PWR_EnablePVD();
  HAL_UART_Transmit(&huart1, (uint8_t *)"Hello", 5, 100);
  HAL_SuspendTick();
  HAL_PWREx_EnterSTOP2Mode(PWR_SLEEPENTRY_WFI);

It is working perfectly fine in Continuous mode through USB power, but this is not working in Energy harvesting mode.

These are the connections that I have made

SaiVenkat_0-1777270998184.pngSaiVenkat_1-1777271037415.pngSaiVenkat_3-1777271465330.png

 

One thing I never understood is how does the power flows from the solar panel to the nucleo as VPV pin is connected to nothing. Do I need to short it to anything like VPV and VDD needed to connected or something. I think it should not be done as according to the datasheet max the pin can take is only 3.6V

SaiVenkat_4-1777271538164.png

 

 

SaiVenkat_2-1777271160465.png

And my other doubt is according to figure 11 from um3539, does JP9 and JP1 needed to be shorted? I think both are already shorted on the board, as per my understanding there is nothing to do with figure 11 correct me if I am wrong.

Thanks in advance
Sai Venkat

 


@SaiVenkat wrote:

It is working perfectly fine in Continuous mode through USB power, but this is not working in Energy harvesting mode.


USB power is, of course, the easy case.

It's when you're actually using harvested power that things get more tricky - you have to be sure that enough energy has been harvested to successfully start the MCU, run the code, and then shut down again.

 

What testing have you done to see how much energy the harvester is actually harvesting?

Or what power the MCU is actually receiving - eg, an oscilloscope on its supply pin?

Have you measured how much energy your code actually takes to run - eg, using something like STLINK-V3PWR or X-NUCLEO-LPM01A ?

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
SaiVenkat
Associate II

Or what power the MCU is actually receiving - eg, an oscilloscope on its supply pin?

I’m trying to understand how the C2 and C3 is actually being charged on the STEVAL-HARVEST1 energy harvesting board.

From the schematic, VPV (harvester input) doesn’t seem to have a clear path to VDD. Because of that, I’m not able to see how power is supposed to reach the MCU under normal operation.

While debugging, I probed near the VDD pin and observed that the voltage only rises when I manually short VPV to VDD. This makes it look like there’s no active or defined power path between VPV and the MCU supply.

Based on my understanding:

  • C2 and C3 should be charged from VPV
  • Once they reach a certain threshold, the MCU should power up
  • PVD should then handle wake-up behavior

However, I’m not able to identify:

  1. A clear charging path from VPV to C2/C3
  2. A controlled path from those capacitors to VDD

So currently, it’s unclear how energy flows from VPV → storage → MCU without externally shorting nodes.

Am I missing a power management stage or switching mechanism in this design?

Thanks in advance.

 
 
 

Did you follow the instructions given by @Peter BENSCH in his last post  ?

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

Yes I did it and shared what exactly I did in the reply.