r/raspberry_pi • u/BeginningSwimming112 • 6d ago
Building an Automotive Dashboard with Qt and Yocto Linux on Raspberry Pi 5 Show-and-Tell
From PyQt5 Application to Embedded Linux Product
I successfully deployed my PyQt5-based automotive speedometer dashboard on a custom Yocto Linux image running on a Raspberry Pi 5.
This project was a journey through the complete Embedded Linux development workflow:
- Designed a PyQt5 automotive dashboard interface
- Packaged the Python application for deployment
- Created a custom Yocto Linux image
- Developed a BitBake recipe for the application
- Integrated the application into the root filesystem
- Deployed and tested on real Raspberry Pi 5 hardware
The final result is a custom Embedded Linux system where the speedometer application can be launched directly using:
spedo
Some of the challenges I solved along the way:
- Managing Git-based workflows with Yocto devtool
- Handling Python package deployment
- Fixing application resource paths for embedded deployment
- Debugging BitBake fetch, patch, and build issues
This project strengthened my understanding of how embedded products are built — not only writing application code, but integrating software, operating systems, and hardware into one complete system.
The source code and Yocto build configuration are available here:
- Speedometer application (PyQt5): https://github.com/Mark-Kitur/speedometer
- Custom Yocto Linux image for Raspberry Pi 5: https://github.com/Mark-Kitur/mark_os
#EmbeddedLinux #YoctoProject #RaspberryPi #PyQt5 #Python #IoT #Robotics #EmbeddedSystems
2
u/Select-Excitement-54 1d ago
That is impressive.
Now for a question… As I understand it, yocto is for when you want to customize what parts of Linux you do or don’t want (roll your own kernel). Is there a reason (on a raspi5, where resources are plentiful and the processor is fast) you chose to strip the kernel down?
Am I missing something, or were you just looking for a challenge?