## 8 System Implementation Experimental Studies
### Energy Consumption Case Study  
Based on the experimentally determined transmission performance (goodput) and encoding efficiency (time required for encoding) presented in previous subsections, we aimed to compare the designed system with the fixed-rate coded transmission system, as well as a system employing selected 5G coding configurations, in terms of the IoT transmitter energy efficiency. Since the calculations presented in this section are based on several assumptions, they should be treated as assessments of the energy consumption that can be expected in a real implementation. However, the results illustrate well the gains that can be achieved in the rate-adaptive system. We assess the portion of the transmitter energy consumption that depends on the utilized coding system, that is, the sum of consumption by the encoding performed in a microcontroller plus consumption by the transmitter module. In the calculations, we have made the following assumptions:  
1. The encoder is implemented in the STM32L476 microcontroller, with a supply voltage of 3.3 V and an active mode current draw of 10.7 mA. 2. The radio signal power is 25 mW (equal to the uplink limit in LoRa radio), the RF (radio frequency) module power efficiency is 50% and the transmission rate is 12,000 QPSK symbols per second (also comparable to LoRa limits). 3. The RF transmitter is active only during initial message bits and chunk bits transmissions. By adding up the radio transmit energy and the encoding energy, factoring in the average number of chunks for the given SNR, we can determine the overall transmitter energy consumption. In the QC-RL-LDPC system, the energy consumption of the transmitter is dependent on the SNR, because with the change in the number of chunks needed, the total encoding time and the radio signal transmission time are also changing. This is illustrated by the evaluation results in Figures 12 and 13 for our designed codes of information block lengths of \(K=144\) and \(K=256\), respectively, as well as codes taken from 5G standard [17] with BG1 and similar block lengths of \(K=132\) and \(K=264\), respectively. The energy consumption provided is normalized and presented as one energy per one correctly decoded information bit. In contrast, the energy consumption of the fixed-rate encoding is independent of the SNR. In Figures 12 and 13 we also include the energy consumption of the LDPC coding system, calculated with the same assumptions, for the same information block lengths \(K=144\) and \(K=256\), respectively, and the coding rate \(R=0.5\). It can be observed that:  
* In the high-SNR regime (higher than about 2 dB), the normalized energy consumption is lower for the QC-RL-LDPC coding than for LDPC fixed-rate coding. * In the regime just above 0 dB, the LDPC fixed-rate coding is more energy-efficient than QC-RL-LDPC coding. This is the regime for which an LDPC rate-0.5 code would be used under conditions that it was designed for; therefore, its advantage in this regime is as expected. * For SNRs lower than about 1 dB for for \(K=144\) and lower than about 0 dB for \(K=256\), the fixed-rate LDPC code can no longer correct errors with reasonable BER, while QC-RL-LDPC consumes more energy, but can still be used for transmission and correctly decoded. * The developed transmission system, with the same IR redundancy scheme, but utilizing the state-of-the-art 5G codes, has very similar energy efficiency to the developed QC-RL-LDPC codes in the case of \(K=256\) (264) block length (Figure 13), and a little worse energy efficiency in the case of \(K=144\) (132) bits (Figure 12). The justification for this slight difference between the designed QC-RL-LDPC codes and 5G codes is that the code **H**3 has the submatrix size \(P=16\), while the 5G code has \(P=6\), which means that more smaller chunks need to be encoded for a given parity vector size; the efficient QC encoding in a CPU can compute a chunk with similar speed, for different chunk sizes.