Cleaning and Formatting

FM Receiver App – Week 8 Update

Due to the recent fire in the Egypt telecommunication building, I was unable to work last week; however, this week I made progress in:

  1. Formatting code using pylint, isort, and mkdocs
  2. Adding audio visualization in the debug view

Code Formatting

There is not much to say regarding this part. I just added pylint to the project and spent most of the time trying to clean my code.

New Features

  1. Audio visualization in debug view

  2. Added RDS panel to debug view

Problems

This week’s problems are the same as last week’s—the import issue that GRC creates when generating the .py file. A new issue I ran into is that I can’t use the same widget twice for different views, so I either need to create two widgets or find a way to move them around when the user switches pages.

Another important problem I noticed is how my scanner detects stations. It normalizes the input to detect candidate frequencies with higher power than the surrounding ones. While this approach seems reasonable, what if there are no stations? In that case, it will amplify the noise and try to detect stations that aren’t actually there. To fix this, it’s better to set a threshold before normalizing or use a statistical test to determine whether the SDR scan is just white noise or if there is an actual station present.

What’s Next?

For next week, I’m planning to:

  • Add record feature
  • Add stereo and mono to debug view
  • Work on Config Manager to load config during startup
  • Add: next/prev station buttons, volume slider, frequency slider to debug view
  • Might change UI to have controls always available

Links




Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • End of My GSoC journey
  • Documentation and Soapy Sdr source
  • Multiple Recording Feature
  • SDR Device and Code Documenting
  • Record Feature