Radio transmissions with HackRF

Today I was transmitting a ‘Wide Band Frequency Modulation’ (WBFM) encoded radio in a carrier wave with Michael Ossmann’s Software Defined Radio (SDR) peripheral, HackRF.

I leave my experience here as breadcrumbs for others who follow in the path of learning Digital Signal Processing (DSP)

GNURadio Companion file:

WBFM Transmit with HackRF & GNURadio: HackRF-FM-Transmit.grc

Streaming audio

Using a named pipe as a way to control the sample rate of our broadcast source (in this case) of a streaming internet radio station.

$ mkfifo stream_32k.fifo

$ mpg123 -r32000 -m -s > stream_32k.fifo

$ mpg123
You made some mistake in program usage... let me briefly remind you:

High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
        version 1.22.4; written and copyright by Michael Hipp and others
        free software (LGPL) without any warranty but with best wishes

usage: mpg123 [option(s)] [file(s) | URL(s) | -]
supported options [defaults in brackets]:
   -v    increase verbosity level       -q    quiet (don't print title)
   -t    testmode (no output)           -s    write to stdout
   -w f  write output as WAV file
   -k n  skip first n frames [0]        -n n  decode only n frames [all]
   -c    check range violations         -y    DISABLE resync on errors
   -b n  output buffer: n Kbytes [0]    -f n  change scalefactor [32768]
   -r n  set/force samplerate [auto]
   -o m  select output module           -a d  set audio device
   -2    downsample 1:2 (22 kHz)        -4    downsample 1:4 (11 kHz)
   -d n  play every n'th frame only     -h n  play every frame n times
   -0    decode channel 0 (left) only   -1    decode channel 1 (right) only
   -m    mix both channels (mono)       -p p  use HTTP proxy p [$HTTP_PROXY]
   -@ f  read filenames/URLs from f
   -z    shuffle play (with wildcards)  -Z    random play
   -u a  HTTP authentication string     -E f  Equalizer, data from file
   -C    enable control keys            --no-gapless  not skip junk/padding in mp3s
   -?    this help                      --version  print name + version
See the manpage mpg123(1) or call mpg123 with --longhelp for more parameters and information.

Transmit (TX): Using GNURadio Companion (GRC)

Recieve (RX): Using GQRX

Current interests: