rf : RF Functions

Top  Previous  Next

 

The RF functions offer the basic functionality for near to medium range wireless communication in the ISM frequency band.

The RF functionality is not available on all RTCU products. Therefore please refer to the technical documentation on the specific product for further information.

 

The RF functionality is based on state-of-the-art technology to minimize data loss and to ensure the best possible coverage. It includes advanced features such as: hardware packet filtering, "listen-before-send", transmission power adaptation and sophisticated AGC.

 

The hardware filtering ensures that packages are only received that are actually accepted by the application. This functionality is typically used for transparent point-to-point communication between two communication nodes with minimal handling.

When sending a package with the rfSend() function, it is ensured that the package is sent, but it is not guaranteed that the package has actually been received by the peer node. If, however, the package is received by the peer-node, it is guaranteed to be complete and unaltered in the transmission process.

It is therefore the responsibility of the application to implement a suitable handshake schema to ensure that a package has actually been received by the peer.

 

All packages are processed by the hardware filter, and only packages addressed to the ID as set by the rfOpen() function are accepted. "Broadcast" packages are accepted by the hardware filtering as well. Broadcast packages have their destination set to ID=0 when sent by rfSend() and will be received by any node that is listening for packages.

 

These two filtering scenarios are illustrated below:

 

Broadcasting:


Addressing:

rf_broadcast


rf_addressed

When broadcasting, the receiver ID is "0". This ensures that any listing devices will receive the package - regardless of its own ID.


When defining a receiver ID, only those with same ID will receive the package

 

 

 

Transmission range:

 

Several parameters have influence on the transmission range. These include:

 

Noise from surroundings.

Transmitting power (see rfSetPower).

Baud rate - lower baud rate will increase range (see rfOpen).

 

Architecture of the RF API

The RF API is based on a synchronous model where data is either sent (rfSend) or received (rfReceive). Each function will lock the API until completed.

 

The following RF functions are available:

 


rfOpen

Opens the RF interface.


rfClose

Closes the RF interface.


rfReceive

Receives a package.


rfSend

Sends a package.


rfSetPower

Sets transmission power.

 

 


The implementation of RF has the following limitations:

 

Maximum package size is 60 bytes.