Wednesday, March 25, 2026

Re: BokehGUI in GNU Radio 4 (GSOC)

Hi Ziad,

Having a running GR 4.0 with a custom OOT is certainly a good start, well done!

I'm definitely not in the best position to give advice on GR4 code philosophy as I still need to start playing with it before GSoc starts.
But I believe you'll find the best and most up to date info in the gnuradio4 repo itself, including the readmes in the /docs folder, and also the 4.0.0-RC1 tag description which covers a lot of the current state

I mention Bokeh in the project description because it's the dependency we use for the current (GR3) version of the remote monitoring system, so we know it can cover the main use case.
But it is far from perfect so we are open to using an other library providing that same core use case of remote monitoring with plots and interaction with widgets, with the added bonus of not requiring anything installed on the remote computer.
So ImGUI, with its many flavours could be an interesting option with better performance, nice plots... as long as it shows an efficient way for remote operation outside of the local browser.

I hope it helps with some of your questions,

Best

Cyrille MORIN
Ingénieur SED
Équipe MARACAS


Centre Inria de Lyon

Laboratoire CITI
Campus La Doua - Villeurbanne
6 avenue des Arts
F-69621 Villeurbanne

Le 24/03/2026 à 04:40, Ziad Haithem 202201027 a écrit :

Dear GNU Radio Community,

I have decided that my gsoc proposal/project will be on the "BokehGUI in GNU radio 4.0" idea

1. Proof of Concept & Progress

To get comfortable with the GR 4.0 , I've developed a small PoC . It uses a signal generator block into a custom OOT module that publishes data to a socket via ZMQ. A Python script then subscribes to that socket and plots the sine wave in the browser in real-time using Bokeh.

Main goal is to just show i was able to take something generated by GR4 and get it displayed in the browser 

I've also worked through the GR3 beginner and OOT tutorials, and spent time playing with ZMQ/Bokeh to ensure I can handle plotting and the data flow between processes.

2. Seeking Guidance on GR 4.0 

While I'm thrilled I got the PoC running, this is my first time working with a codebase of this scale. My main concern is moving from "making it work" to "making it right." What are some resources that'll help me design and write code that "fits" with the design philosophy behind OOT modules for GR4. I feel like this will be very important for my proposal 

3. Use of bokeh  

I wrote the POC in bokeh and focused on it when experimenting because its what was mentioned in the project description and there are plenty of resources for it. However while researching I found that in European GNU Radio Days in the next generation remote GUI section. "Imgui"  was considered a good candidate to be used for wireless plotting for GNU Radio 4.0. Has the community moved away from this opinion ? is it still present ? Should I write my proposal with only one library in mind or be flexible and have this been decided later on in development ?  

4. Why This Project?

I initially looked for something with a bit more DSP and communications concepts. However this project feels important, and I decided to go with something which would have an impact instead of wasting time thinking of a custom project to propose that had me playing with some of the concepts i was most interested in. 

I am really looking forward to the possibility of contributing to GNU Radio this summer as part of GSOC. Thank you for your time and for any pointers you can provide!

cyberspectrum is best spectrum (I think the code word is for the proposal only but one can never be too safe lol)

Sincerely,

Ziad 
--
Ziad Haithem Fahmy
ID:202201027
 
Communications and Information Engineering Student

Zewail City of Science, Technology and Innovation  

Ahmed Zewail Road, October Gardens, Giza 12578, Egypt

www.zewailcity.edu.eg


0120 205 7175

Whatsapp number - 0109 479 1824



No comments:

Post a Comment