P164 RDS Encoder User Manual: Firmware Version 2.2

Download as pdf or txt
Download as pdf or txt
You are on page 1of 64

P164 RDS Encoder

User Manual
Firmware version 2.2

https://www.pira.cz/rds/
2

Table of Contents
1 Introduction ...............................................................................................................................................................................3
1.1 Main Highlights ....................................................................................................................................................................3
1.2 Other Features .......................................................................................................................................................................3
2 Technical Specifications ..........................................................................................................................................................4
2.1 Block Diagram .......................................................................................................................................................................5
3 Physical Description .................................................................................................................................................................6
3.1 Front Panel .............................................................................................................................................................................6
3.2 Rear Panel ..............................................................................................................................................................................6
3.3 Board Layout .........................................................................................................................................................................7
4 Installation and Setting-up .....................................................................................................................................................8
4.1 Connection .............................................................................................................................................................................8
4.2 On-board Controls ................................................................................................................................................................9
4.3 Power Supply ........................................................................................................................................................................9
4.4 Windows Control Software - First Steps ..........................................................................................................................10
4.5 Level and Phase Adjustment .............................................................................................................................................11
4.6 Setting Basic RDS Data .......................................................................................................................................................13
5 RDS Services and Features ....................................................................................................................................................15
5.1 Broadcast Automation System Link-up ...........................................................................................................................15
5.2 Dynamic PS ..........................................................................................................................................................................17
5.3 Alternative Frequencies .....................................................................................................................................................18
5.4 Enhanced Other Networks Information (EON) Setup ...................................................................................................20
5.5 Weekly Scheduling .............................................................................................................................................................21
5.6 RDS2 Subcarrier Configuration .........................................................................................................................................22
6 Communication Ports .............................................................................................................................................................23
6.1 Overview ..............................................................................................................................................................................23
6.2 USB Connection...................................................................................................................................................................23
6.3 Ethernet Connection ...........................................................................................................................................................24
6.4 Port Access Control.............................................................................................................................................................28
6.5 Working with a Terminal Application .............................................................................................................................29
6.6 Command Interpreter.........................................................................................................................................................30
6.7 Additional Information ......................................................................................................................................................31
7 List of Commands ...................................................................................................................................................................33
7.1 Command Summary ..........................................................................................................................................................33
7.2 Basic Commands .................................................................................................................................................................36
7.3 EON Commands .................................................................................................................................................................42
7.4 Messages Commands .........................................................................................................................................................43
7.5 Scheduling Commands ......................................................................................................................................................44
7.6 System Commands .............................................................................................................................................................45
7.7 Ethernet Configuration Commands .................................................................................................................................47
7.8 Advanced Commands ........................................................................................................................................................48
7.9 Memory Organization ........................................................................................................................................................53
7.10 Dynamic PS 1 and Dynamic PS 2 Summary ....................................................................................................................53
8 Further Features.......................................................................................................................................................................54
8.1 Bypass Relay ........................................................................................................................................................................54
8.2 On-board Program Set Switch ...........................................................................................................................................54
8.3 On-board TA/EON1TA Switch ........................................................................................................................................54
8.4 Showing Real Time in Dynamic PS ..................................................................................................................................54
8.5 Real-Time Backup ...............................................................................................................................................................54
8.6 Firmware Upgrade..............................................................................................................................................................54
8.7 RDS Output Monitoring.....................................................................................................................................................55
8.8 On-line Support ...................................................................................................................................................................55
9 Universal Encoder Communication Protocol (UECP).......................................................................................................56
9.1 UECP Implementation .......................................................................................................................................................56
9.2 Traffic Message Channel (TMC) Application Notes ......................................................................................................59
10 Annexes.....................................................................................................................................................................................60
10.1 Character Set and Code-Table Conversions ....................................................................................................................60
10.2 RDS Group Format .............................................................................................................................................................61
10.3 Troubleshooting ..................................................................................................................................................................64
3

1 Introduction
The P164 RDS Encoder is an attractive choice to all radio stations which don't want to burden their budget but still
need a flexible RDS encoder with support of all common data formats and RDS services. Effective design based on
DSP technology ensures high reliability and gives the user many advanced features while maintaining low
acquisition costs. The system is scalable from small local stations to large broadcast networks.
Some features are unique: remote output monitoring down to the bit level, direct conversion of XML tagging data to
Radiotext Plus, port multiplication thru Windows control software and several others. Due to native RDS2 support,
the P164 is future-proof equipment, ready for further enhancements of the FM broadcasting.

1.1 Main Highlights


 Fully dynamic stand-alone FM broadcast RDS encoder with two independent communication ports
 USB connectivity for local settings and maintenance purposes
 Ethernet connectivity for linking with Windows application or broadcast automation system
 Control interface supports all common communication protocols, incl. ASCII and UECP
 Excellent compatibility with broadcast automation systems
 Text features include dynamic PS, parsing, scrolling, tagging, fixed messages and scheduling
 Supports remote output monitoring and station logo *)
 Switchable subcarrier configuration (RDS or RDS2)
 Two product variants available: aluminum-box version and a module for embedding
 Simply to use

*) Note: In the meantime, the station logo is not supported by consumer FM receivers.

1.2 Other Features


 Direct digital RDS signal synthesis; compliant with EN 50067 / EN 62106
 Switchable main program sets (with optional PSN setting)
 Bypass relay, high reliability
 Switchable MPX loopthrough mode (Loop/Side)
 Internal real-time clock incl. backup battery
 Compatible with P132 family

CE conformance notice:
This device complies with the requirements of the EEC Council CE marking and EMC directives.
Harmonized standards applied: EN 55032 (B ITE class), EN 55024, EN 50082-1.

Please read this manual and familiarize yourself with the controls before attempting to use this equipment.

Where not otherwise indicated, any information mentioned in relation to the RDS (Radio Data System) applies in full
also to the RBDS (Radio Broadcast Data System).

The equipment has been thoroughly tested and found to be in proper operating condition when shipped. The
manufacturer is not liable for any damages, including but not limited to, lost profits, lost savings, or other incidental or
consequential damages arising out of the use of this product.
No part of this manual may be reproduced or transmitted in any form or by any means, electronic or mechanical,
including photocopying, recording or information storage and retrieval systems, for any purpose other than the
purchaser's personal use.
Information in this document is subject to change without notice.

If you have any questions or comments regarding this document, please contact us via email.
We welcome your feedback.

Revision 2020-05-17
Copyright © 2020 PlRA DigitaI s.r.o.
4

2 Technical Specifications

Parameter Condition Value

General

Supply voltage 12 V DC stabilized


Supply current 150 mA
Signal connectors unbalanced BNC
Data connectors 1x USB (Port 1), 1x Ethernet (Port 2)
Network protocols supported HTTP, TCP, UDP, DHCP, DNS
USB communication speed software switchable 1200, 2400, 4800, 9600, 19200 bps
1 stop bit, 8 data bits, no parity, (no flow control),
USB communication mode
ASCII or UECP (SPB 490)
TA switching software or onboard input
TA/EON1TA switch input TTL with 10 kΩ pull-up, level or falling edge activated
Main program sets 2
Program set switching ASCII command, UECP command or onboard input
Program switch input TTL with 10 kΩ pull-up, level controlled
PI, PS, PTY, TP, AF, TA, DI, M/S, RT, RT+
RDS Services directly supported
TMC, EON, PTYN, ECC, LIC, TDC, IH, CT, ODA

RDS signal

RDS 57 kHz
Subcarrier configuration (switchable)
RDS2 57 kHz and 66.5 kHz
Subcarrier bandwidth ± 2.4 kHz (50 dBc)
Output level adjust 0.0 to 4.0 V p-p in 256 steps
Phase shift adjust stereo broadcast Full range, in 9.5 deg. steps

Audio/MPX/Pilot input

mono < 10 kΩ
Recommended load impedance
stereo MPX < 2 kΩ
Recommended MPX voltage 1.3 - 8.0 V p-p
Passthrough voltage gain 2 Hz - 100 kHz 1 (0 dB)
Pilot tone level min. 120 mV p-p
- recommended FM deviation 6.8 kHz
Pilot PLL capture range 8 Hz
Pilot frequency required stereo broadcast 19000 Hz ± 2 Hz

Output

Output impedance 100 Ω


Recommended load impedance > 70 Ω, < 1 nF, no DC offset
Max. output voltage (RDS + MPX) 9.0 V p-p
Recommended RDS level 3 - 11 % of MPX

Notes: p-p - peak-to-peak value


The unit can operate with mono transmitter as well.
5

2.1 Block Diagram

Input J1
Output

SIDE/LOOP

Relay

RTC
Digital output
level control

D
EEPROM

I2C

Pilot/MPX
P164
Microcontroller

Port 2 Port 1
Optional

LCD Display Ethernet USB


Module Controller
Optional

Program
Ethernet USB
Socket Socket
LED Indicators TA

Analogue Part

Power
Supply
5V Digital Part

3V3 Ethernet Module


6

3 Physical Description
3.1 Front Panel

USB
TA
RDS2 PILOT OPERATION TCP

P164 RDS Encoder PORT 1

Connector or element Description


This LED blinks when TA (Traffic Announcement) is ON.
TA/RDS2
It is constantly lit if the RDS2 subcarrier configuration is enabled.
Indicates if external pilot synchronization is active.
PILOT
Blinks if the pilot frequency is out of specs.
Blinks once per second if the RDS encoder is operating and ready.
OPERATION
Indicates incoming data on Port 1 and Port 2.
TCP Indicates active TCP connection or UDP readiness on Port 2.
USB standard B type connector. This port is referenced as ‘Port 1’.
PORT 1 Use the USB for initial setup of the encoder or for its local control.
The encoder operates also with no cable connected.

3.2 Rear Panel

12V DC OUTPUT INPUT

ETHERNET
DEFAULTS
PORT 2
LOOP SIDE

12V DC Power supply connector. See section 4.3 for details.


Resets the Ethernet parameters to defaults. Press and hold for at least 3
Ethernet Defaults seconds. Then recycle the encoder’s power. See section 6.3.5 for details.
Use a paper clip or similar thin object.
Ethernet RJ-45 connector. This port is referenced as ‘Port 2’.
Use a standard (direct) cat 5 Ethernet cable for connection to the
PORT 2 Ethernet switch, router, laptop or wall-socket.
The built-in LEDs indicate Ethernet link and serial data.
The encoder operates also with no cable connected.
RDS signal output.
OUTPUT If the Loop/Side switch is set to the LOOP position, the Output is a
sum of the RDS signal and the signal fed to the Input BNC connector.
Allows the input signal to be added to the output signal. See section
Loop/Side switch
4.2.2 for details.
Optional input for synchronization to the pilot tone or for mixing the
INPUT
RDS signal with existing modulation (MPX) signal.
7

3.3 Board Layout

3.3.1 Connectors
J10 – LCD (optional) display output
J2 – 12 V power supply connector (2.1 mm) 1 +5V 8 GND
Central pin is positive (+) 2 GND 9 GND
3 V0 10 GND
J3 – Output 4 RS 11 DB4
5 GND 12 DB5
J8 – Ethernet socket 6 E 13 DB6
7 GND 14 DB7
J5 – USB socket (standard B type) The LCD is HD44780 compatible, 16x2.

J7 – Pilot or MPX input


3.3.2 Buttons and Adjustable Elements
J12 – Logical control inputs/outputs
1: TA output J1 – MPX loopthrough switch
2: Program switch input B2 – Ethernet defaults (hold for >3 seconds)
3: TA/EON1TA switch input R54 – LCD contrast trimmer
4: Ground
5: +5V output (max. 50 mA)
6: RDS enabled input 3.3.3 LED Indicators

J19 – 5 V Output for LCD (optional) backlight D1 – Pilot tone indication / Firmware update
1: +5V D2 – Operation / Receive data / Error
2: Ground D9 – TA (blinking) / RDS2
D10 – TCP connected

B1 – Lithium battery 3 V for real time backup. Estimated endurance is 10 years. Replace by CR2032 type.
Note: EEPROM memory which is used for RDS data storage does not require any voltage to hold the data.
8

4 Installation and Setting-up


4.1 Connection
Basic rules:
 The RDS signal must be fed into modulation input (added to MPX signal if stereo encoder is used).
 If stereo encoder is used, one of its outputs (MPX or pilot tone) should be fed into the RDS encoder input to meet
the synchronization requirement.

Following figures show various situations and corresponding methods of connection:

12V DC OUTPUT INPUT

ETHERNET
DEFAULTS
PORT 2
LOOP SIDE

Audio Processor MPX output Pilot/MPX output

FM Transmitter RDS/SCA/MPX input MPX input

Separate audio processor (stereo encoder) - default connection.

12V DC OUTPUT INPUT

ETHERNET
DEFAULTS
PORT 2
LOOP SIDE

Audio Processor MPX output

FM Transmitter RDS/SCA/MPX input MPX input

Audio processor with only one MPX output provided.

12V DC OUTPUT INPUT

ETHERNET
DEFAULTS
PORT 2
LOOP SIDE

Audio Processor RDS/SCA input MPX output

FM Transmitter MPX input

FM transmitter with only one MPX input provided.


9

12V DC OUTPUT INPUT

ETHERNET
DEFAULTS
PORT 2
LOOP SIDE

Audio Processor MPX output

FM Transmitter MPX input

Both the audio processor and the FM transmitter have only one MPX connector provided - loopthrough mode.
It is preferred not to use this mode if another kind of connection is applicable.

12V DC OUTPUT INPUT

ETHERNET
DEFAULTS
PORT 2
LOOP SIDE

FM Transmitter with
integrated audio processor RDS/SCA/MPX input Pilot/MPX output

FM transmitter with integrated audio processor.

In case of mono transmission (no stereo encoder used) the RDS encoder input may be left unconnected (since there is
no need of external synchronization) or it may be used for the audio signal injection in the case that the FM
transmitter has only one input connector.

4.2 On-board Controls

4.2.1 On-board adjustable elements

Due to completely DSP-based solution there’s no adjustable element on the board affecting the RDS or MPX signal.

4.2.2 J1 - MPX loopthrough switch

Set the switch to LOOP position only if you want to pass the input signal to the output of the RDS encoder
(loopthrough mode). In all other cases the switch must be set to the SIDE position!

4.3 Power Supply


The RDS encoder can be powered from any power supply, which delivers a stabilized voltage of 12 V DC and a
current of at least 300 mA and no more than 2 A. The RDS encoder has built-in fuse and polarity protection. The
central conductor of the power supply connector is positive (+).

Note: After first power-up the RDS encoder will start to generate the RDS signal with factory default values
(PS: * RDS *, PI: FFFF, output level 2 Vpp). There is no need to configure anything to turn on the RDS subcarrier.
10

4.4 Windows Control Software - First Steps


It is easiest to configure the RDS encoder via USB (Port 1) before first use. For remote connection setup and
establishing, please follow section 6.3.

1. Install the Windows control software called ‘Magic RDS 4’,


run the setup exe file and go through the simple
installation wizard.
2. In the case of USB connection install the USB driver now.
TIP: Latest operating systems already come with the USB
driver included.
3. Make sure the RDS encoder is connected and powered, all
connectors are seated completely.
4. Run the Magic RDS software using Windows Start button.
5. Double-click on the ‘Add new connection’ icon.
6. Select your device model (P164). Choose the Serial/USB
connection and select the COM port the RDS encoder is
connected to.
Note: You may find/change the assigned COM port number
in Windows Control Panels - System – (Hardware) -
Device Manager.
7. Finally click on the Add button. You should see
"Connected" or "Opened" in the Recent Events box. Now
you are ready. The settings are saved automatically.
8. Configure the basic RDS settings.
Especially check the pages RDS Content – Program and
Device Setup – Analog Control.
Ethernet configuration is accessible in Device Setup –
LAN Settings (see section 6.3 for details).
9. The Recent Events box and status bar at the bottom of the
window show whether the data was sent successfully. If
an error is shown, check the connection to the RDS
encoder, its power supply and whether a correct COM
port is selected in the connection setup.
10. Follow the Magic RDS help for further details, tools and
configuration options.

Note: The RDS encoder contains two types of memory. These are marked as RAM and EEPROM. Like any other
computing system the RAM holds all operational data which are also used for transmission whilst the EEPROM is
used for the data storage during power-off. By default the button Test will fill the RAM only. The button Apply or
Store saves the data into EEPROM.
If the user forgets to store the data into EEPROM, that settings will be lost when the power is disconnected.
11

4.5 Level and Phase Adjustment

4.5.1 RDS signal output level

Important note: There is no universal setting for the RDS level. Due to different input sensitivity of different FM
broadcast equipment it is preferred always to check and adjust the RDS level.

The correct level should be between 2 and 11 % of the audio multiplex signal, measured by oscilloscope in peak-to-
peak values on the modulator input. Recommended value is such that results in 3.4 kHz deviation of the FM carrier.
Don’t forget that the maximum total FM carrier deviation with RDS and MPX signal is 75 kHz. It is much easier to
use any FM broadcast analyzer for setting the RDS level precisely.

Adjusting higher RDS level results in better RDS reception in areas covered with weak signal. This is especially
important if using scrolling PS or sending a lot of text information. However consider following aspects before
adjusting higher RDS level:
- the MPX (audio) level must be decreased a little to meet the overall FM deviation limit,
- automatic tuning using alternative frequencies (AF) will appear slower – the receiver will rate the signal
reception to be good although there may be a reason to tune to another frequency.

The deviation range of the FM carrier caused by RDS/RBDS is 1.0 to 7.5 kHz.
The deviation range of the FM carrier caused by stereo pilot tone is 6.0 to 7.5 kHz.
The overall peak frequency deviation shall not exceed 75 kHz.

The RDS level can be adjusted after establishing a connection to the encoder, using one of these two methods:

In the Windows software

The control is available in Device Setup section, page Analog Control.

Enter the RDS level directly in mV p-p unit or check the ‘Track’ box and adjust the level as desired. Finally confirm
by the Apply button.

In terminal, using ASCII command LEVEL=

The P164 RDS encoder allows direct adjusting of the RDS level in 256 steps, in range 0 to 255, by assigning a
corresponding value to the LEVEL parameter. Each step represents approx. 15.6 mV increase.

Desired step count can be calculated as

 Output RDS level 


LEVEL   256   1
 4000 

Actual output RDS level (in mV p-p) can be calculated as

LEVEL 1
Output RDS level   4000
256
12

4.5.2 RDS2 signal output level

The RDS level adjustment is valid for both the RDS and RDS2 subcarrier configurations.

In the RDS2 configuration, the output level value is a sum of two subcarriers, 57 kHz and 66.5 kHz. Amplitude ratio
between these subcarriers is 10:11.

Thus, when enabling the RDS2, signal level of stream 0 (57 kHz) drops to approx. a half of the original (RDS) level.

4.5.3 Phase adjustment for stereo broadcast

The phase adjustment between RDS subcarrier 57 kHz and pilot tone is an optional procedure applicable for stereo
broadcast (for mono there’s nothing to adjust). The adjustment is made using the Windows control software or using
the PHASE= command. Make sure the external synchronization is enabled (check the command EXTSYNC or the item
‘Subcarrier reference source’ on the Analog Control card in the Windows control software, it must be set to Auto).

From factory the phase shift is already adjusted so user may skip this chapter.

1. Fetch pilot or MPX signal to the RDS encoder. The PILOT LED will indicate that the pilot tone is present.
2. Adjust correct phase shift (0 or 90 degrees phase shift between 19 kHz pilot tone and 57 kHz RDS subcarrier,
measured on transmitter input, see the oscillograms). The phase adjustment would be difficult without an
oscilloscope or specialized measuring instrument.
Note: The phase adjustment is only optional. In all cases make sure the pilot tone is indicated on the RDS
encoder by the PILOT LED.

Oscillograms

Pilot and RDS in phase


(0 degrees phase shift)

Pilot and RDS in quadrature


(90 degrees phase shift)

Measuring conditions: Two-channel analogue oscilloscope, CH1: pilot (or MPX without audio), CH2: RDS
output, trigger source: CH1, vertical function: CH1+CH2, horizontal: 5 µs/div.
13

4.6 Setting Basic RDS Data


Before getting on-air with the RDS signal, you will need to decide on the settings to be used. The following RDS
services must be set as the first. Use the Windows control software and its GUI. For more experienced users or those
without a Windows PC, any terminal programme can be used (see chapter 6.5).

Note: When attempting to set-up a unit that was already placed in operation before, the user should clear the
encoder first. In the Windows control software, go to Device Setup – Special – Initialize.

4.6.1 PI (Program Identification)

This is very important information that enables the receiver to distinguish between countries, areas in which the
same program is transmitted, and the identification of the program itself. The code is not intended for direct display
and is assigned to each individual radio program, to enable it to be distinguished from all other programs.
The PI code consists of four characters (hexadecimal numbers).

The first character identifies country:

0 Cannot be assigned. 8 PS, BG, LV, PT


1 DE, GR, MA, IE, MD 9 AL, DK, LI, LB, SI
2 DZ, CY, CZ, TR, EE A AT, GI, IS
3 AD, SM, PL, MK B HU, IQ, MC, HR
4 IL,CH, VA C MT, GB, LT
5 IT, JO, SK D DE, LY, YU
6 BE, FI, SY, UA E RO, ES, SE
7 RU, LU, TN, NL F EG, FR, NO, BY, BA

The second character identifies program type in terms of area coverage:

Local program transmitted via a single transmitter only during the


0 Local
whole transmitting time.
1 International The same program is also transmitted in other countries.
2 National The same program is transmitted throughout the country.
The same program is transmitted throughout a large part of the
3 Supra-regional
country.
The program is available only in one location or region over one or
4 to F Regional
more frequencies, and there exists no definition of its frontiers.

The third and fourth characters are used to clearly identify different stations within the area of coverage.

Important note: Meaning of some PI digits may be different for US RBDS.

Important note: If the station has only one transmitter, second PI digit must be zero (x0xx).

Important note: Factory default PI value is FFFF and it's needed to change it as soon as possible to avoid the
situation that two different stations with common area of coverage have the same PI. For each station in the same
location the unique PI must be assigned. Stations that carry different program must be unambiguously identified by
the last two PI digits. In other case they are recognized as one station by car radios, regardless of any other service
settings. If the broadcaster hasn't received the 4-digit PI from authority, he must choose such number that is not in
conflict with other stations in the location.
14

4.6.2 PS (Program Service name)

The PS name is max. 8 character long radio station name that will be shown most of the time on the radio display.
Advanced use of the PS (Dynamic/Scrolling PS) is discussed later.

4.6.3 PTY (Program Type)

The PTY code defines the type of the programme broadcast within 31 possibilities. See chapter 7.2 for a complete list.
This code could be used for search tuning.

Important note: PTY number 1 (News) should never be left on all the time. Use PTY number 3 (Info) for this purpose.

4.6.4 TP (Traffic Program)

This is a flag to indicate that the tuned program carries traffic announcements. The TP flag should only be set on
programs which dynamically switch on the TA identification during traffic announcements. The flag shall be taken
into account during automatic search tuning.

4.6.5 MS (Music/Speech)

This is a two-state signal to provide information on whether music or speech is being broadcast. The signal would
permit receivers to be equipped with two separate volume controls, one for music and one for speech, so that the
listener could adjust the balance between them to suit his individual listening habits.

4.6.6 AF (Alternative Frequencies)

The Alternative Frequencies are used to tell receivers what frequencies they can receive the radio station on. This
facility is particularly useful in the case of car and portable radios. For this to work, each transmitter must have RDS
with the same PI code.

Important note: If second PI digit is set to zero (x0xx), this indicates that the station has only one transmitter and
the AF list is ignored on most receivers.

For complete RDS service description visit the website, section Support.
15

5 RDS Services and Features


5.1 Broadcast Automation System Link-up
To send dynamic data via the RDS it's very useful to link the RDS encoder with your broadcast automation system.
This results in a possibility of sending commercials, current song information, program announcements and other
kind of information. All broadcast systems can be linked with the P164. The link may be either indirect or direct.

5.1.1 Indirect Link

In this configuration, the broadcast automation system does not communicate directly in the RDS encoder’s language
but rather it updates the text information in a specific file on the disk. That file is periodically read and processed by
the RDS encoder’s control software.

Broadcast automation system


RDS software
External
text RDS Encoder
12V D C ETH ER N ET R S-232 O U TPU T IN PU T G PIO

Text
output LO O P SID E

Default Windows control software for the P164 RDS encoder is the Magic RDS 4. This application including
documentation, tutorials and examples of use can be downloaded from the Website, at the product page. The text
processing is accessible through menu item Tools – External text sources.

Since probably hundreds of automation systems are used around the world and new versions are released often,
information in this manual cannot be full-scale. For information about how to configure the broadcast automation
system text output please follow its documentation or contact the software vendor.

5.1.2 Direct Link

In this configuration, the broadcast automation system drives the RDS encoder directly via its communication port,
either physical or virtual.

Broadcast automation system

RDS Encoder
RDS
12V D C ETH ER N ET R S-232 O U TPU T IN PU T G PIO

plugin LO O P SID E

Since some situations require more communications ports or there may be a need to address more RDS encoders in
larger networks, the P164 RDS Encoder’s control software provides a unique port multiplication features, called
Bridges and Virtual Ports. In such case the broadcast automation system connects to the Windows control software.

Virtual Port connection setup procedure

1. In the Magic RDS 4, click on the Virtual Ports icon and then on Add Virtual Port button.
In case of driving more RDS encoders, create a new Bridge first (Add new connection – kind: Bridge, type:
Internal Feed ).
2. Configure the connection parameters of the Virtual Port so that the broadcast automation system can connect to
it.
3. Configure the broadcast automation system, according to step 2.

For detailed information about how to control the RDS encoder contact your broadcast software vendor.
16

Data format for text services

The P164 RDS encoder supports several formats (protocols) for input data and it’s designed to be compatible with all
broadcast automation software.

The support includes:

• ASCII commands
• UECP protocol (format given by UECP specification)
• X-Command (described later in this chapter)

Basic data format for ASCII command is as follows:

Prefix (ASCII command): RT1=


Terminating character  : <CR> (Carriage return). <CR><LF> accepted as well.

Example:
RT1=Now Playing: Julia Michaels - Issues

See section 7 for complete list of all ASCII commands.

Compatibility commands

To reach the best possible compatibility with broadcast automation systems, the P164 includes a special set of
compatibility commands. In the systems where the P164 is not directly supported (or the system is older version) the
user may try to select another RDS encoder model to send text messages. Where possible, set the communication as
unidirectional.

Command Translated to
TEXT= RT1=
DPS= DPS1=
PS_SCROLL= DPS1ENQ=

Radiotext Plus (RT+ tagging)

The RT+ feature is designed to let the listener take additional benefit from the Radiotext service by enabling receivers
to offer direct access to specific elements of Radiotext. Typically the RT+ feature supports song artist and song title
elements. These elements anyway carried in the Radiotext, are identified by their class type, length and location
within the Radiotext. The receiver must be equipped with the RT+ function (also called "tagging") to take advantage
of this feature.

The RDS encoder includes full support for the RT+ and its handling is highly automated. For direct use your
broadcast automation system must support X-Command or the RT+ function either by means of user defined groups
or by the command RTP= (see section 7.8 for more details). In other cases the Windows control software used in the
indirect link configuration can provide the RT+ service.

X-Command for RDS encoders

The X-Command is the newest and preferred method how to forward text information (incl. tagging) from the
broadcast automation system to the RDS encoder. It is based on simplified markup language. The X-Command is
fully supported by the P164 RDS Encoder.

Example:
XCMD=<rds><item><dest>3</dest><text>Now Playing: <artist>Julia Michaels</artist> -
<title>Issues</title></text></item></rds>

For more details follow the information in the document ‘X-Command for RDS Encoders’.
17

5.2 Dynamic PS
Standard RDS enabled receiver disposes of 8-character LCD display but we usually need to show pile of information
and commercials. So small display on the one hand and so much demands on the other hand. The P164 solves it by
unique system of text messages showing. Although Radiotext service is defined in the RDS standard, this service is
not present some receivers (especially older car radios) and has some other limitations. According to the broadcasters
needs, the PS service - one of the basic RDS services supported by all receivers - can be usually used to give
sequential information. This has become known as ‘Dynamic PS’ or ‘Scrolling PS’.

Note: Using the dynamic PS is restricted in some countries and it's fully prohibited by the RDS standard!
The manufacturer is not responsible for incompetent use of this feature. Some receivers may not display the dynamic
PS properly for reasons that lie entirely on their side. Never provide traffic information inside the Dynamic PS text!

The P164 RDS encoder offers advanced implementation of the Dynamic PS service. Basic text message length is up to
255 characters (mode independent). Two varieties of the Dynamic PS are present: Dynamic PS 1 (DPS1) and Dynamic
PS 2 (DPS2). Both varieties are configurable independently from each other.
Basic configurable parameters are:
 Text content/text source
 Display mode
 Label period or scrolling speed
 Number of transmissions

Example of full dynamic PS use:

The number of transmissions is specified for each Dynamic PS text. The Static PS period (delay between text loops)
specifies the time between two repeats of the Dynamic PS text loops. Default PS is displayed during this time.

Four display modes are provided. The mode is switchable ‘on the fly’, without need to re-enter the text message.
 Mode 0 - Scrolling by 8 characters
 Mode 1 - Scrolling by 1 character
 Mode 2 - Word alignment scrolling
 Mode 3 - Scrolling by 1 character, text separated by spaces at begin and end

Additional differences exist between Dynamic PS 1 and Dynamic PS 2 (see sections 7.2 and 7.10). In general the DPS1
should be used if on-line connection is available between your studio and the RDS encoder while the DPS2 should be
used if the RDS encoder is placed on a site without on-line connection providing set of fixed messages.
18

5.3 Alternative Frequencies


The list of alternative frequencies gives information on the various transmitters broadcasting the same program in
the same or adjacent reception areas. It allows switching to another frequency of the same station when leaving the
actual frequency coverage. This facility is particularly useful in the case of car and portable radios.

Important note: If second PI digit is set to zero (x0xx), this indicates that the station has only one transmitter and
the AF list is ignored on most receivers.

Ideally the AF list should only comprise frequencies of neighboring transmitters or repeaters. Entire AF set should be
as tiny as possible to allow the receiver to find the strongest frequency quickly. This will improve the listener's
experience. Thus there should be more RDS encoders using individual AF sets within larger networks.

Two methods of AF transmitting are possible:


 AF method A is used for stations carrying the same program on all their transmitters. The list may contain up to
25 frequencies.
 AF method B is used for larger lists or when splitting areas or different programs are broadcast.

94.3 MHz

95.8 MHz

91.2 MHz

5.3.1 Method A

This is a default method recommended for most of stations.

To establish a common list of AF-A using a terminal:

Note: Requires only one RDS encoder for entire network (common STL or one main transmitter and two
repeaters). The list must contain all frequencies on which the signal from the RDS encoder is carried.

AF=94.3,95.8,91.2 Enter the list


*AF Store the list

To establish a separate list of AF-A for each transmitter:

Note: Requires separate RDS encoder for each transmitter.


Note: All RDS encoders must be using the same PI (Program Identification).

91.2 MHz:
AF=94.3 Enter the list
*AF Store the list

94.3 MHz:
AF=95.8,91.2 Enter the list
*AF Store the list

95.8 MHz:
AF=94.3 Enter the list
*AF Store the list
19

5.3.2 Method B

Total capacity: up to 8 lists, up to 12 AF pairs each

Method B AF coding is a more complex method that is used where the number of AFs used by a transmitter and its
associated repeater stations exceed 25, or where it is required to indicate frequencies which belong to different
regions which at times carry different programs.

More than one transmitter or associated repeaters of the station broadcast the same set of different AF lists in
sequence. Total number of AF lists used within entire network is in general identical to the number of transmitters
and repeater stations in the network so as to provide a unique list for each transmitting station. In this method the
alternative frequencies are individually addressed by transmitting the tuning frequency paired with one alternative
frequency. Each list starts with the tuning frequency for which the list is valid, e.g. 94.3. All remaining pairs (up to
12) give the tuning frequency together with a valid AF.

For the transmission of the frequency pairs within one block the following convention is used. They are generally
transmitted in ascending order (F1 < F2), e.g. 94.3,95.8 or 91.2,94.3. In special cases they are transmitted in
descending order, if they belong to different regions, or carry from time to time different programs. If you use the
Windows control software, this assures right order automatically.

To establish a common set of AF-B lists using a terminal:

Note: For illustration purpose only. If the network contains only a few frequencies like in this example, the
method A is more effective.

AF=A Switch to method A to allow editing of the AF lists


AF=94.3,94.3,95.8,91.2,94.3 Enter the first list for 94.3 MHz
*AF=1 Store the list
AF=95.8,94.3,95.8 Enter the second list for 95.8 MHz
*AF=2 Store the list
AF=91.2,91.2,94.3 Enter the third list for 91.2 MHz
*AF=3 Store the list
AF= Terminate the set of AF lists
*AF=4 Store the termination
AF=B Switch back to method B – start cycling through the lists
*AF Store the method setting

To read the set of AF-B lists:

AF Read the AF method being used (A/B)


AF=A Switch to method A to allow reading of the AF lists
AF=1 Load the first list
AF Read the list
AF=2 Load the second list
AF Read the list
AF=3 Load the third list
AF Read the list
AF=4 Load the fourth list
AF Read the list, no AF here, terminating
AF=B Switch back to method B

Notes:

If the number of AFs of a station is larger than 12, the list must be split into two or more lists. These lists are
transmitted directly one after the other.

Broadcasters using splitting of a network during certain hours of the day should use AF method B, and not AF
method A. The lists should be static, i.e. the AFs included in the list, carrying a different program during certain
hours of the day, shall be signaled by transmitting in the descending order (F1 > F2). Their PI shall differ in the
second digit of the code (using regional variant 4 to F) and may also be static. Switching the second digit of the PI to
1, 2 or 3 informs the receiver that now even AFs transmitted in descending order carry the same program and the
receiver may use them for switching.
20

5.4 Enhanced Other Networks Information (EON) Setup


The EON feature is used to update the information stored in a receiver about program services other than the one
received. Alternative frequencies, the PS name, Traffic Program and Traffic Announcement identification as well as
Program Type and Program Item Number information can be transmitted for each other service. The relation to the
corresponding program is established by means of the relevant Program Identification (PI).

The EON is especially useful for linking two or more stations of the same owner. Most of EON featured receivers
gives priority to stations linked by EON when seek function is activated. Since the P164 can store four EON links, up
to 5 stations can be linked together.

Station that doesn’t carry traffic announcements can refer to a station that does. This situation is described below. For
more information see appropriate section in the List of Commands or in the Magic RDS control software help.

5.4.1 Traffic Program and Traffic Announcement codes

The coding to be used is as follows:

Traffic Program Traffic Announcement


Applications
(TP) (TA)
This program does not carry traffic announcements nor does it
0 0
refer, via EON, to a program that does.
This program carries EON information about another program
0 1
that gives traffic information.
This program carries traffic announcements but none are being
1 0 broadcast at present and may also carry EON information
about other traffic announcements.
A traffic announcement is being broadcast on this program at
1 1
present.

Station which uses the code TP=0, TA=1 must refer to at least one program service which carries traffic information,
and has the flag TP=1. When a particular program service begins a traffic announcement, the station that cross-
references this service via the EON feature will broadcast a switch signal by setting the appropriate EON TA flag to 1.
The EON TA flags can be controlled by software for all four EON links in the P164. The first EON link TA flag can be
also controlled by external TA/EON1TA switch.
The situation described is illustrated on the example below:

5.4.2 Example

Kiss FM is a small station that doesn’t carry traffic announcements but refers via EON to City Radio, which is
regional station of the same owner that carries the traffic announcements. If the Kiss FM listener has activated the
EON feature on his receiver, he will be automatically tuned to City Radio for the duration of traffic announcements.

Station 1: Kiss FM Station 2: City Radio

PI=20F1 PI=2501
PS=KISS FM PS=CITY
TP=0, TA=1 TP=1, TA=(controlled by external switch)
Frequency: 90.2 MHz Frequencies: 93.7 and 106.2 MHz
(only 93.7 can be received in the area covered by Kiss FM)
Station 1 EON Data:
EON1PI=2501
EON1PS=CITY
EON1TA=(controlled by external switch)
EON1AF=93.7

Both TA/EON1TA switch connectors can be wired together and controlled by only one switch or device if the
transmitters of 90.2 and 93.7 MHz are placed on the same site.
21

5.5 Weekly Scheduling


This feature allows scheduling of text messages, program type names and any other commands in hourly, daily and
weekly program. The scheduling is provided directly by the P164 unit. Once set, it works with no more support from
PC or control application. This is especially useful when the RDS encoder is placed on remote site or where reliability
is important.

5.5.1 Key features

 The scheduling feature is fully implemented in the P164 unit and works independently
 Almost any RDS service or control command can be scheduled
 Up to 48 scheduling items
 Each item may contain any combination of days in week, up to 12 times (a wildcard is supported on the hour
place), program type (PTY) information and any from more than 60 commands

5.5.2 First steps

Let’s say that our radio station called ‘PRO 88’ broadcasts news from Monday to Friday at midday. The news
duration is 40 minutes. During the news the PS is set to ‘HOT NEWS’ and the PTY is set to 1 (News). In common
program the PTY is set to 3 (Info).

Scheduling item 01:


Days: 12345 (Monday, Tuesday, Wednesday, Thursday, Friday)
Times: 12:00
PTY: 1 (News)
Command: PS=HOT NEWS

Scheduling item 02:


Days: 12345 (Monday, Tuesday, Wednesday, Thursday, Friday)
Times: 12:40
PTY: 3 (Info)
Command: PS=PRO 88

5.5.3 Text messages scheduling

Although it’s possible to change directly the Dynamic PS and Radiotext (using an appropriate command, for example
RT2=The best music in the city), the maximum text length is limited since maximum command length in
each Scheduling item is 35 characters. For longer texts you may use indirect method based on the bank of Messages:
1. Store the text as a Message, for example Message 01.
2. In the Scheduling call the message number, for example RT2MSG=1 or DPS2MSG=1
or XCMD=<rds><msg>1</msg></rds>.

The Windows control application provides easy GUI for this case.

5.5.4 Troubleshooting

If the scheduling doesn’t work as expected, check the following points:


 Scheduling enabled?
 Date and Time actual?
 Commands typed right?
22

5.6 RDS2 Subcarrier Configuration


5.6.1 Enabling the RDS2

The subcarrier configuration is controlled by ASCII command RDSGEN= (see section 7).
In the Window control software, the RDS2 subcarrier configuration can be enabled in Device Setup – Analog Control
– RDS Generator.

MPX Spectrum – Original RDS (default configuration)

MPX Spectrum – RDS2

When the RDS2 is enabled, an additional stream 1 will appear in the MPX spectrum at 66.5 kHz subcarrier. Content
of the basic stream 0 at 57 kHz subcarrier remains unchanged, providing all original RDS features and full backward
compatibility.

Note: In the meantime, the RDS2 services are not supported by consumer FM receivers. Enabling the RDS2 may
violate with your broadcast license specifications!

5.6.2 RDS2 Modes of Operation

The RDS2 mode of operation is controlled by ASCII command RDS2MOD= (see section 7).
In the Window control software, the RDS2 mode of operation can be changed in RDS Content – System –
Miscellaneous.

Content of the stream 1 is partially or fully controlled by external applications, which provide the data coded into the
RDS2 group format. There are no restrictions in the RDS2 services support.
All modes of operation allow external applications to send the RDS2 content using the ASCII command G=. The
mode of operation effectively determines a default (idle state) content of stream 1:

Mode Designation Description

0 Tunneling The stream 1 is effectively a duplicate of the basic stream 0. This is a default setting.

RDS2 Buffer /
1 RDS2 Buffer (see the command STORE) is periodically sent in stream 1.
Station Logo

The modes of operation may be enhanced in future, depending on the RDS2 expansion.
23

6 Communication Ports
6.1 Overview
For configuration and control requirements the RDS encoder is equipped with two communication ports. These ports
include individual buffers and work in complete independence, i.e. both ports can be used at one time by different
applications.

The port overview is given in following table:

Port
Physical plug Port type Description and purpose
reference

This port is dedicated for local connection. It is accessible like any


standard serial RS-232 port from the computer, using COMx
name, where x is the port number assigned in operating system.
Port 1 Physical
Virtual COM Port driver ensures compatibility with older
software although the connection is physically realized via USB
USB
cable.

This port is a general purpose remote serial port with support of


following Ethernet protocols: TCP Server, TCP Client, UDP.
Port 2 Physical
A communication setup must be usually performed prior to use of
this port. See section 6.3.5 for default configuration.
Ethernet

All ports are universal so they accept complete set of ASCII commands, a connection from the Windows control
software and UECP records (depending on setup).

Individual access limitations can be configured for each port using the Port Access Control (PAC).

6.2 USB Connection


For the purpose of initial configuration and local control
requirements the RDS encoder is equipped with standard USB
interface provided on the front panel. This connector allows direct
connection to a PC using USB cable type A-B.

USB driver must be installed prior to start communicating. Latest


Windows versions are already supplied with the driver. Virtual
COM port feature provides seamless compatibility with broadcast
automation software.

After successful installation a new COM port will appear in


Windows Control Panels – Device Manager ►

To change the assigned COM port number, double-click on the line


and go to Port Settings – Advanced.
24

6.3 Ethernet Connection


6.3.1 Features

 Single connection (TCP Server, TCP Client or UDP)


 Internal website for Ethernet status and configuration
 Fail-safe monitor with switching between main and alternative connection
 Ethernet defaults button
 Supports auto-negotiation
 Low power consumption

The device supports four different methods of configuration:

 Configuration from the Windows control software


 Simple configuration using ConfigTool and UDP broadcast
 Ethernet configuration using embedded website
 Configuration from a terminal application

6.3.2 Ethernet configuration from the Windows control software

This method uses the Windows control software for Ethernet configuration. A working connection to the encoder
must already be established, either via Ethernet or USB.
25

Ethernet configuration step by step:

1. Establish a connection to the RDS encoder, either via Ethernet or USB (see section 4.4).
2. In the Windows control software, select Device Setup and then go to the LAN Settings tab.
3. Configure the fields and finally click on the Apply button.
4. The settings will take effect in 10 seconds. The RDS encoder does not require to be restarted.

Following table summarizes the Ethernet configuration fields:

Use DHCP Embedded DHCP client allows for automated configuration of the Ethernet parameters
like IP address or DNS server.
This option should be Enabled. Choose Disabled if you want to enter the parameters
manually or if there’s no DHCP function contained in your network.

Work As: TCP For TCP protocol, the user may specify if the RDS encoder is a server (waiting for a client
Server/Client application connection) or a client (actively connects to the specified RDS data providing
server).
Hint: If host name or IP address needs to be specified in the RDS data providing
application, the RDS encoder will be a server (most frequent option).
The server side must be visible in the network. In internet that means the server requires
public IP address and/or correct port forwarding setting on router (if present).

Port Number Fill the port number in range 1 to 65535. It must match the port number of the RDS data
providing application.

Connect To Available only if the encoder is configured as a client. Specifies the remote server the
encoder will connect to.

Switch to Enables a simple fail-safe monitor:


Alternative If the encoder does not receive meaningful data during the period specified, it switches to
the Alternative configuration. Otherwise it stays in the Main configuration.
Return from the Alternative configuration back to the Main configuration occurs
regardless of whether the data is being received or not, after elapsing the period.
This option is not available in all methods of configuration. Once enabled, its later change
can be made only in the Windows control software or in a terminal application.
Default is Disabled.

Website Port Specifies the embedded web-server port number.


Default port number is 80. Such number may be omitted when typing the URL in web
browser.

Password The password is required in order to enable access to the Ethernet configuration website.
Default password is admin.
26

6.3.3 Simple configuration using ConfigTool and UDP broadcast

This method uses the ConfigTool desktop application for Ethernet configuration and getting its status (for example
current IP address). Data are carried by UDP broadcast feature so the process is independent of network
configuration and initial state of the device.

Simple configuration step by step:

1. Connect the RDS encoder to your local network.


2. Click on the ConfigTool icon.
3. Click on the Search button and then select your
device.
4. Configure the fields in the marked area. Do not
change other settings.
5. Finally, click on the Apply Settings button.
6. The settings will take effect in 10 seconds.
The RDS encoder does not require to be restarted.
7. If needed, continue by entering the connection
parameters to the Windows control software and
add the new connection. ►
Now you can control the encoder remotely.

Note: The simple configuration cannot be applied if Alternative configuration switch was previously enabled in the
Windows control software.
27

6.3.4 Ethernet configuration using embedded website

The RDS encoder includes HTTP server and web-based user interface. An internet browser may be directed to the
encoder’s IP address to bring up the Ethernet configuration website. RDS content cannot be changed this way.

Simple configuration step by step:

1. Type the RDS encoder’s IP address to address bar of the browser.


2. Type the password. Default password is admin
3. Click on Basic Settings.
4. Configure the fields in the marked area. Do not change other settings.
5. Confirm by Save Settings button.
6. Finally, click on the Reset button. The RDS encoder itself will not be restarted.
7. The settings will take effect in 10 seconds.

Note: The embedded website cannot be used for changing the configuration if Alternative configuration switch was
previously enabled in the Windows control software.
28

6.3.5 Factory Default Connection Parameters

Following table summarizes factory default parameters.

Use DHCP No
IP Address 192.168.1.88
Subnet Mask 255.255.255.0
Gateway 192.168.1.1
DNS Server 114.114.114.114
Work As TCP Server
TCP Port 5000

The default configuration can be recalled any time by pressing the Ethernet defaults button:

1. Make sure the encoder is powered.


2. Press the button for more than 3 seconds. Use a paper clip or similar thin object.
10 mm

3. Recycle the encoder’s power (power-down and power-up).


4. Configure the device as required.

Hint: In the factory default configuration, the encoder is directly accessible in networks which use IP addresses in
format 192.168.1.xxx. Connection is instantly possible to IP address 192.168.1.88, port 5000.

6.4 Port Access Control


The Port Access Control (PAC) is primarily a security feature that restricts the RDS encoder control via each port by
means of a command code and associated enable/disable flag. The user may specify for each port which RDS
services are allowed to be sent, configured and viewed via that port.

The port is identified by its number (1 or 2). The command is identified by its code (see the document ‘P132 RDS
Encoder – Communication Ports and Internet Functions’). The RDS encoder is set from factory so that all commands
are accepted (enabled) on all ports.

The PAC feature applies to both the ASCII commands and the UECP commands on all ports. An exception from this
rule exists for USB port: ASCII commands on this port cannot be disabled so local configuration is always possible.

If the UECP commands are completely disabled by ASCII command UECP=0, the PAC has no effect on UECP
commands.

The Port Access Control feature can be easily configured in the Windows control software (Device Setup –
Communication) or via ASCII command PAC.

Useful notes for the Port Access Control

 Commands executed using internal scheduler, are never restricted by the PAC.
 The PAC does not affect transmission of any service. For example, if Radiotext is being transmitted,
disabling the Radiotext command (code AB) does not stop its transmission. Use appropriate commands for
that purpose.
29

6.5 Working with a Terminal Application


This section explains how to make the settings above from a terminal application.

All RDS encoder’s settings and configuration incl. text messages etc. can be made from a terminal using a set of
ASCII commands. (The Windows GUI based application effectively does the same; it translates the user’s data into
the ASCII commands.)

1. In the case of USB connection install the USB driver now.


2. Make sure the RDS encoder is connected and powered, and all connectors are seated completely.
3. On the PC, run an application or program emulating or possessing an ASCII terminal. For example the Terminal
in the Magic RDS 4 presents all the characteristics to easily communicate in ASCII mode with the RDS encoder.
Note: Latest Windows versions unfortunately no longer contain terminal application. That needs to be installed
additionally from public resources. Suitable replacement for the Windows HyperTerminal is the PuTTY client
that is available for free download at http://www.putty.org.
4. For USB connection configure the communication parameters as follows:

Transmission speed 2400 bps (default, see note)


Data bits 8
Parity None
Stop bits 1
Flow control None

Note: If the RDS encoder was previously in use, there may remain any speed from 1200, 2400, 4800, 9600 or
19200 bps. The Magic RDS 4 detects the speed automatically.
5. For TCP connection, fill the encoder’s IP address and network port number on which the encoder listens for the
connection. The RDS encoder must be configured before using the TCP connection.

Once configured, the terminal can be used. To check if the hardware and logic configuration work as planned, type
for example HELP and press <Enter> to display the list of all commands. If no or unknown characters are displayed
on the screen, try again a second time, otherwise, check the following points:

 RDS encoder turned on?


 Cable used (does the LED1 indicate incoming characters?)
 Configuration of the terminal application

To display the commands entered at the keyboard on the screen, type the command ECHO=1 followed by <Enter>. If
all characters written are displayed twice, type ECHO=0 and press <Enter>.
To store this parameter into a non-volatile EEPROM memory, type *ECHO and press <Enter>.
To display actual parameter value, type ECHO and press <Enter>.

Now you made first steps with the RDS encoder command interpreter.
30

6.6 Command Interpreter


The RDS encoder command interpreter meets the following rules:

Any instruction sent to the RDS encoder must be validated by <Enter>.


Before validating you may correct the characters by pressing <Backspace>.

There are several methods of use for the commands:

 Query or command without argument, ex. HELP


Shows the parameter value or performs the operation.
 Command with argument, ex. ECHO=1
Assigns the value to the parameter.
 Memory store command, ex. *ALL
Stores the parameter value(s) into the non-volatile EEPROM memory.
 Memory store command with argument, ex. *MSG01=
Assigns the value to the parameter and stores it immediately into the non-volatile EEPROM memory.

Not all methods are available for all commands, see Command Summary, section 7.1.

Depending on the command processing success, several characters (followed by two pairs of carriage return and line
feed characters) can be returned by the RDS encoder:

+ Command processed successfully


! Unknown command
- Invalid argument
/ Command processed partially

The command interpreter is not case sensitive for the portion before the ‘=’. The value portion is case sensitive,
hexadecimal values, if contain letters, must be typed in upper case.

If you wish to retain change of any parameter value during power off, don’t forget to store it into EEPROM memory!

A terminal built in the Magic RDS 4.


31

6.7 Additional Information


This additional information provides all details required for implementation of the P164 protocol into your
application (broadcast automation system, messaging system, TMC data source etc.).

6.7.1 Unidirectional or bidirectional – What is the difference?

The P164 supports both unidirectional and bidirectional communication modes. Nothing is required to be set, the
mode of operation results only from the method of communication.

Unidirectional
(backward channel from the RDS encoder is not  Very simple to implement
present or the data from this channel is ignored)  Low cost data link

 No direct feedback from the unit

Bidirectional  Reliable remote control


(both channels are used)
 Backward channel may be hard to realize in some cases
 Unsuitable for larger networks

6.7.2 Command synchronization

Unidirectional communication:

If sending more commands in sequence, the execution times must be sometimes taken into consideration;
otherwise some commands may be discarded after internal buffer filling:

Command Execution time


PS=, TPS=, DPSx= up to 400 ms
G= up to 200 ms
*ALL 200 ms
*EON, *DPSx, *MSGxx= 50 ms
Other store commands 10 ms
All other commands 0 ms (typ.)

The RX buffer size is 90 bytes for each port. For commands with 0 ms execution time, as well as for command
batches whose length is shorter than the RX buffer size, there’s no need to pay attention for timing.

The execution times result from the EEPROM write cycle duration or from the requirement of internal
synchronization with RDS data group order. Most of commands require no perceptible delay.

TX P S = P R O  8 8 ← (execution time) (next command may follow)

Legend:
TX – data sent to the RDS encoder, ← - CR (char. 13, <Enter>)
32

Bidirectional communication:

Next command can be sent after receiving confirm sequence from previous command. This ensures right timing
and optimal channel usage in all cases. There is no need to consider any timing or delays.

TX P S = P R O  8 8 ← (next command may follow)


RX (ECHO=1) P S = P R O  8 8 (exec. time) ← ↓ + ← ↓ ← ↓
RX (ECHO=0) (exec. time) ← ↓ + ← ↓ ← ↓

TX P S ← (next command may follow)


RX (ECHO=1) P S ← ↓ P R O  8 8 ← ↓ + ← ↓ ← ↓
RX (ECHO=0) ← ↓ P R O  8 8 ← ↓ + ← ↓ ← ↓

TX * P S ← (next command may follow)


RX (ECHO=1) * P S (exec. time) ← ↓ + ← ↓ ← ↓
RX (ECHO=0) (exec. time) ← ↓ + ← ↓ ← ↓

Legend:
TX – data sent to the RDS encoder, RX – data read from the RDS encoder, ← - CR (char. 13), ↓ - LF (char. 10)

6.7.3 Useful notes

 ASCII char. 9 (TAB) is converted to char. 32 (space).


 In addition to the <Enter> (char. 13, CR) used for command validating, character 26 (EOF) can be used. This
allows to insert the validating character on platforms where char. 13 (CR) is not accepted.
 The command interpreter ignores other characters in ASCII range 0-31.
 Space characters (char. 32) are ignored if typed behind validating character on a new line. In this case, the space
characters may be used to realize a delay between two commands.
 The port time-out is 2 minutes. If no character is received during this time, the command line on that port is
internally cleared.
 For automated control (machine to machine), if getting a response from the encoder, the block of echoed
characters should be entirely ignored. That is, after starting to send the command, the control application should
ignore all characters received until the application receives first CR+LF from the encoder. This ensures receiving
of correct data regardless of the echo state.
33

7 List of Commands
7.1 Command Summary
Basic:
AF AF= *AF *AF= Alternative Frequencies
AFCH AFCH= *AFCH Alternative Frequency Channels
DI DI= *DI Decoder Identification
DPS1 DPS1= *DPS1 Dynamic PS 1
DPS1ENQ= Dynamic PS 1 Enqueue
DPS2 DPS2= *DPS2 Dynamic PS 2
DPS1EN DPS1EN= *DPS1EN Dynamic PS 1 Enable
DPS2EN DPS2EN= *DPS2EN Dynamic PS 2 Enable
DPS1MOD DPS1MOD= *DPS1MOD Dynamic PS 1 Mode
DPS2MOD DPS2MOD= *DPS2MOD Dynamic PS 2 Mode
DPS1REP DPS1REP= *DPS1REP Dynamic PS 1 Number of Repeating
DPS2REP DPS2REP= *DPS2REP Dynamic PS 2 Number of Repeating
DTTMOUT DTTMOUT= *DTTMOUT Default Text Timeout
EQTEXT1 EQTEXT1= *EQTEXT1 Equal Text 1
LABPER LABPER= *LABPER Label Period
MS MS= *MS Music/Speech
PI PI= *PI Program Identification
PS PS= *PS Program Service name
PTY PTY= *PTY Program Type number
PTYN PTYN= *PTYN Program Type Name
PTYNEN PTYNEN= *PTYNEN PTYN Enable
RT1 RT1= *RT1 Radiotext 1
RT1EN RT1EN= *RT1EN RT1 Enable
RT2 RT2= *RT2 Radiotext 2
RT2EN RT2EN= *RT2EN RT2 Enable
RTPER RTPER= *RTPER Radiotext Switching Period
RTTYPE RTTYPE= *RTTYPE Radiotext Type
RSTDPS RSTDPS= *RSTDPS Restart Dynamic PS
SCRLSPD SCRLSPD= *SCRLSPD Scrolling PS Speed
SPSPER SPSPER= *SPSPER Static PS Period
TA TA= *TA Traffic Announcement
TATMOUT TATMOUT= *TATMOUT TA Timeout
TP TP= *TP Traffic Program
TPS TPS= *TPS Traffic PS
INIT Initialization
*ALL Store All
HELP Help

EON:
EONxAF EONxAF= EON x Frequencies
EONxAFCH EONxAFCH= EON x Frequency channels
EONxEN EONxEN= EON x Enable
EONxPI EONxPI= EON x Program Identification
EONxPS EONxPS= EON x Program Service name
EONxPSN EONxPSN= EON x Program Service Number
EONxPTY EONxPTY= EON x Program Type number
EONxTA EONxTA= EON x Traffic Announcement
EONxTP EONxTP= EON x Traffic Program
*EON Store all EON data into EEPROM
x is in range 1-4

Note: Almost all commands have their equivalent in the Windows control software, accessible through its GUI.
34

Messages:
MSGxx *MSGxx= Text Message
MSGxxD *MSGxxD= Message Destination
MSGLIST List of Messages
DPS2MSG DPS2MSG= *DPS2MSG Dynamic PS 2 Message Number
RT2MSG RT2MSG= *RT2MSG Radiotext 2 Message Number
xx is in decimal range 01-99

Scheduling:
SLIST List of Scheduling Items
SxxC *SxxC= Scheduling Item Command
SxxD *SxxD= Scheduling Item Days
SxxP *SxxP= Scheduling Item PTY
SxxT *SxxT= Scheduling Item Times
SEN SEN= *SEN Scheduling Enable
xx is in decimal range 01-48

System:
COMSPD COMSPD= *COMSPD Port 1 Speed
CT CT= *CT Clock Time and Date
DATE DATE= Date
ECHO ECHO= *ECHO Terminal Echo
EXTSYNC EXTSYNC= *EXTSYNC External Pilot Synchronization
LEVEL LEVEL= *LEVEL RDS Signal Level
LTO LTO= *LTO Local Time Offset
MJD MJD= Modified Julian Day
PHASE PHASE= *PHASE RDS Signal Phase
PILOT Pilot Tone Present
RDS2MOD RDS2MOD= *RDS2MOD RDS2 Mode of Operation
RDSGEN RDSGEN= *RDSGEN RDS Generator
RESET Reset
SETFEAT *SETFEAT= Special Features
SPEED SPEED= *SPEED Port 1 Speed
STATUS RDS Encoder Status
TIME TIME= Time
VER Firmware Version

Ethernet configuration:
SETCTS *SETCTS= Port 2 Configuration Switching Timeout
SETLAN *SETLAN= LAN Setup
SETPORT2 *SETPORT2= Port 2 Main Configuration
SETPORTA *SETPORTA= Port 2 Alternative Configuration
35

Advanced:
ADR *ADR= Encoder Address List
CC *CC= Conditional Command
EAS= Send EAS Text Message
EASTIME= Set EAS Timer
ECC ECC= *ECC Extended Country Code
ECCEN ECCEN= *ECCEN ECC and LIC Enable
G= Send RDS or RDS2 Group
GRPSEQ GRPSEQ= *GRPSEQ Group Sequence
LIC LIC= *LIC Language Identification Code
PAC y,zz PAC y,zz= *PAC Port Access Control
PROGRAM PROGRAM= *PROGRAM Program Set Selection
PSNx *PSNx= Program 1/2 Service Number
PSW PS Window
RTP RTP= Radiotext Plus Tagging Data
RTPRUN RTPRUN= Radiotext Plus Running Bit
SETSPY= Set RDS Monitoring Counter
SHORTRT SHORTRT= *SHORTRT Short Radiotext
SITE *SITE= Site Address List
*STORE= Write to the non-volatile RDS2 Buffer
UDG1 UDG1= *UDG1 User Defined Groups 1
UDG2 UDG2= *UDG2 User Defined Groups 2
UECP UECP= *UECP General UECP Enable
XCMD= X-Command for RDS encoders
x is in range 1 to 2
y is in range 0 to 4
zz is in range 00 to FF (hex)
36

7.2 Basic Commands

AF Alternative Frequencies (87.6-107.9), A, B, (1-8)


Actual list of alternative frequencies in MHz representation in range of 87.6-107.9 MHz. Up to 25 items are
allowed in the list.
In addition this command switches between AF method A and B and allows working with different AF lists
for the method B.
For more details about the method B follow the section 4.6.6. From factory the AF method is set to A.
AF=103.5,98.0 Sets the alternative frequencies to 103.5 and 98.0 MHz (method A)
AF Shows actual AF list. Returns "B" if method B is active.
*AF Stores the AF list into EEPROM (default space for method A)
*AF=1 Stores the AF list into EEPROM (to a space used by method B)
AF=87.5 Not allowed (87.5 MHz not defined in RDS standard)
AF=108.0 Not allowed (108.0 MHz not defined in RDS standard)

AFCH Alternative Frequency Channels H (01-CC)


Actual list of alternative frequency channels in hexadecimal representation in range of 01-CC (87.6-107.9
MHz). Up to 25 items are allowed in the list.
AFCH=01,3B Sets the alternative frequencies to 87.6 and 93.4 MHz
AFCH=00 Not allowed (87.5 MHz not defined by RDS standard)
AFCH=CD Not allowed (108.0 MHz not defined by RDS standard)

DI Decoder Identification (0-15)


Identification of the decoder to be used by the receiver.
DI=1 Standard transmission - stereo.
DI=0 Standard transmission - automatic stereo/mono set depending on pilot tone presence.

DPS1 Dynamic PS 1
Up to 255 characters long text message to be displayed on receiver instead of static PS name. Primarily used
for song titles streaming etc.
DPS1=Hello World Sets the DPS1 text
DPS1= Clears the DPS1

DPS1EN Dynamic PS 1 Enable (0, 1)


Enables (1) or disables (0) the Dynamic PS 1 text.
DPS1EN=1 Enables the DPS1 text.

DPS2EN Dynamic PS 2 Enable (0, 1)


Enables (1) or disables (0) the Dynamic PS 2 text.

DPS1ENQ Dynamic PS 1 Enqueue


Advanced version of the DPS1 command. Places the text to a one level deep queue. New text will not be
displayed on the receiver until old text reaches its end. Applies only to text length <128 characters.
DPS1ENQ=Hello World Sets the following DPS1 text

DPS2 Dynamic PS 2
Up to 255 characters long text message to be displayed on receiver instead of static PS name. Alternatively
used in conjunction with Messages Commands.
DPS2=Hello World Sets the DPS2 text
DPS2= Clears the DPS2

DPS1MOD Dynamic PS 1 Mode (0-3)


Display mode for the DPS1 text.
0 - Scrolling by 8 characters
1 - Scrolling by 1 character
2 - Word alignment scrolling
3 - Scrolling by 1 character, text separated by spaces at begin and end
Note: In mode 3 the maximum text length is limited to 240 characters.
DPS1MOD=3
37

DPS2MOD Dynamic PS 2 Mode (0-3)


Display mode for the DPS2 text.
0 - Scrolling by 8 characters
1 - Scrolling by 1 character
2 - Word alignment scrolling
3 - Scrolling by 1 character, text separated by spaces at begin and end
Note: In mode 3 the maximum text length is limited to 240 characters.
DPS2MOD=3

DPS1REP Dynamic PS 1 Number of Repeating (0-127)[,CLR]


Specifies number of repeating for the DPS1 text message. Optionally the DPS1 text is then cleared.
Without the optional CLR parameter specified the command has effect only if DPS2 is enabled.
Number of repeating = number of transmissions - 1.
DPS1REP=1
DPS1REP=2,CLR

DPS2REP Dynamic PS 2 Number of Repeating (0-255)


Specifies number of repeating for the DPS2 text message. Has effect only if DPS1 is enabled or if DPS2MSG
value is AUTO.
Number of repeating = number of transmissions - 1.
DPS2REP=0

DTTMOUT Default Text Timeout (0-254)


Specifies a timeout in minutes for Radiotext 1. If no RT1 has been received during the period, the RT1 text is
replaced by default text. If RT+ service is active, the RT+ running bit is cleared.
Default text means the RT1 text that is stored in EEPROM memory using *RT1. Following exceptions apply:
For Program 1, if Message 91 contains a valid X-Command, it is launched on the Default Text timeout event.
For Program 2, if Message 92 contains a valid X-Command, it is launched on the Default Text timeout event.
1-254 – Timeout in minutes.
0 – Function disabled.
DTTMOUT=10

EQTEXT1 Equal Text 1 (0, 1)


If set to 1, any update of Radiotext 1 via any port updates also Dynamic PS1 and vice versa. Applies also to
UECP control. Has no effect for X-Command.
EQTEXT1=1
DPS1=Hello World
RT1

LABPER Label Period (0-255)


Label Period used in DPS Mode 0 and 2. Increasing the value by 1 increases the period by approx. 0.54
seconds (exact value depends on Group Sequence).
LABPER=4 Each label is displayed for about 2 seconds.

MS Music/Speech (0, 1)
Music/Speech switch.
MS=0 Speech program
MS=1 Music program

PI Program Identification H (1000-FFFF)


Identification code of the radio station. Always contains four hexadecimal digits.
PI=20FE OK
PI=0F55 Not allowed (0 as first digit)

PS Program Service name


Static name of radio station that is displayed on receiver. Max. 8 characters long.
The PS= command requires additional processing time of up to 400 ms for internal synchronization with RDS
group order.
PS=KISS FM
38

PTY Program Type number (0-31)


An identification number to be transmitted with each program item, intended to specify the current Program
Type within 31 possibilities.

Program type codes (Europe):


0 - (none) 16 - Weather
1 - News 17 - Finance
2 - Affairs 18 - Children
3 - Info 19 - Social Affairs
4 - Sport 20 - Religion
5 - Education 21 - Phone In
6 - Drama 22 - Travel
7 - Cultures 23 - Leisure
8 - Science 24 - Jazz Music
9 - Varied Speech 25 - Country Music
10 - Pop Music 26 - National Music
11 - Rock Music 27 - Oldies Music
12 - Easy Music 28 - Folk Music
13 - Light Classics Music 29 - Documentary
14 - Serious Classics 30 - Alarm Test
15 - Other Music 31 - Alarm

Program type codes (US RBDS):


0 - (none) 16 - Rhythm and Blues
1 - News 17 - Soft Rhythm and Blues
2 - Information 18 - Foreign Language
3 - Sports 19 - Religious Music
4 - Talk 20 - Religious Talk
5 - Rock 21 - Personality
6 - Classic Rock 22 - Public
7 - Adult Hits 23 - Leisure
8 - Soft Rock 24 - College
9 - Top 40 25 - (unassigned)
10 - Country 26 - (unassigned)
11 - Oldies 27 - (unassigned)
12 - Soft 28 - (unassigned)
13 - Nostalgia 29 - Weather
14 - Jazz 30 - Emergency Test
15 - Classical 31 - Emergency
PTY=10 Sets the Pop Music Program Type (EU)

PTYN Program Type Name


Allows further description of the current Program Type, for example, when using the PTY code 4: SPORT, a
PTYN of "Football" may be indicated to give more detail about that program.
PTYN=Football

PTYNEN PTYN Enable (0, 1)


Enables (1) or disables (0) the PTYN service.
PTYNEN=1 Enables the PTYN service

RT1 Radiotext 1
Up to 64 characters long text message to be displayed on receiver in Radiotext format. Primarily used for song
titles streaming, commercials etc.
RT1=Hello World

RT1EN RT1 Enable (0, 1)


Enables (1) or disables (0) the Radiotext 1.
RT1EN=1 Enables the RT1
39

RT2 Radiotext 2
Up to 64 characters long text message to be displayed on receiver in Radiotext format. Alternatively used in
conjunction with Messages Commands.
RT2=Hello World

RT2EN RT2 Enable (0, 1)


Enables (1) or disables (0) the Radiotext 2.
RT2EN=1 Enables the RT2

RTPER Radiotext Switching Period (0-255)


Specifies the time in minutes between two switching of the Radiotext. The switching can occur between RT1
and RT2 or between messages specified for RT2 (command RT2MSG=AUTO).
RTPER=10 Sets the period to 10 min.
RTPER=0 Sets the period to 0.5 min.

RTTYPE Radiotext Type (0-3)


Specifies Radiotext type for RT1 and RT2
0 - A/A. Any Radiotext is always the same type.
1 - A/B. RT1 is always type A, RT2 is always type B.
2 - Automatic. Any change/update of the Radiotext causes the A/B flag to toggle. Default option. Required
for proper RT+ function.
3 – Same as 2 but also overrides UECP A/B flag control.
If the receiver detects a change in the A/B flag, then the whole Radiotext display is usually cleared and the
newly received Radiotext message segments are written into the display. If the receiver detects no change in
the A/B flag, then the received text segments or characters are written into the existing displayed message.
Some receivers have two memory spaces for the Radiotext, one for type A and one for type B. Then they
display both messages consecutively in the loop.
RTTYPE=2

RSTDPS Restart Dynamic PS (0, 1)


1 – When the Dynamic PS text is changed and no Dynamic PS is running, it will start immediately.
0 – The SPSPER command drives the Dynamic PS start regardless of the fact that the Dynamic PS text was
changed.
Changing a Dynamic PS text (1 or 2) that is actually running will always cause its restart. This rule does
not apply to the DPS1ENQ command.
RSTDPS=1

SCRLSPD Scrolling PS Speed (0, 1)


Sets high (1) or low (0) speed of scrolling PS transmission. Although setting high speed gives the result
looking better, remember that on some receivers or under bad reception conditions the text may be
unreadable. The reason is absolutely outside the RDS encoder and comes out from the fact that scrolling PS
has never been included in RDS standard. Due to this the high speed is not recommended.
SCRLSPD=1

SPSPER Static PS Period (0-255)


Specifies the time between two repeats of the Dynamic PS text. Static PS (PS/TPS) is displayed during this
time. Increasing the value by 1 increases the period by approx. 2.7 seconds (exact value depends on Group
Sequence).
If value 255 is set, the Dynamic PS will be displayed only once if changed. RSTDPS parameter must be set to
1 in this case.
If both DPS1 and DPS2 are enabled, the SPSPER cannot be zero (0).
SPSPER=4 Sets the period duration to about 11 seconds.
40

TA Traffic Announcement (0, 1)


Indicates instantaneous presence (1) of traffic information during broadcasting.
When this value is set to 1 by external TA switch, the value specified by TA command has no effect.
When this value is set to 1 by TA command, the value set by external TA switch has no effect.
Switching the PROGRAM causes clearing of the TA flag.
Note: In some cases the RDS encoder drives the TP and TA flags automatically, especially if EON feature is
enabled. This ensures that these flags are set correctly under all conditions.
TA=1

TATMOUT TA Timeout (0-127) [+128]


Specifies a maximum duration in minutes during which the TA parameter can remain active.
0 - Disables the TA timeout feature. External TA switch is level controlled (logic 0 means TA=1).
1-127 - Specifies a maximum duration in minutes during which the TA parameter can remain active (1).
Then the TA flag is set back to zero (0). External TA switch is activated by falling edge. Rising edge
is ignored.
+128 - Adding 128 results in the same behavior as above except that also rising edge can set the TA back to
zero (if detected before the timeout).
Note: The timeout is synchronized with real time clock minutes, i.e. the timeout event can only occur in
whole minutes.
Note: The TATMOUT command doesn’t affect the EON1TA switching. The External EON1TA switch can be
level controlled only.
Note: If TP=0, the TA Timeout is always set to 0.
TATMOUT=0 No timeout. Logic 0 on the TA switch input results in TA=1, logic 1 or no
connection results in TA=0.
TATMOUT=2 TA is activated (set to 1) on falling edge on the TA switch input (logic 1 to logic 0
transition). After 2 minutes the TA is set back to 0. Rising edge is ignored so may
occur anytime.
TATMOUT=130 TA is activated on falling edge on the TA switch input. The TA is set back to 0 on
either the rising edge or after 2 minutes timeout, depending on which event
occurs first.

TP Traffic Program (0, 1)


This is a flag to indicate that the tuned program carries traffic announcements. The TP flag must only be set
on programs that dynamically switch on the TA identification during traffic announcements. The signal
shall be taken into account during automatic search tuning.
Note: In some cases the RDS encoder drives the TP and TA flags automatically, mainly if EON feature is
enabled. This ensures that these flags are set correctly under all conditions.
TP=1

TPS Traffic PS
Static text displayed on receiver during traffic announcements. Max. 8 characters long.
The TPS= command requires additional processing time of up to 400 ms for internal synchronisation with
RDS group order.
TPS=TRAFFIC
TPS= Disables the Traffic PS
41

INIT Initialization
Sets most parameters and services in actually selected Program to their default values. Does not clear
Messages and Scheduling items. Does not clear port and network settings.
Apply for example if new blank EEPROM is placed on the board or if the RDS encoder was previously used
for another station.
INIT Initialize the program set that is actually selected.

*CC= Complete initialization procedure. Replace the HH:MM with actual time and the
PROGRAM=2 DD.MM.YY with actual date.
INIT Note: This initialization sequence must always be applied if new blank
*ALL EEPROM is placed on the board in production process. Alternatively use the
PROGRAM=1 Windows control software: Device Setup – Special – Initialize.
INIT
*ALL
TIME=HH:MM
DATE=DD.MM.YY

ALL Store All


Stores all settings into the non-volatile EEPROM memory.
*ALL

HELP Help
Shows all commands available.
HELP
42

7.3 EON Commands

EONxAF EON x Frequencies (87.6-107.9)


List of Other Network frequencies that can be received in the area covered by linking
station. Each item is in MHz representation in range of 87.6-107.9 MHz. Up to 25 items
allowed.
EON1AF=98.0,99.3 Sets 98.0 and 99.3 MHz frequencies for Other Network 1

EONxAFCH EON x Frequency channels H (01-CC)


List of Other Network frequency channels that can be received in the area covered by
linking station. Each item is in hexadecimal representation in range of 01-CC (87.6-107.9
MHz). Up to 25 items allowed.
EON1AFCH=01,3B Sets 87.6 and 93.4 MHz frequencies for Other Network 1

EONxEN EON x Enable (0, 1)


Enables (1) or disables (0) the link to the Other Network.
EON1EN=1

EONxPI EON x Program Identification H (0000-FFFF)


Identification code of the Other Network. Always contains four hexadecimal digits.
EON1PI=24F1

EONxPS EON x Program Service name


Program Service name of the Other Network.
EON1PIN=12,16,40

EONxPSN EON x Program Service Number (1-255)


Program Service Number assigned to the Other Network.
Applies only if the operator requires changing of EON information via UECP.
EON1PSN=1

EONxPTY EON x Program Type number (0-31)


Program type number of the Other Network.
EON1PTY=3

EONxTA EON x Traffic Announcement (0, 1)


If set to 1, switches the receiver to corresponding Other Network for duration of the traffic
announcement.
Can’t be set to 1 if:
 corresponding Other Network has TP=0
 corresponding Other Network is not enabled
The EON1TA flag can be also controlled by external TA/EON1TA switch.
Note: Setting any EON TA to is also signalized to the receiver by a series of group type 14B.
EON1TA=1

EONxTP EON x Traffic Program (0, 1)


Traffic Program flag of the Other Network.
EON1TP=1

*EON Store all EON data into EEPROM


Stores all EON data into EEPROM. TA flags are not stored.
*EON

x is in range 1-4
43

7.4 Messages Commands


These commands are provided for working with the bank of fixed text messages that is useful especially for offline
operation of the RDS encoder or in conjunction with the scheduling feature. Using these commands you may enter
the text messages and assign them to Radiotext, Dynamic PS or X-Command.

MSGxx Text Message


Specifies the fixed message text. Since there is a place for 99 messages in the memory, the number xx must be in
range 01-99.
For Program 1, if Message 91 contains a valid X-Command, it is launched on the Default Text timeout event.
For Program 2, if Message 92 contains a valid X-Command, it is launched on the Default Text timeout event.
*MSG01=Hello World

MSGxxD Message Destination (0-3)


Specifies the destination of the message used for automatic message switching. The number xx must be in range
01-99.
0 - Message not used for automatic switching
1 - DPS2
2 - RT2
3 - DPS2 and RT2
4 – X-Command Timer
*MSG01D=1

MSGLIST List of Messages


Shows all messages present in the memory and its destination.
MSGLIST

DPS2MSG Dynamic PS 2 Message Number (0-99, AUTO)


0 - Default DPS2 text specified by DPS2 command or last DPS2MSG command is selected.
1-99 - The message of the number is selected for the DPS2.
AUTO - Messages are selected automatically in ascending order. Only messages chosen by the MSGxxD
command are selected.
DPS2MSG=AUTO

RT2MSG Radiotext 2 Message Number (0-99, AUTO)


0 - Default RT2 text specified by RT2 command or last RT2MSG command is selected.
1-99 - The message of the number is selected for the RT2.
AUTO - Messages are selected automatically in ascending order. Only messages chosen by the MSGxxD
command are selected.
RT2MSG=1

xx is in decimal range 01-99


44

7.5 Scheduling Commands

SLIST List of Scheduling Items


Shows all scheduling items. Items with no day specified are not showed.
Each item is represented by the following order: Item No., Days, Times, Command, PTY.
SLIST

SEN Scheduling Enable (0, 1)


Enables (1)/disables (0) the scheduling feature.
SEN=1 Enables the scheduling feature.

SxxC Scheduling Item Command


Specifies the command to execute.
Max. command length is 35 characters. Only commands from the second column of the
Command Summary are allowed.
*S01C=RDSGEN=0
*S03C=RT2MSG=12
*S04C= Clears (disables) the command for the item 04.
*S05C=XCMD=<rds><msg>40</msg></rds>
Schedules the item 05 to process X-Command stored in Message 40

SxxD Scheduling Item Days (1-7)


Specifies the days for which the item is valid.
Monday = 1.
*S03D=12367

SxxP Scheduling Item PTY (0-31)


Allows including optional Program Type information so that the Command may be
used for another RDS service change.
*S03P=15 Sets the PTY to 15 (Other M)
*S04P= Clears (disables) the PTY option for the item 04.

SxxT Scheduling Item Times


Specifies the times in 24-hours HH:MM format at which the item command is executed.
Wildcard XX can be used instead of hour number meaning that the item will be executed
each hour in specified minute.
If more items are scheduled for the same time, all these items are executed in ascending
order.
Up to 12 times allowed for each item.
*S03T=XX:30,12:00

xx is in decimal range 01-48


45

7.6 System Commands

COMSPD Port 1 Speed (0-4)


Specifies the port 1 speed (baudrate).
0 - 1200 bps
1 - 2400 bps (default)
2 - 4800 bps
3 - 9600 bps
4 - 19200 bps
This command has the same effect as SPEED but the format of input is different.
COMSPD=1

CT Clock Time and Date (0, 1)


Enables (1) or disables (0) time and date transmission in CT format.
CT=1

DATE Date
Specifies the actual date in DD.MM.YY format.
DATE=30.11.05 30th of November 2005

ECHO Terminal Echo (0, 1)


Determines if the RDS encoder sends an echo (1) of each character or not (0), that it receives via the port.
ECHO=1

EXTSYNC External Pilot Synchronization (0, 1)


0 - Forced internal clock source (for mono transmission)
1 - Automatic external synchronization if pilot tone is present
EXTSYNC=1

LEVEL RDS Signal Level (0-255)


Sets the RDS signal level, directly affects the injection of the RDS signal into the FM transmitter.
0 = minimum level, 255=maximum level. See section 4.5 for details.
LEVEL=120

LTO Local Time Offset ±(0-24)


Specifies the offset between the local time and the universal time (UTC). Expressed in multiples of half-
hours.
LTO=+2

MJD Modified Julian Day H (000000-FFFFFF)


Day, Month and Year coded as Modified Julian Day.
To find D, M and Y from MJD:
Y' = int [ (MJD - 15 078,2) / 365,25 ]
M' = int { [ MJD - 14 956,1 - int (Y' × 365,25) ] / 30,6001 }
D = MJD - 14 956 - int ( Y' × 365,25 ) - int ( M' × 30,6001 )
If M' = 14 or M' = 15, then K = 1; else K = 0
Y = Y' + K
M = M' - 1 - K × 12
To find MJD from D, M and Y:
If M = 1 or M = 2, then L = 1; else L = 0
MJD = 14 956 + D + int [ (Y - L) × 365,25] + int [ (M + 1 + L × 12) × 30,6001 ]
Y', M', K, L - intermediate variables.
MJD=00D7CD 18th of February 2010
46

PHASE RDS Signal Phase (0-18)


Fixes the relative phase shift between the pilot tone and the RDS signal (57 kHz).
Changing the value by one results in 9.5 degrees phase shift change.
The value serves only as a scale, it may not provide real phase shift value.
PHASE=8

PILOT Pilot Tone Present


Indicates if pilot tone is present (1) or not (0).
PILOT

RDS2MOD RDS2 Mode of Operation (0, 1)


Controls the RDS generator and subcarrier configuration:
0: Tunneling – The stream 1 is effectively a duplicate of basic stream 0 (default).
1: RDS2 Buffer / Station Logo – The RDS2 Buffer (see command STORE) is periodically sent on stream 1.
Other modes are currently undefined and should not be used.
In all modes, the G command as higher priority when inserting user-defined RDS2 group to the stream 1.
RDS2MOD=0

RDSGEN RDS Generator (0-2)


Controls the RDS generator and subcarrier configuration:
0: RDS output disabled – no data goes from the RDS encoder’s output.
1: RDS output enabled – single 57 kHz subcarrier (default).
2: RDS2 configuration enabled. Content of the upper subcarrier is given by the RDS2MOD and G commands.
Note: Disabling the RDS output has no effect on other functions.
RDSGEN=1

RESET Reset
Provokes a hardware reset of the RDS encoder and is equivalent to an "off-on" cycle of the RDS encoder.
RESET

SETFEAT Special Features H (0000–3FFF)


This is a 16-bit Hex value bitmap which holds enabling bits for special RDS encoder features:
Bit 0: Dynamic group sequence. If enabled (1), temporarily doubles the 2A group rate after the RT is changed.
Bit 1: RT+ group type 11A/13A. Selects group type for RT+ service. Applies to RTP and XCMD commands.
Bit 2: reserved, set as 0.
Bit 3: X-Command Timer Message – resume (0) or reset (1).
Bits 4 to 15: reserved, set as 0.
Note: The ‘*’ prefix may be omitted for this command.
SETFEAT=0001 Enables dynamic group sequence, sets group type 11A for RT+
SETFEAT=0003 Enables dynamic group sequence, sets group type 13A for RT+
SETFEAT=0000 Factory default value

SPEED Port 1 Speed (1200, 2400, 4800, 9600, 19200)


Specifies the port 1 speed (baudrate).
This command has the same effect as COMSPD but the format of input is different.
SPEED=2400

STATUS RDS Encoder Status


Shows the most important operating values of the RDS encoder. You may also type ??.
STATUS
??
47

TIME Time (00:00-23:59, 00:00:00-23:59:59)


Specifies the actual time in HH:MM format (sets the second counter to 00) or in HH:MM:SS format. The time
value specified is a local time valid in the area of coverage.
TIME=16:40
TIME=09:24:10

VER Firmware Version


Returns the firmware version that is actually present in the RDS encoder.
VER

7.7 Ethernet Configuration Commands

SETCTS Port 2 Configuration Switching Timeout


Controls a way how the Ethernet module will be load with the configuration.
If the parameter is 0, the load will occur immediately and once.
If the parameter is a pair of timeouts, the load will occur according to the configuration switching rules (see
section 6.3.2).
SETCTS=0 Load the Ethernet module with SETLAN and SETPORT2 settings now. Timeouts
are disabled.
SETCTS=60,30 Set timeout to 60 minutes for Main configuration and 30 minutes for Alternative
configuration.

SETLAN LAN Setup


Configures the LAN, excl. port 2 settings. Stores the configuration to non-volatile EEPROM memory.
This command serves for entering several values. Each value ends by ‘$’ character, .
AT$ - This value must be always the first.
AT+NAME=<device_name>$ - Device name, which will show in embedded website
AT+PASS=<password>$ - Password required for the embedded website. Cannot contain: $ “ ,
AT+WEB_PORT=<portnum>$ - Specifies port number for embedded web-server. Default is 80.
AT+IP_MODE=<mode>$ - Static IP: 0, DHCP: 1
AT+IP=<ip_addr>$ - IP address
AT+MARK=<subnet_mask>$ - Subnet mask
AT+GATEWAY=<gate_addr>$ - Gate address
AT+DNS=<dns_ip_addr>$ - DNS server IP address
*SETLAN=AT$,AT+NAME=P164$,AT+PASS=admin$,AT+WEB_PORT=80$,AT+IP_MODE=0$,AT+
IP=192.168.1.88$,AT+MARK=255.255.255.0$,AT+GATEWAY=192.168.1.1$,AT+DNS=114
.114.114.114$

SETPORT2 Port 2 Main Configuration


Configures the Port 2 (Main Configuration). Stores the configuration to non-volatile EEPROM memory.
This command serves for entering several values. Each value ends by ‘$’ character, .
AT$ - This value must be always the first.
AT+C1_OP=<operating_mode>$ - TCP server: 0, TCP client: 1, UDP: 2
AT+C1_PORT=<portnum>$ - local port number
AT+C1_CLI_PP1=<portnum>$ - remote host port number
AT+C1_CLI_IP1=<ip_addr>$ - remote host IP address
AT+DNSEN=1$ - if present, the AT+DOMAIN will apply
AT+DOMAIN=<host_name>$ - remote host domain name
*SETPORT2=AT$,AT+C1_OP=0$,AT+C1_PORT=5000$,AT+C1_CLI_PP1=5000$,AT+C1_CLI_I
P1=192.168.1.99$

SETPORTA Port 2 Alternative Configuration


Configures the Port 2 (Alternative Configuration). For details, see SETPORT2.
*SETPORTA=AT$,AT+C1_OP=1$,AT+C1_PORT=5000$,AT+C1_CLI_PP1=5000$,AT+C1_CLI_I
P1=192.168.1.99$
48

7.8 Advanced Commands

ADR Encoder Address List (0-63[,0-63])


Up to two encoder address numbers in range 0 to 63, separated by comma. Applies to UECP control.
*ADR=56
*ADR=12,35

CC Conditional Command
Executes specified command when specified condition occurs. Optional ELSE command supported.

Syntax:
*CC=[aa]bcc:dddddddd
*CC=ELSE:eeeeeeee
where is:
aa - memory address pointer (00-FFF)
b - condition operator
< - lower than
> - greater than
= - equal
! - not equal
B - bit cc of [aa] is set (numbered from LSB to MSB)
cc - value to compare (00-FF) or bit number (00-07)
dddddddd - the command executed if the condition is matched
eeeeeeee - the command executed if the condition is not matched (optional)

Max. command length is 31 characters. Once the command is executed, next execution is stopped until the
condition matching changes. In other words, the command is executed only at the condition matching change. Both
numbers aa and cc are in hexadecimal representation. Only one CC item is allowed. Only commands from the
second column of the Command Summary are allowed.

List of some applicable memory addresses:


13: PTY number (0-31)
15: number of DPS2 characters
28: Message counter (RT2)
29: Message counter (DPS2)
34: number of DPS1 characters
68: timer 0-8A, reset every minute
6A: one of the status bytes (bit 02 - DPS2 is running; bit 03 - DPS1 is running, bit 06 - external program switch)
71: Dynamic PS counter (points to the character that is actually transmitted on the first PS position)
76: static PS counter (0-SPSPER)
78: DPS number of repeats counter
8B: Group Sequence counter
C6: Scheduling item number waiting (0, 1-48)
CC: timer 0-FF, increased on each end of PS transmission (approx. once per 0.5 sec. by default)
E4: local hour (0-23)
E5: local minute (0-59)

To check visually what value is on each address, type MEM xx where xx is the address desired.
49

Important note: The CC is a very “strong” command. Due to a theoretical possibility of bad setting that may cause
the unit stop responding (please don’t ask for an example) the Conditional Command is not active after power-up
for up to 30 seconds. This gives the user a time to type *CC= to disable the Conditional Command before it
becomes active.
*CC=[CC]B03:PS=RADIO Periodically switches the PS between ‘RADIO’ and ‘PRO 88’.
*CC=ELSE:PS=PRO 88

*CC=[6A]B06:DPS2MSG=01 If PROGRAM is set to 1 or 2, the external program switch will select


*CC=ELSE:DPS2MSG=02 a text Message for the Dynamic PS 2. (If PROGAM is set to 0, the
status bit is always 0.)

PTYN=Football Sets PTYN name to ‘Football’. When PTY code ‘Sport’ is on-air,
*CC=[13]=04:PTYNEN=1 additional PTYN name is included.
*CC=ELSE:PTYNEN=0

*CC=[4E]B06:RT2EN=1 Enables RT2 for the duration of traffic announcement (TA)


*CC=ELSE:RT2EN=0

*CC=[E9]!01:COMSPD=1 Does not allow to set port 1 speed other than 2400 bps.

*CC=[E4]>0B:DPS2=Good afternoon Different DPS2 text for hours in range 0-11 and 12-23. Scheduling
*CC=ELSE:DPS2=Good morning feature can be used as well.

*CC=[71]<20:DPS1MOD=1 Shows first part of DPS1 in mode 1, then switches to mode 2 for
*CC=ELSE:DPS1MOD=2 the rest of the text.

CC Shows actual CC settings.


*CC=ELSE: Disables the ELSE command.
*CC= Completely disables the Conditional Command feature.

EAS Send EAS Text Message


Activates the EAS (US Emergency Alert System) mode of operation:
Loads the text message to Radiotext 1 and Dynamic PS 1. Sets PTY to 31 (Alert). Sets the EAS timer to 180 seconds.
Other commands changing the Radiotext or Dynamic PS are not accepted during the EAS session.
EAS= Hurricane conditions are expected within your area

EASTIME Set EAS Timer (0-999)


Number of seconds that the EAS text message should be transmitted. Typically, this command is sent after the EAS
command. If the timer is set to 0 (or has been decremented to 0), then the RDS encoder will function in its normal
mode of operation.
EASTIME=300 Extends the EAS mode duration to 5 minutes.
EASTIME=0 Immediately terminates the EAS mode of operation.

ECC Extended Country Code H (00-FF)


Uniquely determines the country in conjunction with the first digit of PI.
ECC=00 Unknown/not used/not applicable.
ECC=E2
50

ECCEN ECC and LIC Enable (0, 1)


Enables (1) or disables (0) the ECC and LIC features.
ECCEN=1

G Send Group H (000000000000-FFFFFFFFFFFF) or H (0000000000000000-FFFFFFFFFFFFFFFF)


Orders the RDS encoder to send directly RDS or RDS2 groups whose contents are free.
For RDS (stream 0), the Group content is in BBBBCCCCDDDD format where BBBB, CCCC and DDDD represent
the contents of the block 2, block 3 and block 4 in hexadecimal expression. The block 1 has not been specified as it
is always the PI code programmed with the PI command.
For RDS2 (stream 1), the Group content is in AAAABBBBCCCCDDDD format where AAAA, BBBB, CCCC and
DDDD represent the contents of the block 1, block 2, block 3 and block 4 in hexadecimal expression.
The RDS encoder calculates CRC automatically. For more details about the group coding see section 10.2.
Using this command, the RDS transmission can then be partially or fully controlled by an external application.
For full RDS stream control, 9600 bps or higher com. speed should be used. Next Group can follow after previous
command success characters (+). Opposite to UECP control, the G buffer may not contain more than one group
for each stream. The buffer is flushed as soon as possible (each stream has a maximum rate of 11.4 groups per
second).
G=380215D1A531 RDS group 3B containing 02 15D1 A531
G=0000200F20202020 RDS2 group – tunneling a RT segment

GRPSEQ Group Sequence


Defines the RDS group sequence. Allows the user to control the group order and adjust repetition rate of
individual RDS services. Max. 24 items are allowed. The services and groups are represented by following
symbols:
0 - Four groups 0A (MS, TA, DI, AF, one complete PS)
1 - Group 1A (ECC, LIC, PIN)
2 - Group 2A (RT)
A - Group 10A (PTYN)
E - Group 14A and 14B (EON)
X - Group from UDG1
Y - Group from UDG2
R - Group 3A/11A (RT+)
U – One group from the UECP buffer.
If the ‘U’ symbol is not present in the Group Sequence, any possible groups from the UECP buffer are
transmitted as fast as possible, usually making a continuous sequence of groups until the UECP buffer
flushes completely. This is a default configuration.
Services, which are not placed in the sequence, are disabled regardless of their individual settings.
Services, which are placed in the sequence and are disabled by their individual settings, are ignored (skipped).
Inserting a nonsense string will result in the same effect as inserting a single 0.
Inserting an unknown symbol will cause ignoring the rest of the string.
It's a good practice to assure that at least one 0 is present in each consecutive 6 symbols. It is recommended not to
place more than 4 same symbols consecutively.
Take into consideration that RDS does not know anything like empty groups or delays between groups. There
must be still some groups sent to the output.
The GRPSEQ command does not affect: group 4A (CT), user groups inserted using the G command.
GRPSEQ=02222 Four groups 0A followed by four groups 2A (very high Radiotext transmission rate),
other services are disabled.
GRPSEQ= Sets the groups sequence to default (022E1022EA022XYR).
GRPSEQ=022E10XYYY High transmission rate of UDG2. PTYN and RT+ is disabled.
GRPSEQ=X The RDS content is fully controlled via UDG1 (and possibly G command).

LIC Language Identification Code H (00-FF)


Enables a broadcaster to indicate the spoken language he is currently transmitting.
LIC=00 Unknown/not applicable
LIC=09 English

PAC Port Access Control


This command is described in the document ‘P132 RDS Encoders – Communication Ports and Internet
Functions’.
51

PROGRAM Program Set Selection (0-2)


Selects the program set – copies the program data from EEPROM memory to operational memory. RDS services
in selected program set are transmitted by the RDS encoder and can be modified and stored back into EEPROM
memory.
1 - Program set 1 is selected (default)
2 - Program set 2 is selected
0 - External switch selects the program
Note: If PROGRAM is set to zero (0), most of store operations are not allowed to protect the data (since the
destination in EEPROM is undefined in general).
PROGRAM=1

PSNx Program 1/2 PSN (1-255)


Specifies optional PSN (Program Service Number) for program set 1 or 2.
Note: This command has effect for UECP control only. Selectable PSN for each program set allows easier
integration of the RDS encoder into existing networks.
*PSN1=11 PSN 11 for program 1
*PSN2=12 PSN 12 for program 2

PSW PS Window
Returns actual Program Service name that is being sent by the RDS encoder. The value returned is an output of
internal real-time RDS decoder so it’s affected also by Dynamic PS and user defined groups.
PSW

RTP Radiotext Plus Tagging Data (00-31; 00-31; 00-31; 00-31; 00-31; 00-15)
Six 2-digit decimal numbers of RT+ tagging data in this order:
Tag 1 type, tag 1 start, tag 1 length, tag 2 type, tag 2 start, tag 2 length.
Start marker 00 means the first character in the Radiotext. Length marker gives the number of characters
following the first character at the start position.
The tagging data must be associated with actual Radiotext 1.
The tagging data are transmitted as groups 3A (RT+ ODA AID) and 11A (RT+ Tagging Data).
On each enter of the tagging data internal Toggle bit automatically changes its state from 0 to 1 or from 1 to 0.
First entering of the tagging data automatically enables the internal RT+ feature until power off or reset.
The RT+ is active only if symbol ‘R’ is present in the Group sequence.
If both tag 1 type and tag 2 type are set to 00, internal RT+ running bit is temporarily hold low until at least one
valid tag type is entered.
RT1=Now playing: Novaspace – Time After Time
RTP=04,13,08,01,25,14

RTPRUN Radiotext Plus Running Bit (0, 1, 2)


0 - Bit set low (RT1 no longer contains RT+ data), automatically set to 1 on next RTP= entry.
1 - Bit set high (actual RT1 contains RT+ data)
2 - Disable internal RT+ feature
This command is not required for common use since the running bit is set automatically.
RTPRUN=1

SETSPY Set RDS Monitoring Counter


This command is described in the document ‘P132 RDS Encoders – Communication Ports and Internet
Functions’.

SHORTRT Short Radiotext (0, 1)


If enabled (1), all new inserted Radiotexts shorter than 60 characters will be followed by Carriage Return and the
remaining spaces will be cut. Default value is 0.
SHORTRT=1
52

SITE Site List (0-1023[,0-1023])


Up to two site address numbers in range 0 to 1023, separated by comma. Applies to UECP control.
*SITE=16
*SITE=125,1022

STORE Write to the non-volatile RDS2 Buffer


Syntax: *STORE=aaaa,rds group(s)
aaaa: hexadecimal address in range B000 to EFFF. Write to outside of this region may corrupt other RDS data.
rds group(s): array of hexadecimal byte values, each 8 bytes form one group. Max. length is 64 bytes.
End of the buffer: If the data does not fill entire 16KB region available, a special sequence of 8 bytes must be
stored behind last RDS group. This terminating sequence is 0000FFFF00FF0000.
See section 5.6.2 for details.
*STORE=B000,0000FFFF00FF0000 Clears the RDS2 buffer

UDG1 User Defined Groups 1


Specifies up to 8 groups in BBBBCCCCDDDD format, which are repeatedly transmitted in sequence by the RDS
encoder. BBBB, CCCC and DDDD represent the contents of the block 2, block 3 and block 4 in hexadecimal
expression. For more details about the group coding see section 10.2.
When entering new group(s), previous groups are removed from the UDG1 buffer.
UDG1=80001A961C97 Sets TMC group 8A containing 00 1A96 1C97
UDG1= Clears the UDG1 groups

UDG2 User Defined Groups 2


Specifies up to 8 groups in BBBBCCCCDDDD format, which are repeatedly transmitted in sequence by the RDS
encoder. BBBB, CCCC and DDDD represent the contents of the block 2, block 3 and block 4 in hexadecimal
expression. For more details about the group coding see section 10.2.
When entering new group(s), previous groups are removed from the UDG2 buffer.
UDG2=380215D1A531,38058DB3B61E Sets two UDG2 groups
UDG2= Clears the UDG2 groups

UECP General UECP Enable (0, 1)


Enables (1) or disables (0) the UECP support for all ports. ASCII commands are accepted regardless of this value.
UECP=1

XCMD X-Command for RDS encoders


This command is described in the document ‘X-Command for RDS encoders’.
XCMD=<rds><item><dest>3</dest><text>Now playing: <artist>Raw Spirit</artist> -
<title>Back In Town</title></text></item></rds>
Updates RT1 and RT+ with specified text and tags.
53

7.9 Memory Organization


Operational Memory (RAM)

Common settings, Address lists,


Operating data, ...
RDS
Current Program Set (1 or 2) Output

RDS2MOD
PI, PS, Dynamic PS, RT,
AF, Group Sequence, ... PSN
Port 1
EON UDG

Port 2
Command
Non-volatile Memory (EEPROM) Interpreter

Common settings, Address lists

Program Set 1
RDS2MOD
PI, PS, Dynamic PS, RT,
AF, Group Sequence, ... PSN1

EON UDG

Program Set 2
RDS2MOD
PI, PS, Dynamic PS, RT,
AF, Group Sequence, ... PSN2

EON UDG

Messages
01-99

Scheduling Items,
Conditional Command

Network Settings

RDS2 Buffer / Station Logo


16 KB

7.10 Dynamic PS 1 and Dynamic PS 2 Summary

Dynamic PS 1 Dynamic PS 2
Real time showing capability yes, in mode 0 and 2 yes, in mode 0 and 2
Display modes available 4 4
Text queue available yes no
Max. text length 255 255
Max. queued text length 127 N/A
Removing redundant spaces from the text end yes, in mode 2 and 3 no
Allows transmission of Messages no yes
Commercials, news and Fixed texts from the
Typically used for
"on-air" texts Messages bank
54

8 Further Features
8.1 Bypass Relay
The RDS encoder board includes a bypass relay providing an alternative way for the MPX signal on power supply
failure (applies to loopthrough connection mode only).

8.2 On-board Program Set Switch


On-board program switch input allows selecting one of two program sets by an external device. This device can be a
simple switch or a device with digital output. The PROGRAM parameter must be set to 0 to enable this feature. The
program input is level controlled, the switch shut-off or logical 1 selects the Program set 1, the switch closure or
logical 0 selects the Program set 2.
Alternatively the switch input can be used for selecting a text message or for control of other RDS service or setting.
For more details see chapter 7.8 - Conditional Command.

8.3 On-board TA/EON1TA Switch


On-board TA/EON1TA switch input allows you to control the Traffic Announcement parameter by an external
device. This device can be a simple switch or a device with digital output. The TA input is level or edge activated, as
specified by the TATMOUT command.
 If level controlled, the switch closure or logic 0 activates the TA (sets to 1). The switch shut-off or logic 1
deactivates the TA (sets to 0).
 If edge activated, a falling edge (logic 1 to logic 0 transition) activates the TA. Then the TA is deactivated after the
duration specified by the TATMOUT command. Optionally a rising edge may deactivate the TA if occurs first.
The TATMOUT command doesn’t affect the EON1TA switching. If EON1TA is controlled using the on-board switch,
the control is always based on the level.

The switch function table:


TP (local) EON1 Enabled Switch function
1 don’t care TA
0 1 EON1TA
0 0 Switch disabled

8.4 Showing Real Time in Dynamic PS


It’s possible to show real time in Dynamic PS in mode 0 and 2. To show the time, the text must contain %HH-MM%%
string and this string must exactly fill the 8-character window. Then on each string occurrence the real time will be
displayed. The separator between hours and minutes is user selectable.

8.5 Real-Time Clock Backup


A battery-powered RTC circuit provides real-time backup for case of mains power supply interruption or switch off.
Use TIME and DATE commands to set the time and date information or simply use the Windows control software.

8.6 Firmware Upgrade


The RDS encoder has a firmware upgrade capability. This allows easily implementing of new features in future.
When a new firmware version is released, special simple Windows application provides the firmware upgrade. The
firmware upgrades are provided at no costs. Please refer to the website for more information.
55

8.7 RDS Output Monitoring


Want to see or verify the RDS and RDS2 output data? The encoder supports direct complete RDS output monitoring
on any communication port in real time using a desktop application. This unique feature allows complete RDS
output analysis without need of a receiver or special equipment.

RDS data is provided as ASCII coded RDS groups in raw format at the RDS group rate (11.4 groups per second for
each stream). The group content provided is equal to the group content being sent to output of the RDS encoder and
being seen by listeners. This format of data is directly supported by some easy to use applications (for example
freeware RDS Spy).

RDS Spy - Real-time freeware Radio Data System decoder and analyzer for Windows.

8.7.1 Monitoring the RDS Output Step-by-Step

1. For monitoring via Port 1, set the port speed to 19200 bps.
2. In the Windows control software, select the device (connection) of interest.
3. Click on the RDS Spy button:

4. The real-time RDS content will appear immediately.

8.8 On-line Support


Not sure how to set-up the unit?
Some RDS related feature is missing?

Feel free to contact us at https://pira.cz/forum/ or via email.

Important note: Before sending an email please make sure you have read entire content of this manual (incl. section
10.3), control software help file and also forum, F.A.Q. and tips on the website. Your question may be already
answered in this extensive knowledge base.
56

9 Universal Encoder Communication Protocol (UECP)


The UECP protocol (SPB 490) is an industrial standard for RDS encoder control to facilitate the inter-working of
various RDS systems components regardless of the supplier. Due to the fact that it cannot handle specific functions
and characteristics of a particular model, it is usually considered as a complementary method of the RDS encoder
control. It provides a possibility of frequent RDS services control for the UECP based systems whereas other services
have been set in advance using the way described on previous pages.
The UECP implementation in the P164 is only partial. Especially the overall architecture proposed by the UECP
specification is largely replaced by an alternative solution which better suits to typical areas of use. UECP commands
and functions that do not comply with the P164 concept, are rarely used or potentially insecure, are not implemented.

9.1 UECP Implementation


9.1.1 To turn-on the UECP support

1. Configure all RDS services and settings as required.


2. Where required, configure the RDS Encoder address and Site address using the commands *ADR= and *SITE=
or using the Windows control software (RDS Encoder – Device Setup).
3. Find out and set the right baudrate (speed) or network settings of the RDS encoder’s port.
4. The UECP support is disabled by default. Type UECP=1 and *UECP or use the Windows control software to
turn-on the UECP support.

9.1.2 General UECP frame (record) format

Note: Read more information about the UECP in the document "SPB 490 Universal Encoder Communication
Protocol" (published by RDS Forum).

9.1.3 UECP addressing

The address field of each UECP record comprises of two elements. These are:

 Site address, 0-1023 (most significant 10 bits)


 Encoder address, 0-63 (least significant 6 bits)

The RDS encoder incorporates two address lists; one of acceptable Site addresses (SITE) and the other of acceptable
Encoder addresses (ADR). A UECP record is acceptable to a particular encoder only if the site address is contained
within its site address list and the encoder address is contained within its encoder address list.

It is expected that many UECP commands will be sent to all encoders. For this reason a “global” address of 0 is
defined for both the site and encoder addresses. Thus the address lists always consist of addresses defined by user
and the “global” address of 0. Messages bearing the site address of 0 are deemed to be acceptable at all sites in the
system. Messages bearing the encoder address of 0 are deemed to be acceptable by all encoders at sites specified by
the accompanying site address.
57

9.1.4 The UECP implementation in the P164, its characteristics and restrictions

List of UECP commands accepted:


MEC Meaning Notes
01 PI
02 PS
03 TA/TP
04 DI/PTYI
05 MS
07 PTY
0A RT 1
0D Real time clock
1C Data set select
24 Free-format group 3, 4
30 TMC 3, 5
40 ODA configuration and short message command 3, 6
42 ODA free-format group 3, 7

Special fields in the UECP frame:


Field Handling
ADD Site address 0-1023, Encoder address 0-63, note 2.
Sequence counter – if consecutive UECP records have the same SQC value, only the first correctly
SQC
received record is applied. Except exists for records with SQC of 0x00 which are always accepted.
Message field length – In order to maintain overall robustness the MFL value must be exact,
MFL
otherwise the UECP frame is considered as corrupted and it’s discarded!
DSN must be 0 or 255 or equal to the DSN of actual program set. Otherwise the command is
DSN
discarded.
PSN must be 0 or equal to the PSN of actual program set or equal to any of the EON PSN in actual
PSN
program set. Otherwise the command is discarded.
CRC If CRC does not match, the UECP frame is considered as corrupted and it’s discarded.

Notes:
1) Supports RT buffering for up to two radiotexts – edits either the Radiotext 1 or Radiotext 2.
If using only one radiotext (most frequent case), at least the RT1 must be enabled (RT1EN=1). Beyond the UECP
specification, the radiotext may be optionally showed as Dynamic PS 1 (see the command EQTEXT1), in that
case the RT1 may be disabled.
If using two radiotext, both RT1 and RT2 must be enabled (RT1EN=1, RT2EN=1).
Control bits handling:
Bit 7 Ignored.
Bit 6 0: destination is RT1; 1: destination is RT2.
Bit 5 Ignored.
Bits 4..1 Ignored. The RDS encoder switches between two radiotexts using real-time base
(see the command RTPER) rather than using a number of transmissions for each radiotext.
Bit 0 0: do not toggle A/B flag; 1: toggle A/B flag.
2) The RDS encoder address list can contain up to three items for the Site address and up to three items for the
Encoder address. One of these items is always fixed to 0, the remaining two items can be changed using the
commands *SITE= and *ADR=.
3) Buffer size 16 groups (FIFO type), shared by all ODA, TMC and free-format Message elements. Number of
repeats is assigned to each group in the FIFO buffer so one group occupies one position in the buffer regardless
of number of repeats. See section 9.1.5.
4) Buffer configuration bit 5 ignored. Buffer configuration bit 6 meaning: 0 – no repeat, 1 – repeat the group one
time, then clear.
58

5) Full support except the priority and buffer configuration. The encoder automatically assures at least 3-group
long gap between any TMC groups in the data transmitted.
6) Timeout and buffer configuration ignored. Always inserts one group through the FIFO buffer.
7) Priority, mode and buffer configuration ignored. Always inserts one group through the FIFO buffer.
8) MEC's not included in the list above are ignored, incl. all possible Message elements that may follow within the
same Message field. Due to mistake in the UECP specification (unknown Message element length in general) it
may be impossible to detect following Message element within the same Message field. It's strongly
recommended for the UECP data providers not to insert more than one Message element inside each Message
field to maintain general compatibility and to keep the UECP really ‘universal’.

When the UECP is enabled, the RDS encoder accepts any mixture of ASCII commands and UECP records on the
same communication port. The UECP communication is always unidirectional. There are no responses sent to the
UECP records.

Any characters which follow the UECP start byte (0xFE) will be ignored by the ASCII command interpreter until one
of the following conditions occurs:

 reception of the UECP stop byte (0xFF)


 reception of up to 260 characters
 port timeout (2 minutes)

For this reason take care not to send the UECP start byte within an ASCII command when the UECP is enabled.

9.1.5 UECP buffer for user-defined RDS groups

In order to simplify the RDS encoder’s control and fit it to current applications, the device incorporates one global
UECP buffer for all groups inserted via MEC 24, 30, 40 and 42. This buffer is a FIFO type and its capacity is 16
groups.

Transparent UECP buffer


If there’s no symbol ‘U’ in the Group sequence, the UECP buffer is flushed into output stream as soon as possible,
taking higher priority above any other group (excluding time groups 4A generated by the RDS encoder). This is a
default configuration.

Batch UECP buffer


If there’s at least one symbol ‘U’ present in the Group sequence, the buffer inserts one group into the output stream
on the occurrence of the ‘U’ symbol. This makes a possibility to limit the speed of the buffer flushing but the groups
may be delayed on the output.

The UECP buffer scheme is as follows:

U EC P buffer

C om m and M EC 24, 30, 40, 42

interpreter
...
O ther com m ands
Num ber G roup type and group content
of repeats (blocks 2, 3, 4)

Num ber G roup type and group content


of repeats (blocks 2, 3, 4)

Num ber G roup type and group content


of repeats (blocks 2, 3, 4) O utput

Note: The UECP buffer applies only to user-defined RDS groups inserted via UECP protocol. The UECP buffer has no
meaning for other that those UECP MECs: 24, 30, 40 and 42.
59

9.2 Traffic Message Channel (TMC) Application Notes


9.2.1 Basic requirements

The TMC service can work only if there is an application that we can call 'TMC data provider'. The TMC data
provider collects all related information and translates it into RDS groups 8A type. The output of the TMC data
provider must be either by means of ASCII command G= or (more often) coded as UECP command with MEC 30. We
will deal with the second case in following text.

Nowadays the TMC service is coded as an ODA application. Thus there must be ODA AID groups 3A transmitted in
addition to the 8A groups. This can be done for example using the UECP MEC 24. The 3A groups typically carry
fixed content so in some cases they can be inserted into the RDS encoder also one-time using the command UDG1= or
UDG2=.

The Address and Site fields are optional. When the TMC data provider drives one RDS encoder only, these fields are
usually set to zero. However there can be more RDS encoders connected with various Address and Site values. Each
encoder will accept only the UECP records that match the Address and Site criteria. This configuration has been
tested successfully simulating a network of more than 60 encoders (equivalent to full load of one 9600 bps channel).

9.2.2 Preparing for the TMC transmission

1. Configure all static parameters of the RDS encoder (PI, PS, CT etc.). Enable the UECP (UECP=1 *UECP).
2. Where required, store the fixed 3A groups using the commands UDG1= or UDG2=
(for example: UDG1=30100646CD46,30104080CD46 *UDG1).
In this case make sure the UDG groups are included in the Group sequence (symbols X or Y).
3. Decide for the communication settings. Configure the RDS encoder and TMC data provider ports.
4. Configure the Site and Address values.

9.2.3 Application example

This application example shows TMC data and ODA AID information inserted by UECP commands 30 and 24.

Time Group UECP command Comment


...
9:27:58 3A: 8A 0646 CD46 FE 00 00 D0 07 24 06 10 06 46 CD 46 B9 68 FF ODA AID variant 0
9:27:58 8A: 07 C801 4689 FE 00 00 D1 08 30 06 06 07 C8 01 46 89 94 54 FF TMC 8A, two repeats
9:27:59 8A: 07 4984 6000 FE 00 00 D2 08 30 06 06 07 49 84 60 00 F2 5C FF TMC 8A, two repeats
9:27:59 3A: 8A 4080 CD46 FE 00 00 D3 07 24 06 10 40 80 CD 46 49 7E FF ODA AID variant 1
9:28:00 - FE 00 00 D4 09 0D 0A 0C 10 09 1C 00 00 02 60 F3 FF Encoder time adjust
9:28:00 8A: 01 883D 1A74 FE 00 00 D5 08 30 06 06 01 88 3D 1A 74 5F DC FF TMC 8A, two repeats
9:28:00 3A: 8A 0646 CD46 FE 00 00 D6 07 24 06 10 06 46 CD 46 E3 E0 FF ODA AID variant 0
9:28:01 8A: 02 8F50 15DD FE 00 00 D7 08 30 06 06 02 8F 50 15 DD D3 6E FF TMC 8A, two repeats
9:28:01 8A: 02 5404 ABD4 FE 00 00 D8 08 30 06 06 02 54 04 AB D4 1D E6 FF TMC 8A, two repeats
9:28:01 3A: 8A 4080 CD46 FE 00 00 D9 07 24 06 10 40 80 CD 46 A6 E6 FF ODA AID variant 1
9:28:02 8A: 05 497C 8000 FE 00 00 DA 08 30 06 06 05 49 7C 80 00 A6 D5 FF TMC 8A, two repeats
...

Notes:
1) Any RDS group inserted using the UECP elements 24, 30, 40 or 42 is put into the UECP buffer. See section 9.1.5
for more details. For TMC transmission it is recommended to leave the UECP buffer as transparent so the TMC
data providing application has full control over the TMC transmission. The encoder automatically ensures at
least 3-groups long gap between TMC groups.
60

10 Annexes
10.1 Character Set and Code-Table Conversions
Original RDS system, as defined by the standards, does not support Unicode character set. Default character set (G0)
used within the RDS system is limited to the characters provided in following EBU Latin code-table.

Basic set Extended set


Example of use:

Character 'é' can be found in the table on coordinates 8, 2. Thus it converts to ASCII character 0x82 (HEX) or 130.

A conversion is required for all characters outside the basic set region. If you use the Magic RDS control software, the
characters are converted automatically between Windows Unicode and RDS character set. Setting for that feature can
be made in Preferences - Local settings. Some functions are based on UTF-8 coding – conversion is made
automatically inside the RDS encoder.

Notes:

 Many commercially available receivers use 14-segment LCD displays. These receivers are able to display only a
limited part of the basic character set (green framed) and do not support the extended set at all. All lower-case
characters are showed as upper-case.
 The EBU Latin basic set is compatible with most of other systems so conversion is not required for this region.
 Since many receivers contain no support for the extended character set, it is recommended to keep all characters
in all text messages in the basic set region.
61

10.2 RDS Group Format


Following information is provided for better understanding to the RDS principles and the user defined group coding.

The largest element in the RDS coding structure is called a "group" of 104 bits each. Each group comprises 4 blocks of
26 bits each. Each block comprises an information word and a checkword. Each information word comprises 16 bits.
Each checkword comprises 10 bits.

All information words, checkwords, binary numbers or binary address values have their most significant bit (MSB)
transmitted first.

The data transmission is fully synchronous and there are no gaps between the groups or blocks. The basic data-rate
of the system is 1187.5 bit/s. Thus transmission of one group takes about 87.6 ms and about 11.4 groups are
transmitted per one second.

General RDS group format.

10.2.1 Basic principles and rules

 The services which are to be repeated most frequently, and for which a short acquisition time is required (PI, TP,
PTY), in general occupy the same fixed positions within every group.
 There is no fixed rhythm of repetition of the various types of group, i.e. there is ample flexibility to interleave the
various kinds of message to suit the needs of the users at any given time.
 The first four bits of the second block of every group are allocated to a four-bit code which specifies the
application of the group - group type. Groups are referred to as types 0 to 15.
 For each type (0 to 15) two "versions" can be defined. The "version" is specified by the fifth bit of block 2: 0 =
version A, 1 = version B.
 For all groups of version B the PI is inserted also in block 3 so this block cannot carry any other information when
version B of the group is used.

10.2.2 Remarks

 One complete PS label consists of 4 groups. So one PS takes 350 ms of the transmission time. It may be found from
experience that any RDS text should be transmitted at least twice to improve reception reliability. With regard to
other services included in the RDS the repetition rate of dynamic/scrolling PS usually cannot be lower than one
second.
 Checkwords and offsets are always computed and inserted automatically by the RDS encoder.
 PI is always inserted automatically by the RDS encoder in block 1, and also in block 3 for version B of the group.
Due to this the block 1 is never specified when inserting any user defined group.
 TP and PTY are always inserted automatically by the RDS encoder using OR method (logical sum) on the
appropriate bit positions.
62

10.2.3 TDC group coding (5A, 5B)

Group format in hexadecimal representation (version A): 50BBCCCCDDDD,


group format in hexadecimal representation (version B): 58BB0000DDDD,
where BB, CCCC and DDDD represent the contents of the block 2 (bits 4 to 0), block 3 and block 4.

10.2.4 IH group coding (6A, 6B)

Group format in hexadecimal representation (version A): 60BBCCCCDDDD,


group format in hexadecimal representation (version B): 68BB0000DDDD,
where BB, CCCC and DDDD represent the contents of the block 2 (bits 4 to 0), block 3 and block 4.

10.2.5 AID for ODA group coding (3A)

Group format in hexadecimal representation: 30BBCCCCDDDD,


where BB, CCCC and DDDD represent the contents of the block 2 (bits 4 to 0), block 3 and block 4.

These groups are used to identify the Open Data Application in use, on an RDS transmission. The type 3A group
conveys, to a receiver, information about which Open Data Applications are carried on a particular transmission
(AID Code) and in which groups they will be found (Application group type code).

The Application group type code and the AID Code are obligatory, while the Message field is optional and should be
set to zeros if not used.

Since the 3A groups usually carry fixed static content, they may be inserted using either the UDG1= or UDG2=
command for automatic cyclic transmission while the ODA application groups may be inserted by any command or
method (G=, UDG1=, UDG2= or UECP MEC 24 or 42).
63

10.2.6 Example of ODA user defined group coding (Radiotext Plus)

Let’s show the group coding example on the popular RT+ service. We need to insert group type 3A (Application
identification for ODA) to the RDS stream pointing to the RT+ service which is – in this example - carried in group
11A.

Let's assume following RT content: Enigma - The Eyes of Truth

Appropriate 3A and 11A groups have following structure and coding:

Group 3A

Let's assume following variable values:


AGT: group type 11, version A (0), rfu: reserved, set as zeros, CB flag: 0, SC flag: 0, TN: N/A, set as zeros, AID code
is 4BD7 for the RT+ service.

Blocks 2 to 4 in binary representation:


0011 0000 0001 0110 | 0000 0000 0000 0000 | 0100 1011 1101 0111

Blocks 2 to 4 in hexadecimal representation:


3016 | 0000 | 4BD7

Group 11A

Let's assume following variable values:


AGT: group type 11, version A (0), ITG: 0, IRB: 1, RTCT1: 1 (Title), SM1: 9 (10th RT character), LM1: 16 (17 characters
long), RTCT2: 4 (Artist), SM2: 0 (first RT character), LM2: 5 (6 characters long).

Blocks 2 to 4 in binary representation:


1011 0000 0000 1000 | 0010 0100 1010 0000 | 0010 0000 0000 0101

Blocks 2 to 4 in hexadecimal representation:


B008 | 24A0 | 2005

Inserting the RT+ groups using the UDG1 command:


UDG1=301600004BD7,B00824A02005

Note:
This example is for illustration only. The RT+ feature is directly supported by the RDS encoder (see section 5.1.2).
64

10.3 Troubleshooting
The RDS encoder has been designed to make its use as easy and painless as possible. However, success depends
upon a number of settings and things working together correctly. While correcting problems is usually quite simple,
the difficulty lays in knowing where to look.

Factory default settings assure right operation after first power-on. This section of the manual is designed to assist
you in determining the cause of problems that may occur so they can be fixed quickly.

Section Solution / Check


Problem
related Windows control software Terminal
No RDS output, no LED
4.3 Power supply problem.
indication.
RDS output connected to right input of the transmitter?
Adjust higher RDS level or higher input sensitivity on the transmitter.
No RDS output, but LED 4.1 RDS generator switched on?
indicates operation. 4.5.1
Device Setup – Analog Control –
RDSGEN=1
RDS Generator
Make sure all connectors are seated completely.
The unit does not
Make sure you have selected right COM port.
communicate with PC and 4.4
the LED does not indicate 6.1 Connection – Edit connection…
data receive.
Try the unit with different cable and different PC.
 Port baudrate differs from the device configuration.
The unit does not  Address does not match (applies to UECP only)
communicate with PC but 4.4 Enable Bidirectional and
the LED indicates that data is 7.6 Try typing any command on
Autodetect port speed options
received. 6.3.5 each baudrate.
(Connection – Edit connection…)
Device Setup – Communication –
Options – Port 1 Speed

Radiotext stopped working The RT service is not included in the Group sequence.
although I’m sure that it’s Initialize the Group sequence to its default value.
7.8
enabled and entered RDS Content – System – Group
correctly. GRPSEQ=
sequence – Default, Test, Apply.
Pilot tone is fed to the unit Device Setup – Analog Control –
4.1 EXTSYNC=1
but it is not indicated. Reference Source: Auto
The unit loses time and date
3.3 Replace the on-board battery.
after power off.
 The unit is not connected in loopthrough mode but the
loopthrough switch is in the LOOP position. Switch to the SIDE
The audio is distorted. 4.1 position.
There is a whistling in the 4.2.2  The RDS level considerably exceeds maximum value allowed.
audio. 4.5.1 Adjust lower RDS level. Use an FM analyzer for the best result.
 Applied input of the transmitter is not suitable for RDS. Follow
the transmitter’s documentation.
4.1 The unit is connected in loopthrough mode but the loopthrough
No audio on air
4.2.2 switch is in SIDE position. Switch to the LOOP position.

You might also like