RedPitaya has Qt GUI window
Posted: Sun Apr 15, 2018 5:50 pm
Succeeded to make HDMI video TX FPGA logic and LX device drivers on RedPitaya to have Qt GUI applications that runs directly on RedPitaya.
Generated HDMI video is SXGA (1280x1024@60fps, 24bit color, Pixel Clock 108MHz) resolution.
In attached picture the FPGA logic coloured with yellow is the one that implements HDMI TX (DMA video data from DDR, HDMI video stream, video timing and HDMI output signal generate logic).
All other logic (in blue) is some my adc data acquisition and processing logic.
With this support I have possibility to write stand alone (no network connection need) GUI applications to output video results directly to connected HDMI monitor.
I used Qt and Qwt for GUI framework, LX is 4.6 kernel version and video is handled by LX DRM driver.
On pictures you can also see the small HW board that I have to made to buffer HDMI output signals and drive them to HDMI TX connector.
From signal quality point of view (wire length and impedance) the board is far from perfect, but I need to make something quickly for proof of the concept.
I will now draw and make made a proper PCB board.
It would be also possible to add X driver to attach to DRM driver and than have complete X Window system on RedPitaya.
For my purposes the Qt GUI is far enough for my requirements (e.g. I don't need X terminal window) and also RedPitaya resources (amount of DDR memory and bandwidth) are limited.
On attached pictures are standard Qt and Qwt examples (framebuffer, cpuplot and sysinfo) that I cross compiled and than executed on RedPitaya to proof that it works.
Now I can start to write my own RedPitaya Qt GUI application.
Generated HDMI video is SXGA (1280x1024@60fps, 24bit color, Pixel Clock 108MHz) resolution.
In attached picture the FPGA logic coloured with yellow is the one that implements HDMI TX (DMA video data from DDR, HDMI video stream, video timing and HDMI output signal generate logic).
All other logic (in blue) is some my adc data acquisition and processing logic.
With this support I have possibility to write stand alone (no network connection need) GUI applications to output video results directly to connected HDMI monitor.
I used Qt and Qwt for GUI framework, LX is 4.6 kernel version and video is handled by LX DRM driver.
On pictures you can also see the small HW board that I have to made to buffer HDMI output signals and drive them to HDMI TX connector.
From signal quality point of view (wire length and impedance) the board is far from perfect, but I need to make something quickly for proof of the concept.
I will now draw and make made a proper PCB board.
It would be also possible to add X driver to attach to DRM driver and than have complete X Window system on RedPitaya.
For my purposes the Qt GUI is far enough for my requirements (e.g. I don't need X terminal window) and also RedPitaya resources (amount of DDR memory and bandwidth) are limited.
On attached pictures are standard Qt and Qwt examples (framebuffer, cpuplot and sysinfo) that I cross compiled and than executed on RedPitaya to proof that it works.
Now I can start to write my own RedPitaya Qt GUI application.