*4.2.1 Determination of the most energy-efficient SD communication method*

In all above-listed communication methods, the same Arduino sample programs for SD-Card communication were used. The current was measured during read and write operations. Over the elapsed time, the actual discharge was calculated according to the following formula, where *C* is the discharge in coulombs, *A* is the measured current in ampere, and *t* is the elapsed time in seconds.

$$\mathbf{C} = \mathbf{A} \ast \mathbf{t} \tag{2}$$


**Table 5.** *SD-card connection to a DFRobot FireBeetle ESP32 in SD and SPI bus.*

#### *4.2.2 Comparison of different developer boards*

Three frequently used ESP32 developer modules, one ESP32-S2 module, and also non-ESP boards were compared (see **Table 6**). Developer boards without an integrated battery voltage regulator were operated via an external battery voltage regulator (Adafruit Micro-Lipo Charger) and the same LiPo battery.

For a comparison between the developer boards, the current consumption was measured during two different operating states:


## *4.2.3 CPU clock frequency reduction*

To evaluate the impact of reduced CPU clock frequency on power consumption, the system was put into different operating states (see **Table 7**).

Wi-Fi network scan and modem sleep were run on all three developer boards. The effects of different CPU clock frequencies on SD communication speed were run exclusively on the FireBeetle ESP32 as it has the lowest energy consumption among the ESP32 boards with little quiescent current (according to **Table 2**). Hence, it reflects the actual power consumption of the processor best, and the Adafruit Feather S2 has no built-in SD bus interface. The same "SDMMC\_Test" sample program was used as before. For a more accurate current measurement on read and write


#### **Table 6.**

*Development modules' specifications for energy efficiency comparison.*


#### **Table 7.**

*Tested operating states and clock frequencies of different ESP32 boards for energy efficiency comparison.*

operations, a data transfer of 8 MB was set instead of the default 1 MB. The Wi-Fi network scan was only performed up to a minimum clock frequency of 80 MHz as Wi-Fi connectivity is only guaranteed by the ESP32 up to this clock frequency [3].
