Skip to content
/ RdSpi Public
forked from achilikin/RdSpi

Si4703 based RDS scanner for Raspberry Pi

Notifications You must be signed in to change notification settings

FelixOON/RdSpi

 
 

Repository files navigation

RdSpi

Si4703 based RDS scanner for Raspberry Pi using Si4703S-B16 breakout board PL102RT-S V1.5

PL102RT-S V1.5

Installation

Connect PL102RT-S V1.5 breakout to Rpi:

RPi PL102RT-S
SDA SDIO
SCL SCLK
#23 (GP4) RST
GND GND
3.3V Vd

To make communication more stable connect RST pin to a pullup resistor.

If in addition to RDS scanning you want to listen to radio audio then connect whatever amplifier you have to LOUT/ROUT. Adafruit MAX98306 works just fine.

Make RdSpi. It accepts one command at a time:

  • cmd - run in interactive command mode
  • reset - resets and powers up Si4703, dumps register map while resetting
  • power on|down - powers Si4703 up or down
  • dump - dumps Si4703 register
  • spacing kHz - sets 200, 100, or 50 kHz spacing
  • scan (mode) - scans for radio stations, mode can be specified 1-5, see AN230, Table 23. Summary of Seek Settings
  • spectrum - scans full FM band and prints RSSI
  • seek up|down - seeks to the next/prev station
  • tune freq - tunes to specified FM frequency, for example rdspi tune 9500 or rdspi tune 95.00 or rdspi tune 95. to tune to 95.00 MHz
  • rds on|off|verbose - sets RDS mode, on/off for RDSPRF, verbose for RDSM
  • rds [gt G] [time T] [log] - scan for RDS messages. Use to gt specify RDS Group Type to scan for, for example 0 for basic tuning and switching information. Use time to specify timeout T in seconds. T = 0 turns off timeout. Use log to scroll output instead on using one-liners.
  • rds - scan for complete RDS PS and Radiotext messages with default 15 seconds timeout
  • volume 0-30 - set audio volume, 0 to mute
  • set register=value - set specified register

It is better to start with reset :) Note that reset requires sudo to write to reset pin, other commands can be used without sudo.

$sudo rdspi reset
$rdspi tune 95.00
$rdspi volume 10
$rdspi set volext=1
$rdspi dump

To disable output use --silent as the last command line parameter:

$sudo rdspi reset --silent
$rdspi tune 9500  --silent

Screenshots

Links

About

Si4703 based RDS scanner for Raspberry Pi

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 99.4%
  • Makefile 0.6%