Have you ever wondered how the radio that you turn on every morning to listen to on your way to work works? I know I have.
In this project I was tasked with the challenge of navigating industry-level complex specifications while adhering to and overcoming the obstacles that come with programming a real-time implementation of a computing system that operates in a form factor-constrained environment.
Using front-end radio-frequency hardware based on the Realtek RTL2832U chipset along with the Raspberry Pi 4 MCU I was able to implement an SDR (software-defined radio) system that receives real-time frequency-modulated mono/stereo audio. The system could also be leveraged in order to allow the reception of digital data sent through the FM broadcast utilizing the radio data system protocol.
A brief description of how the system is designed to work is as follows:
This system was programmed and built in C. Multithreading was used in order to optimize the system's performance.
Working on this project was a real eye opener on how complex real-time computing systems are. Each moving part of the system heavily relies on other parts and so ensuring that each modular component work as intended is vital to achieve what the system is supposed to do.
Ensuring time constraints and requirements were met was also a challenge; after completing the coding phase of the system I had to go back and further optimize and refactor the code in order to speed up its performance. This also allowed me to truly understand and appreciate the processing power and speed of coding a system in an environment such as C.
Have you ever wondered how the radio that you turn on every morning to listen to on your way to work works? I know I have.
In this project I was tasked with the challenge of navigating industry-level complex specifications while adhering to and overcoming the obstacles that come with programming a real-time implementation of a computing system that operates in a form factor-constrained environment.
Using front-end radio-frequency hardware based on the Realtek RTL2832U chipset along with the Raspberry Pi 4 MCU I was able to implement an SDR (software-defined radio) system that receives real-time frequency-modulated mono/stereo audio. The system could also be leveraged in order to allow the reception of digital data sent through the FM broadcast utilizing the radio data system protocol.
A brief description of how the system is designed to work is as follows:
This system was programmed and built in C. Multithreading was used in order to optimize the system's performance.
Working on this project was a real eye opener on how complex real-time computing systems are. Each moving part of the system heavily relies on other parts and so ensuring that each modular component work as intended is vital to achieve what the system is supposed to do.
Ensuring time constraints and requirements were met was also a challenge; after completing the coding phase of the system I had to go back and further optimize and refactor the code in order to speed up its performance. This also allowed me to truly understand and appreciate the processing power and speed of coding a system in an environment such as C.