Energy harvesting and NFC tag (LTC3108 -> STM32L433 -> M24SR)

The idea behind this work was to test the capabilities of using a near-field communication (NFC) tag to store the information acquired through an analogue input of a microprocessor powered by an energy harvesting source.

The setup includes these components:

  • Peltier cell
  • Energy harvesting system
  • Microprocessor
  • Dynamic NFC/RFID tag IC
  • Temperature sensor

Energy harvesting system

The capabilities of Peltier cells to harvest energy from differences of temperature between its two sides has already been studied in other posts starting with this link, so I will not develop this part of the work here.

The energy harvesting system used in this project is now based on the outstanding Linear Technologies (now part of Analog Devices) Ultralow Voltage Step-Up Converter and Power Manager LTC3108. This device can work with four selectable output voltages: 2.35 V, 3.3 V, 4. V or 5 V to power wireless transmitters or sensors and a low dropout voltage regulator output (VLDO) to power an external microprocessor. According to its datasheet it can start harvesting energy from voltages as low as 20 mV which is precisely indicated for applications that use thermo-electric generator (TEG) such as Peltier cells. The energy is stored in a bank of supercapacitors connected to two outputs of the LTC3108. Two 1 F supercapacitors in series are connected to VOUT and charged when VAUX has reached 2.5 V. Another two 1 F supercapacitors are connected to VSTORE supporting VOUT and preventing an unexpected drop of voltage due to a high power demand by the load. A picture of the setup for this integrated circuit (IC) is:

Continue reading Energy harvesting and NFC tag (LTC3108 -> STM32L433 -> M24SR)

Flashing an off-the-shelf STM32L031 with ST-LINK

This is a continuation of my former post NUCLEO-L031K6 and ST-LINK SWD. What on earth did I do? in which I tried to flash a standalone STM32L031 and found some serious obstacles. Now, I have solved all issues that I found and I have been able to flash the darned MCU. The idea was to use the ST-LINK in a discovery kit with STM32L476VG MCU connected to the STM32L031 with only two pins, SWDIO and SWDCLK in the connector CN4 of the kit. The wiring is straightforward when every is tied and connected correctly. And I am stressing this because you have to be sure that you have connected all pins that have to be connected. In concrete,  pin 5 in the STM32L031 labeled as VDDA, the reference for the analogue inputs, is NOT internally tied to VDD in pins (1 and 17) so it HAS to be connected to power the MCU otherwise it would be pretty dead. With this in mind, you only have to follow the next figures to connect the ST-LINK pins to the STM32L031. First, the power supply at 3.3 V and ground which are taken from the Discovery kit.

Then the connections from CN4 to the MCU. Notice that I decided not to use the Vapp nor the SWO pins since they are not strictly necessary to flash a program.

Finally, the pins I used in the STM32L031 (LQFP32) were:

Continue reading Flashing an off-the-shelf STM32L031 with ST-LINK

NUCLEO-L031K6 and ST-LINK SWD. What on earth did I do?

ST has a nice family of ultralow power microcontrollers (or MCU for short) that can be used in applications with energy harvesting power supplies. My objective was to use one of these MCUs to test the capabilities of an energy harvester based on Peltier cells to power an application to acquire signals from a sensor. I chose an STM32L031K6 MCU because I could easily find a unit with a LQFP32 (low profile quad flat package) easy to solder on a bare breadboard such as:

easily found on ebay. And, most importantly, I had a development board based on the same MCUs available from ST, NUCLEO-L031K6. I could test my program on the NUCLEO board and then flash it in the stand alone chip to know how much power consumption did I have. The power consumption can be estimated in the NUCLEO board but the process is awkward and probably not reliable since there are LED everywhere and currents are drained in unexpected ways.

My problem was how to flash that stand alone STM32L031K6 MCU. I knew from the Arduino side that it is possible to program an MCU via a serial connection with Arduino UNO but it was difficult to find information about how to do it with STM32 products. The main reason is because most people use ST-LINK and do not need anything else. Well, I didn’t have an ST-LINK programming device (also found in ebay) and I wanted to accept the challenge of finding another way with the tools I had. The answer to a question I posted on the mbed discussion forum gave me some clues as how to proceed. There seemed to be an alternative to the serial port and it was to use the SWD (serial wire debugging) port with an external flash device. The ST-LINK uses the SWD to flash the target processor on a nucleo or discovery board and I could use the ST-LINK of any nucleo to flash an off-the-shelf processor as Wim kindly told me. I had a nucleo board! and… I also had a discovery board! mine was a discovery kit with STM32L476VG MCU, so I decided to give it a try.

Continue reading NUCLEO-L031K6 and ST-LINK SWD. What on earth did I do?

Sensor inteligente basado en microprocesador de bajo consumo

Autor: Pérez Prieto, Beatriz
Director: Robles Muñoz, Guillermo
Acceso al documento de la tesis de máster en pdf.


Resumen – En el presente trabajo se analiza la viabilidad de crear un sensor inteligente de bajo consumo. El principal objetivo es la monitorización de parámetros mediante un sistema que no precise de cableado para la transmisión de los datos y de una alimentación de la red. Así, se enviará la información con un dispositivo de comunicación inalámbrica y se alimentará con energía local procedente del ambiente en el que se sitúe el sensor. Para la adquisición y proceso de los datos se emplea el microcontrolador de bajo consumo STM32L432, que permanecerá dormido hasta que reciba la orden de comenzar con la recogida de datos con el fin de reducir el consumo de potencia. En cuanto al envío de los datos, se prueban diversas alternativas de comunicación inalámbrica. Posteriormente, se realiza un análisis sobre la energía que se obtiene de tres fuentes distintas conectadas a un sistema de recolección de energía y se establece cuál es la más adecuada para la aplicación. Este trabajo precisa tomar como base el proyecto Caracterización de células Peltier para la alimentación de sensores inteligentes, que proporciona los resultados de una de las alternativas estudiadas como fuente de suministro.

Document in pdf (Spanish)

Abstract – This document discuss the viability of creating a low power intelligent sensor. The main objective is the monitoring of parameters through a system that does not require wiring for the transmission of data and a power supply of the grid. Therefore, the information will be transmitted with a wireless communication device and will be powered with local power from the environment in which the sensor is located. The low-power microcontroller STM32L432 is used to acquire and process all data, and it which will remain in sleep mode until it is ordered to start capturing data in order to reduce power consumption. As regards the sending of data, different alternatives are tested for wireless communication. Subsequently, an analysis is performed about the energy that is obtained from three different energy sources connected to an energy harvesting system and it is established which is the most suitable for the application. This project requires the use as a basis the work “Characterization of Peltier cells as power supply for intelligent sensors”, which provides results of one of the alternatives studied as a power supply.

Caracterización de células Peltier para la alimentación de sensores inteligentes

Autor: Pérez Prieto, Sandra
Director: Robles Muñoz, Guillermo

Acceso al documento de la tesis de máster en pdf.

Resumen – Los sensores proporcionan información que permite tener un control sobre parámetros del ambiente, del funcionamiento de un dispositivo o de un proceso industrial, y por tanto, permiten detectar si existe alguna situación de peligro sobre la que es necesario actuar. El problema es que a veces se deben situar en zonas inaccesibles y no es posible cambiar la batería de alimentación de manera sencilla. Por este motivo, se ha hecho necesario diseñar sistemas de energy harvesting, que son sistemas autoalimentados con la energía del ambiente y suministran energía al sistema electrónico en el que se encuentra el sensor. Este proyecto se centra en alimentar los sensores mediante diferencias de temperaturas obtenidas del sol o de procesos industriales empleando para ello una célula Peltier. Con el fin de determinar si estas fuentes proporcionan la energía suficiente se va a caracterizar el comportamiento de la célula Peltier y el sistema de energy harvesting en función de la
diferencia de temperaturas. Para confirmar la validez de la fuente se va a tener en cuenta el consumo del microcontrolador STM32L432, en el que estarán conectados los sensores y un módulo de comunicación inalámbrica encargado de transmitir los datos. Estos dispositivos son de bajo consumo ya que la energía recibida del ambiente es pequeña, y su selección y configuración se realiza en un proyecto complementario a este denominado “Sensor inteligente basado en microprocesador de bajo consumo”.

Document in pdf (Spanish)

Abstract – Sensors provide information that allows to have control over parameters of the environment, the operation of a device or an industrial process, and therefore, allow to detect if there is any dangerous situation on which it is necessary to act. The problem is that sometimes they must be located in inaccessible areas and it is not possible to change the battery power easily. For this reason, the design of energy harvesting systems has become necessary. These systems are self-powered with the energy of the environmenta nd supply energy to the electronic system in which the sensor is located. This project focuses on supplying the sensors using the differences in temperatures obtained from the sun or industrial processes using a Peltier cell. In order to determine if this source provides the sufficient energy, the behavior of the Peltier cell and the energy harvesting system will be characterized as a function of temperature difference. To confirm the validity of the source, the consumption of the STM32L432 microcontroller, which is the microcontroller in which the sensors and a wireless communication module will be connected, will be taken into account. This module will transmit the data and all these devices are of low-power because the energy received from the environment is limited and its selection and its configuration are carried out in a project complementary to this called “Smart sensor based on low power microprocessors”.

Characterization of Peltier cells for energy harvesting applications (III)

As demonstrated in the former post, the equivalent voltage source of the cell depends on the temperature difference of the surfaces and takes a value of V_o = 0.0245 \cdot \Delta T and the internal series resistor is R_s = 2.24~\Omega. Therefore, there would be different power outputs considering the resistor load and the temperature difference. The next plot shows the delivered power to a set of loads and four temperature differences \Delta T =[5,~10,~15,~20] degree Celsius. The maximum power given by the cell is delivered to a load that equals the internal resistor, R_s=R_L and takes a value of:

P_{max}=\frac{V_o^2}{4R_L}&s=1 W


If a difference of temperatures of 20 ºC is achieved the voltage at the load would be 245 mV and it would draw a current of 109.4 mA, the maximum power would reach 26.8 mW when connecting a load of 2.24~\Omega. Of course, all these data are hypothetical since the assumptions are in the most optimistic side considering that R_s=R_L. Even under these circumstances a voltage booster would be needed to increase the voltage to a level according to the requirements of the MCU. For instance, the ultralow power STM32L432 ARM Cortex M4 requires at least a power supply of 1.71 V. There are two options to increase the voltage, using voltage multipliers or using DC-DC converters.

Voltage multipliers

These circuits use a combination of diodes and capacitors that allows to duplicate the voltage at the input in every stage. A common setup is the Cockcroft-Walton configuration as the shown in this paper to multiply the voltage obtained from events that create pulses that can reach peaks of 1 V or more. In the case of one or two Peltier cells connected in series, this circuit is out of the question since the Schottky diodes with the lowest forward voltage drop are close to 250 mV so they would consume the voltage provided by the cell or cells.


Voltage boosters

Voltage boosters or DC-DC step-up converters would be the most feasible solution. The working principle is easy. The inductance L is charged closing switch S storing a magnetic field. This field will maintain the current flowing towards load R when S is opened. Since the inductance is giving energy to the load the voltage at L is effectively reversed and added to v_i(t) increasing the voltage at the output, v_o(t). The switching should be done fast to avoid a total magnetic discharge of the coil when S is open and a total depletion of capacitor C when S is closed. The diode D prevents the capacitor from discharging through S.Booster.png

This idea has been implemented in integrated circuits (IC) that scavenge small quantities of energy from the source, in our case the Pletier cell, to drive the switch and are able to increase the voltage at the output upto 3.3 V or 5 V depending on the MCU connected. Some examples of these IC and their behavior under real conditions are shown in the next post.



Characterization of Peltier cells for energy harvesting applications (II)

With the setup described in the last post, the temperature of one of the surfaces of the cells can be controlled with an electrical current, the other surface is cooled passively with a heatsink. The resistors and the two temperature sensors are connected to the same voltage source taking advantage of the wide range of voltages supported by the LM35. The outputs of the LM35 are connected directly to two multimeters to measure the differences of temperature achieved between the two surfaces. Now, the process is easy: the resistors are heated with different currents and the output voltages of the cell and the temperatures are registered. This will solve the voltage source of the equivalent electric circuit of the cell in open circuit or the Thévenin voltage. The results are represented in the next Figure showing a perfect linearity between temperature and voltage.


I_s = [0.49~0.59~0.69~0.79] A
V_s = [12.3~14.6~17.3~20] V

V_o = [62.4~140.5~252.5~414~580~775] mV

T_h = [24.8~30.2~38.4~55.0~66.5~82.7] degree Celsius
T_c = [22.5~24.5~28.0~38.0~42.9~51.0] degree Celsius

Where, I_s and V_s are the current and voltage applied by the power supply to the resistors, respectively; V_o is the output of the cell and T_h and T_c are the temperatures of the hot and cold sides of the cell, respectively. The plot shows that V_o = 0.0245 \cdot \Delta T with the slope in V / ºC.

The next test will determine the equivalent series resistance, R_s, of the cell loading it with a known resistor, R_L = 13.5~\Omega. In this case, the current given by the cell provokes a voltage drop in the internal resistor R_s so the voltage applied to R_L, V_L, is smaller than the open circuit voltage, V_o > V_L.  A new set of measurements is conducted injecting the same current to the heating resistors to determine this voltage and, then, the internal resistance of the cell:

V_L = [51.9~121.1~ 211.7~ 344.1~ 486~ 639] mV

T_h = [27.6~ 33.2~ 40.7~ 53.0~ 65.0~ 79.3] degree Celsius
T_c = [25.5~ 27.7~ 30.7~ 36.7~ 41.9~ 48.6] degree Celsius


The blue plot represents the voltage in open circuit, V_o, and the red plot the voltage at the load, V_L. Dividing this voltage by the load resistor yields the current given by the cell, I_L. Therefore, the internal resistor is calculated applying Ohm’s Law knowing that the voltage drop is V_o - V_L and the current is I_L. This is done for several points along the experimental results in the plot giving a constant value for the resistor, R_s = 2.24~\Omega. The same process is repeated for another cell of the same type and the result for R_s differ from the first cell giving R_s = 4.75~\Omega. Even when the former internal resistor is double the latter one, the results have been re-checked and confirmed and are in agreement to other results found in the literature.

Once the cell has been characterized, it is possible to determine the current that it will give to a known load. The next step is to devise a method to store the energy delivered by the cell or to explore the possibility of boosting the voltage to drive an MCU (microcontroller unit) directly. This will be explained in the next post.

Characterization of Peltier cells for energy harvesting applications (I)

Módulo Peltier, 32.8W, 6A, 8.8VPeltier cells are usually applied to cool surfaces when connected to an electric power supply but they can also convert differences of temperature between their sides into a voltage, known as the Seebeck effect. Therefore, it is possible to have a voltage at the ends of the wires of a Peltier cell by applying heat to one of the sides and attaching a heatsink to the other side. In terms of energy harvesting, the heat should come from a residual source such as an electrical or mechanical machine or, simply, the sun using Fresnel lenses. The cooling of the other side should be passive to minimize the energy consumption, hence the use of a heatsink. It is important to know how much energy can be obtained with a single cell as a function of the difference of temperatures, for this reason, the characterization of the cell must be the first step in the design of applications scavenging energy.

20170324_162157.jpgThe mounting scheme is shown in the side Figure where the heatsink is clearly seen on top of the cell. This is hidden by some pieces of thermal insulating foam but the two wires are visible. Finally, an aluminium plate has been adhered to the cell with a thermal conductive bonding paste.

The aim of this work is to obtain the Thévenin equivalent of an Adaptive ETH-071-14-15 Peltier cell but the process is valid for any other type of cell. The datasheet details the working curves when the cell is used as load but nothing is said about its characteristics when used as a source. The characterization requires the application of a known difference of temperatures, ΔT, and this is achieved injecting current to a pair of ceramic resistors  of 47 Ω in parallel attached to the aluminium plate with silicone.


20170324_161932_001Two LM35 temperature sensors read the temperature of the aluminium plate and the heatsink. Notice that, once the plate and the heatsink are attached to the cell, its sides are no longer reachable so the sensors have to be connected to the closest surfaces to the cell. There will be an uncertainty in the measurements but we can asume that it is negligible or, at least, that it affects the two sensors in the same manner so the difference of temperatures is the same as in the surfaces of the cell. The mounted cell is enclosed in methacrylate box coated with thermal insulating panels ensuring that, once a constant difference of temperatures, ΔT, is achieved, it is maintained along the experiment so the output voltage can be directly related to the selected ΔT.

Next: Measurements.

Energy harvesting from partial discharges

Autor: Molina Sanz, Javier
Director: Robles Muñoz, Guillermo

Bachelor’s thesis in pdf

Abstract – Several manners of extracting energy have become popular in the last years. In particular, energy from magnetic fields captured by inductive principles is one of the most important methods regarding energy harvesting. Obtaining energy from high-power low-frequency signals is currently possible, but the aim of this report goes further. Partial discharge phenomena are revealed outside the insulation as high-frequency pulsing signals produced under high-voltage situations that contributes to the deterioration of the electrical machinery, causing even their failure. It is very important to localize this phenomenon in order to avoid possible futures breakdowns. This project demonstrates how to extract energy from high frequency inductive phenomena. Particularly, the feasibility to harvest energy from partial discharge occurrence is satisfactorily studied. Several energy levels are accumulated in a capacitor depending on the topology implemented. Energy from partial discharges pulses has not been accumulated to date. This report discuss a relation between the voltage across a capacitor and partial discharge events leading to a possible detection system.