Design and Implementation of a Risc-V Based LoRa Module - Njoroge, Mark (Department of Electrical Engineering, 2024)
The proliferation of the Internet of Things(IoT) in both scale and complexity, alongside advances in optimised edge and fog system architectures, is driving an increasing need for low power end nodes with greater computational capabilities. These distributed higher capacity nodes allow IoT infrastructures to minimise the power cost of data movement and increase real time response through increased edge data analytics. This dissertation presents the design of a prototype softcore RISC-V based LoRa end node Printed Circuit Board (PCB) design. By combining the reconfigurability and optimisation potential of a FPGA and RISC-V based architecture with a LoRa interface, the design contributes a novel option for use in solutions to the above. The design utilises the open source python framework LiteX to generate an open, low cost and flexible System on a Chip (SoC) that contains the necessary core and peripherals to facilitate integration with a LoRa transceiver. The SoC is implemented on an ultra low power FPGA (Lattice iCE40UP5k), providing access to both reconfigurable logic and a CPU for data analytics, and standard interfaces for 3rd party sensors, such UART, I2C and SPI. The whole design is integrated on a custom PCB in a USB dongle form factor. The resulting prototype can therefore be used as a peripheral for existing systems that may require additional compute power and IoT connectivity. The performance of the prototype is evaluated in various applicable outdoor and indoor scenarios and is observed to have comparative results with industry standard modules.