Repository navigation
RDS RX
Decodes RDS (Radio Data System) data carried alongside the audio of FM broadcast stations and shows the station's identity and text in real time.
This is an external app (.ppma file on the SD card).
RDS is the digital data stream that FM stations broadcast on a subcarrier next to their audio. It carries the station identity, programme type, a traffic flag and scrolling text. The app FM-demodulates the selected station, recovers the RDS subcarrier at 57 kHz, decodes the biphase-coded groups and displays the fields below.
Tune the frequency field to an FM broadcast station (87.5–108 MHz). A strong, clean FM signal is needed for stable decoding.
| Control | Description |
|---|---|
| Frequency | Tune to an FM station (100 kHz steps). |
| RF Amp | RF amplifier: 0 = off, 1 = on (+14 dB). |
| LNA | IF gain (0–40 dB). See Receive Quality Issues. |
| VGA | Baseband gain (0–62 dB). |
| RSSI / Channel | Signal strength and channel power meters. |
| Field | Meaning |
|---|---|
| PI | Programme Identification code (hex) — uniquely identifies the station / network |
| TP | Traffic Programme flag (Yes / No) — station carries traffic announcements |
| PTY | Programme Type as number + name (e.g. News, Pop, Rock, Classics, Weather, Sport) |
| PS | Programme Service name — the 8-character station name, built up from type 0A/0B groups |
| Radio Text | Free-text message from the station (up to 64 characters, type 2A/2B groups), shown on three lines |
Below the fields a diagnostic console prints each received group as its four raw blocks [A B C D] followed by the group type (e.g. G:0A, G:2A). Blocks that failed the error check are shown as ----.
RDS is transmitted on a 57 kHz subcarrier (the third harmonic of the 19 kHz FM stereo pilot), biphase-coded at 1187.5 bit/s and arranged in groups of four blocks, each protected by an error-correcting checkword.
- RDS — transmit RDS data with the RDS TX app
How to collaborate
Contributing Guidelines
Trusted contributors
How to ask questions correctly
- PortaPack Versions (which one to buy)
- Features
- HackRF Versions
-
Description of the hardware
- Enclosure/cases
- Care of PortaPack/HackRF
- Repairs
- Mods
🔧 Troubleshooting
- FAQ
- SolveBoard
- 🔌 Boot & power
- 💾 Firmware & recovery
- 📡 Receive & transmit
- 💳 SD card
- 🔗 USB connectivity
- 🧩 Apps
📥 Receivers
- 2-Tone-RX
- ACARS
- ADS-B
- AFSK
- AIS Boats
- Analog TV
- APRS RX
- Audio
- BLE RX
- Detector
- EPIRB RX
- ERT Meter
- Flex RX
- Fox-Hunt
- FPV-Detect
- FT8 RX
- gfxEQ
- Level
- Meteor
- Morse RX
- NOAA
- NRF
- POCSAG
- ProtoView
- Radio
- Radiosonde
- RDS RX
- RTTY RX
- Scanner
- Search
- Signal Hunter
- Spectrum Analyzer
- SSTV RX
- SubCar
- SubGhzD
- Tetra RX
- Time Sink
- TPMS RX
- VOR RX
- Weather
- WeFax
- WMBus RX
📤 Transmitters
- 2-Tone-TX
- ADS-B(S) TX
- Adult Toys
- APRS TX
- BHT Xy/EP
- BLE TX
- BLESpam
- Burger Pager
- CVS Spam
- EPIRB TX
- Flex TX
- FlipperTX
- GPS Sim
- Hopper
- Jammer
- KeeLoq TX
- Key fob TX
- LGE Tool
- MDC-1200 TX
- Morse TX
- OOK
- OOK Brute
- OOK Editor
- P25 TX
- POCSAG TX
- RDS
- RTTY TX
- SAME TX
- Security+ TX
- Signal gen
- Soundboard
- Spectrum Painter
- SSTV
- TEDI/LCR
- TouchTunes
- TPMS TX
- VOR TX
- 🔄 Transceivers
- 🟡 Recon
- 🔴 Capture
▶️ Replay- 🖲️ Remote
- 🔍 Looking Glass
🛠️ Utilities
↳ 🐛 Debug Menu (in Utilities)
🎮 Games
⚙️ Settings
Compilation of the firmware
- Compile on WSL with ninja
- How to compile on Windows faster with WSL 2
- Compile on macOS (Docker)
- Compile on macOS (Homebrew)
- Using Docker and Kitematic
- Docker command-line reference
- Using Buddyworks and other CI platforms
- Notes for Buddy.Works (and other CI platforms)
- Using ARM on Debian host
- All in one script for ARM on Debian host
- Compile on Kali Linux (Debian-based)
- Compile on Arch based distro (exclude Asahi), or other weird distros
- General compiling guide (Linux, for experts)
- Dev build versions
- Notes About ccache
Software Dev Guides
- Code contribution rules
- Documentation standards & guidelines
- Create a Simple App
- Create a Simple External App
- External Apps informations
- Widgets
- UI positioning with macros
- SD Card (DEV)
- Access Radio Hardware
- Interpret Guru meditation crashes
- Create a Complex App
- Theme-system
- Debug via SWD & JTAG
- Debug with serial
- I2C drivers
- Unit tests
Tools
- Research
- UI Screenshots
-
Maintaining
- Creating a prod/stable release (Maintainers only)
- Maintaining rules
- Development States Notes