## 5 Testing Environment and Configuration  
### Testing Platform  
The test bed used in this experiment focuses on measuring the energy consumption of an NB-IoT module. The architecture is depicted in Figure 7. The modem is a HL7802 from Sierra Wireless designed for M2M and Internet of Things (IoT) markets, supporting multi-radio access technologies (RATs): Cat-M1/NB-IoT/2G, mounted on a development board. An Oti Arc Pro box from Qoitech [43] powers the modem and measures its energy consumption. A software-based cellular IoT network (LTE-M or NB-IoT) with a complete LTE stack is deployed in a laboratory environment. We use Amarisoft LTE software with a Universal Software Radio Peripheral (USRP) from Ettus. The eNB radio hardware is a USRP B205 mini from Ettus Research. The module communicates with the base station through a channel emulator that allows the channel attenuation to be controlled and propagation artifacts to be added. We use the Vertex channel emulator from Spirent. The modem is directly connected to the channel emulator using cables, and the same applies between the channel emulator and the eNB. As a result, the radio environment is controlled. The core network is connected to the Internet in order to reach application servers, thus enabling the test of real-life end-to-end applications. The IP Core, developed by Acklio, hosts the compression/decompression of the application packets in SCHC messages transmitted from/to the end device, running the Acklio SCHC-compatible firmware. The entire platform is automated using custom-developed tools. This test bed offers a major advantage over field tests. Indeed, the channel emulator is a huge asset as it allows for a certain degree of repeatability. The channel emulator's output power is attenuated in both the uplink and downlink directions to reproduce the radio conditions of a device far from a base station or in a difficult environment (indoor). We consider five different radio configurations, which are described in Table 4. The aim is to see the energy consumption for perfect coverage when the UE transmits using minimum power (0 dBm), then when coverage degrades slightly and the UE transmits at full power (23 dBm). When the radio conditions deteriorate even further, a coverage extension is triggered. This is based on the use of repetitions, configured here between 32 and 128 depending on the link budget and on the physical channel (different numbers for UL and DL, as well as for NPRACH). Note that the repetition values given in the table should be interpreted as coarse values as too many columns would be needed to describe the detailed configuration of the repetitions. Figure 7: Testing platform architecture. As an example of a test run, Figure 8 shows the impact of radio condition deterioration on the behavior of the device with respect to the transmission power and time. For each of the the two graphs, the \(y\)-axis represents the current and the \(x\)-axis represents the evolution of time. The upper graph shows the energy consumption of the device when transmitting and receiving a message (the uplink triggering a downlink) of 200 bytes (under an \"NIDD transport with SCHC\" scenario) with the best radio conditions (i.e., 0), whereas the bottom one shows the exact same scenario in the worst radio conditions (i.e., 4). Note that the scales of the two plots are drastically different. For a better appreciation, we have superimposed on the second plot an orange rectangle representing the boundaries of the first plot; this highlights the huge increase in both energy and transmission time. Indeed, in the case of radio condition 0, the exchange requires 0.93 s with a maximum current of 190 mA. The same scenario requires 27.5 s in the case of radio condition 4. In addition, the maximum current increases from 190 mA to 537 mA. Overall, the case of radio condition 4 requires 50 times the energy of radio condition 0 (2830 uWh vs. 52.6 uWh).