User talk:Duggabe: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
No edit summary
 
(26 intermediate revisions by 3 users not shown)
Line 1: Line 1:
=Tech writing presentation=
= Notes on revision / update of UHD and GNU Radio install docs =


<!-- Tech_writing_presentation.mediawiki -->
== Documents affected ==


==Preparation==
* [[LinuxInstall#From_Source]]
* GNU Radio Main Page
    https://wiki.gnuradio.org/index.php/Main_Page
* A Newbie's Guide to the GNU Radio Universe
    https://www.youtube.com/watch?v=uxAW-WzuNy0


==Background==
* AN-445 https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux
* Amateur radio operator since 1953
* Electrical Engineering degree 1961
* Computer programmer since 1962
* Retired 2003
* Started working on GNU Radio 2019


==What is GNU Radio==
* [[Draft-AN-445]] (GNU Radio version)
GNU Radio is a free and open-source software development toolkit that provides Digital Signal Processing blocks to implement Software Defined Radios. It is an entirely volunteer organization with contributors from all over the world.


==Why did I get involved?==
== Reference information ==
I discovered GNU Radio when reading an amateur radio manual. I thought it was a fascinating concept to use software instead of hardware to create a radio. After all, I am a career computer programmer and a life-long amateur radio operator, so combining the two was an appealing idea. After reading the "discuss-gnuradio" mailing list for a while, I noticed a recurring topic of "GNU Radio documentation is terrible". Trying to use it, I had to agree, and decided to do something about it.


==Learn by Doing==
* https://wiki.gnuradio.org/index.php?title=Talk:Draft-AN-445#Proposal_for_section_%22Installing_the_latest_UHD_toolchain_and_GNU_Radio_on_Ubuntu%22
* When I got involved, the switch to using a Wiki was new. Many of the blocks were just skeletons with no real content. For example, https://wiki.gnuradio.org/index.php?title=Cvsd_encoder is yet to be documented after more than four years. There are more that 480 blocks, so it's a very daunting task to do them all.
** I had to learn to use [https://www.mediawiki.org/wiki/MediaWiki MediaWiki].
** I had to learn what a block did before I could write about it!
** After the first year of working on them, I had done over 150 blocks and written or updated about 10 tutorials.
 
==Help others to Learn==
I have found that the best way to learn about a technical subject is to study a turorial about it. However, there were very few tutorials, and the ones which existed were out of date because of newer software releases of GNU Radio.
 
==Adopting a Style==
It was rather surprising to me that there was no formal guidance for the style of the Block Docs or for tutorials. As I started working on the Block Docs, I derived a skeleton format which covered all of the items I found in various blocks. That gave a consistent layout from one block to the next. I also got some guidance from my mentor at GNU Radio based on unwritten expectations of how a block should be documented. It's interesting to note that in a volunteer organization such as GNU Radio, tradition and unwritten rules are as common as formal guidelines.
 
For the Tutorials, there was much more latitude to create and use my own style. My basic approach was to write for a beginner with only the Prerequisites as a background. Other than that, I used an "Assume nothing" approach.
 
==Some examples==
One of my more popular tutorials is https://wiki.gnuradio.org/index.php?title=Simulation_example:_FSK Along with that, I wrote the Block Doc for the https://wiki.gnuradio.org/index.php?title=VCO which is the key block in generating the FSK signal.
 
In doing my work on the documentation, I wanted to make sure that what I wrote actually worked. So for each of my blocks and example flowgraphs, I created and tested them before I published them. For several of them, I created a complete working system using SDR hardware to operate with an amateur radio station. For example, https://github.com/duggabe/gr-RTTY-basics implements an amateur radioteletype station.

Latest revision as of 01:42, 27 June 2024