Git Product home page Git Product logo

pico_rda5807's Introduction

RDA5807 FM radio library for the Raspberry Pi Pico

This library provides a convenient interface to the RDA5807 FM radio chip from RDA Microelectronics. It targets the Raspberry Pi Pico and similar RP2040 based boards using the C/C++ SDK.

RDA5807M_400px

Overview

Main controls:

  • FM band (87-108 / 76-91 / 50-76 MHz)
  • channel spacing and de-emphasis
  • seek sensitivity
  • volume
  • softmute (mutes noisy frequencies)
  • mono / stereo output
  • bass-boost

Features:

  • tune / seek the next station without blocking the CPU
  • monitor signal strength and stereo signal
  • RDS - decode station name, radio-text, and alternative frequencies

Example

A test program is included. To interact with it, establish a serial connection through USB or UART.

RDA5807 - test program
======================
- =   Volume down / up
1-9   Station presets
{ }   Frequency down / up
[ ]   Seek down / up
<     Reduce seek threshold
>     Increase seek threshold
0     Toggle mute
f     Toggle softmute
m     Toggle mono
b     Toggle bass boost
i     Print station info
r     Print RDS info
x     Power down

Building

Follow the instructions in Getting started with Raspberry Pi Pico to setup your build environment. Then:

  • clone repo
  • mkdir build, cd build, cmake ../, make
  • copy fm_example.uf2 to Raspberry Pico

Wiring

Communication is done through I2C. The default pins are:

RDA5807 pin Raspberry Pi Pico pin
SDA GP4
SCL GP5

When powering the FM chip straight from Pico 3v3 OUT there is a fair amount of noise, so a separate power supply is recommended.

Links

pico_si470x is a similar library for the Si4702 / Si4703 FM radio chips.

Authors

Valentin Milea [email protected]

pico_rda5807's People

Contributors

vmilea avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.