Skip to content

UI for live weather/traffic/meta data collected from HD Radio stations

License

Notifications You must be signed in to change notification settings

KYDronePilot/hdfm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HDFM - HD Radio GUI

View live data collected from HD Radio stations

App window


GitHub release (latest by SemVer) Language

Features

Uses NRSC-5 with an RTL-SDR dongle to display live data captured from HD Radio stations

Blazing fast, fully native Rust GUI application

GUI is styled like a digital car stereo system, displaying:

  • Traffic map
  • Weather radar
  • Station/artist artwork
  • Other station/song metadata

Requires no internet connection, so it can be used off the grid

Pre-requisites

Installation

macOS

M1:

sudo curl -sSL 'https://github.com/KYDronePilot/hdfm/releases/download/v2.2.0/hdfm-aarch64-apple-darwin.tgz' | sudo tar xzv -C /usr/local/bin

Intel:

sudo curl -sSL 'https://github.com/KYDronePilot/hdfm/releases/download/v2.2.0/hdfm-x86_64-apple-darwin.tgz' | sudo tar xzv -C /usr/local/bin

Windows

Run from an Administrator powershell prompt:

Invoke-WebRequest -Uri "https://github.com/KYDronePilot/hdfm/releases/download/v2.2.0/hdfm-x86_64-pc-windows-msvc.zip" -OutFile "$env:temp\hdfm.zip"
Expand-Archive -Path "$env:temp\hdfm.zip" -DestinationPath C:\Windows

Linux

Note: Requires Vulkan graphics.

x86_64:

sudo curl -sSL 'https://github.com/KYDronePilot/hdfm/releases/download/v2.2.0/hdfm-x86_64-unknown-linux-musl.tgz' | sudo tar xzv -C /usr/local/bin

aarch64:

sudo curl -sSL 'https://github.com/KYDronePilot/hdfm/releases/download/v2.2.0/hdfm-aarch64-unknown-linux-musl.tgz' | sudo tar xzv -C /usr/local/bin

Usage

hdfm-rs 2.2.0

USAGE:
    hdfm [OPTIONS] <frequency> <program>

ARGS:
    <frequency>    Frequency of HD radio station
    <program>      HD radio program to tune (e.g. 1 for HD1, 2 for HD2, etc.) [possible values:
                   1, 2, 3, 4]

OPTIONS:
    -b, --nrsc5-bin <nrsc5_bin>    Path to nrsc5 binary (use if nrsc5 is not in your PATH) [default:
                                   nrsc5]
    -g <gain>                      Gain (automatic gain selection if not specified)
    -h, --help                     Print help information
    -l, --log-level <log_level>    Logging level (1=error, 2=warn, 3=info, 4=debug) [default: 2]
                                   [possible values: 1, 2, 3, 4]
        --layout <layout>          GUI layout (compact, grid) [default: compact] [possible values:
                                   compact, grid]
    -s                             Disable audio output
    -V, --version                  Print version information

Source code access

This project is released as "Pay-source" software. Precompiled binaries are provided under the Releases page for anyone to use.

If you would like to access the source code, please pay a one-time fee of $20 though GitHub Sponsors. You will then be given access to the private repository containing the code. With this access, you have permission to:

  • Fork/clone and make modifications
  • Build and distribute your own binaries
  • Contribute back to the project and official binaries

You will not be permitted to distribute/publish the original and/or modified versions of the source code.

Compatible radio stations

A list of nearby HD Radio stations can be found at: https://hdradio.com/stations

In addition, the station must be operated by iHeartRadio to access weather and traffic data. A list of iHeartRadio-owned stations in the US can be found here: https://en.wikipedia.org/wiki/List_of_radio_stations_owned_by_iHeartMedia

Copyright

Copyright (c) 2022 Michael Galliers. All Rights Reserved.