This project demonstrates packet transmitting using RAIL.
To get more information about the topic of transmit, read our related article.
Important
This application lacks error handling and other critical features for readability. It is intended solely for educational purposes and is not recommended as a foundation for development.
SiSDK 2024.06.00 and above
EFR32 Series 2
Connect a Development Kit to your PC.
Board ID | Description |
---|---|
BRD4182A | EFR32xG22 2.4 GHz 6 dBm Radio Board |
BRD4204D | EFR32ZG23 868-915 MHz 14 dBm Radio Board |
BRD4187C | EFR32xG24 Wireless 2.4 GHz +20 dBm Radio Board |
BRD4270B | EFR32FG25 902-928 MHz +16 dBm Radio Board |
BRD4194A | EFR32xG27 Wireless 2.4 GHz +8 dBm Radio Board |
BRD4401C | EFR32xG28 868/915 MHz 20 dBm + 2.4 GHz 10 dBm Radio Board |
- Generate Project with Simplicity Studio v5 or with SLC CLI.
- Adjust parameters detailed in the Configuration section below.
- Build and flash the project on one board.
This project demonstrates how a packet can be transmitted with RAIL. To use this application you need at least one node (transmitter), however to receive the transmitted packets you will also need a receiver node. For more information about packet reception, see RAIL Tutorial 4: Downloading messages.
For the receiver, you can use an application like RAILtest or the Simple TRX example configured with the same radio settings to ensure compatibility during packet reception.
Before transmission, the transmitter increases the last byte of the payload to act as a counter of the transmitted packets.
SL_TUTORIAL_TRANSMIT_PAYLOAD_LENGTH
is a variable used to define the payload length for transmission in the application. Its value should align with the payload length determined by the radio configuration when using a fixed-length configuration. Additionally, it must not exceed the value ofSL_TUTORIAL_TRANSMIT_BUFFER_LENGTH
. The length of the Tx buffer should be set according to the radio configuration using this parameter. TheSL_TUTORIAL_TRANSMIT_DEFAULT_CHANNEL
parameter determines the index of the channel that is used for packet transmission (see available channels in the radio_settings.radioconf file of the project).
To initiate a packet transmission, you need to press the PB0 button.
Additional project-specific configurations can be found in the
<project_root>/config/sl_rail_tutorial_transmit_config.h
file. These
configurations are not currently accessible through the UI as component
settings, so you will need to modify them manually using a text editor or IDE.
Sets Payload length in bytes.
Sets Tx Buffer length in bytes.
Set the index of the default channel used to transmit.
- Only configured channel index can be used (see available channels in the radio_settings.radioconf file of the project).