RDS decoder library internals

All library components are written in pure ANSI-C, making the product suitable for any CPU platform which has a good C compiler available.

The C code can easily be configured by using a variety of pre-defined symbols. Functions not required for a specific application can simply be deactivated to conserve RAM and ROM.
Code design particularly focused ruggedness, low CPU load and low RAM consumption.
See also the PDF description.


The group decoder supplies more than 60 comfortable API functions to access all types of useful RDS data: Programme service name, RadioTexts, alternative frequency lists, ODA (open data applications), TDC (transparent data channels), EON (enhanced information on other networks) and much more. 

The baseband decoder performs bitstream synchronization, error detection and error correction. It employs a fast and robust sync strategy. The baseband decoder allows to access RDS data blockwise, even during the synchronization phase. Hence optimal exploitation of the incoming information is ensured. This, together with the fast synchronization strategy, allows you to equip your RDS product with highspeed bandscan features. 


Two independent channels supported

The RDS decoder library supports decoding two independent RDS channels. This makes the product suitable  for dual-tuner concepts, such as having a primary tuner for audio and a secondary tuner for TMC or bandscan. By the source code's means of customization, both low-end and high-end applications can be handled using the same code.


Of course the RDS decoder library is fully compatible with both EN 50067 and with the U.S. RBDS standard. Therefore, implementing the library makes your product suitable for all markets, including the U.S., without any changes.

The decoder code was tested with RDS signals from all over the world.

[ Want to try the library? ]