# rfPacketErrorRate

SysConfig Notice

All examples will soon be supported by SysConfig, a tool that will help you graphically configure your software components. A preview is available today in the examples/syscfg_preview directory. Starting in 3Q 2019, with SDK version 3.30, only SysConfig-enabled versions of examples will be provided. For more information, click here.


Project Setup using the System Configuration Tool (SysConfig)

The purpose of SysConfig is to provide an easy to use interface for configuring drivers, RF stacks, and more. The .syscfg file provided with each example project has been configured and tested for that project. Changes to the .syscfg file may alter the behavior of the example away from default. Some parameters configured in SysConfig may require the use of specific APIs or additional modifications in the application source code. More information can be found in SysConfig by hovering over a configurable and clicking the question mark (?) next to it's name.

Example Summary

The Packet Error Rate (PER) example showcases different RF transfer modes of the CC13xx and CC2640R2. It combines tasks, events and several peripherals to a platform- independent application and runs on all CC13xx and CC2640R2 launchpads as well as the CC1310EM/SmartRF06.

Test cases are provided for the following RF modes:

Note that - HSM and OOK are not supported on the CC1310-CC1190, CC1350 (433 MHz), CC1352 (R1/P1/P-2/P-4) or CC2640R2 Launchpads - Legacy Long Range Mode (LRM) is not supported on the CC1352(R1/P1/P-2/P-4). - For the GFSK 200K mode, if transmitting from Smart RF Studio set the PSDU octet transmission order to MSbit First

Peripherals Exercised

This example uses the following CC13xx peripherals:

Resources & Jumper Settings

If you're using an IDE (such as CCS or IAR), please refer to Board.html in your project directory for resources used and board-specific jumper settings. Otherwise, you can find Board.html in the directory <SDK_INSTALL_DIR>/source/ti/boards/<BOARD>.

Board Specific Settings

  1. On the CC1352P1 the user has the ability to turn on the high PA (high output power) for all Sub-1 GHz modes, but not for the BLE/BLE5 modes.
  2. On the CC1352P-2 the the user has the ability to turn on the high PA (high output power) for the BLE/BLE5 modes but not the Sub-1 GHz modes.
  3. On the CC1352P-4 the user has the ability to turn on the high PA (high output power) for all Sub-1 GHz modes, but not for the BLE/BLE5 modes.
    • The center frequency for 2-GFSK can be set to either 433.92 MHz or 490 MHz
    • The center frequency for SimpleLink long range (SLR) is set to 433.92 MHz
    • CAUTION: Note that enabling the high PA (high output power) for 433.92 MHz violates the maximum power output restriction for this band.
    • CAUTION: The CC1352P-4 high PA is optimized for the 490 MHz band. If the user enables it in the 433 MHz band it will transmit at a lower output power than what is set.
  4. The CC2640R2 is setup to run all proprietary physical modes at a center frequency of 2440 MHz, at a data rate of either 250 Kbps or 100 Kbps

Example Usage

This example requires two boards, each running the PER Test application. However, the packet format is identical to the default one in SmartRF Studio, so that any compatible hardware can be used as well.

  1. Connect a display to the board or alternatively, use the UART and hook it to a VT100-compatible terminal emulator at 115200 Baud. Use PuTTY or TeraTerm on Microsoft Windows. On Linux, use the terminal emulator that is shipped with your distribution. After a splash screen, you will see the main menu (the range extender option (CC1190) is only shown for CC1310 LAUNCHXL):

    Main Menu
    >Test: Rx
     Mode: 2-GFSK
     Freq: 868.0
     Pkts: 10
     Interval: --
     Length: --
     CC1190: Disable
    
     Start...
    
  2. Navigate through the rows with BTN-2/DOWN, modify a value or start the selected test with BTN-1/UP. Note that it is the user's responsibility to enable CC1190 from the menu when running CC1310-CC1190 LAUNCHXL. The P variants of the CC1352 have an in-built PA that allow for higher transmission for either Sub-1 or 2.4 GHz bands; there is a menu line option to enable or disable the high PA for these devices

  3. Use a second board with the PER test application as test companion for transmissions. Once started, the current progress is shown with these menus (TX mode on the left side, RX on the right):

    Sending...      |  Receiving...
    2-GFSK  868.0   |  HS Mode 868.0
                    |  Pkts ok   : 39
    Pkts sent: 47   |  RSSI [dBm]: -74
    Pwr[dBm] : 10   |  PER  [%]  : 17.01
    DR[bps]  : 50000|  TP[bps]: 20867
    Interval : 60 ms|
                    |  Push a button
                    |  to abort.
    

    The receiver prints the amount of successfully received packets (Pkts ok), the Signal strength of the current packet (RSSI), the observed packet error rate (PER) in percent, and the observed throughput in bits per second. Please note that the PER is n/a when sending more packets than configured in the receiver.

  4. You can always abort a running test case by pushing any button and go back to the main menu.

Application Design Details

The PER test application contains of one main task and an event handler to synchronize the task with buttons. After setting up all resources, the menu task is started and runs in an endless loop. It shows the menu and invokes test cases in either rx.c or tx.c.

Changelog

Version 1.1

Version 1.0

Version 2.0

Version 2.1

Version 2.2

Version 2.3

Version 2.4

Version 2.40.01

Version 2.40.02

Version 2.40.03