SimpleLink™ CC13x0 Proprietary RF User's Guide
2.40.01
  • Proprietary RF Quick Start Guide
  • Examples User’s Guide
  • RF Core
  • Proprietary physical layer
  • EasyLink layer
    • Overview
    • General Behavior
    • Error Handling
    • Supported Functions
    • Frame Structure
  • Over the Air Download (OAD)
  • API References
SimpleLink™ CC13x0 Proprietary RF User's Guide
  • Docs »
  • EasyLink layer

EasyLink layer¶

Overview¶

The EasyLink API should be used in application code. The EasyLink API is intended to abstract the RF Driver in order to give a simple API for customers to use as is or extend to suit their application use cases.

For API descriptions, see the EasyLink API reference.

General Behavior¶

Before using the EasyLink API the EasyLink Layer is initialized by calling EasyLink_init(). This initialises and opens the RF driver and configures the modulation scheme passed to EasyLink_init.

The RX and TX can operate independently of each other.

RX is enabled by calling EasyLink_receive() or EasyLink_receiveAsync(). Entering RX can be immediate or scheduled by using the EasyLink_RxPacket::absTime field. EasyLink_receive() is blocking and EasyLink_receiveAsync() is nonblocking. The EasyLink API does not queue messages so calling another API function while in EasyLink_receiveAsync() will return EasyLink_Status_Busy_Error. An Asynchronous Rx operation can be cancelled with EasyLink_abort().

TX is enabled by calling EasyLink_transmit() or EasyLink_transmitAsync(). TX can be immediate or scheduled by using the EasyLink_TxPacket::absTime field. EasyLink_transmit() is blocking and EasyLink_transmitAsync() is nonblocking. The EasyLink API does not queue messages so calling another API function while in EasyLink_transmitAsync() will return EasyLink_Status_Busy_Error An Asynchronous operation can be cancelled with EasyLink_abort().

Error Handling¶

The EasyLink API will return EasyLink_Status containing success or error code.

The EasyLink_Status code are:

EasyLink_Status_Success
EasyLink_Status_Config_Error
EasyLink_Status_Param_Error
EasyLink_Status_Mem_Error
EasyLink_Status_Cmd_Error
EasyLink_Status_Tx_Error
EasyLink_Status_Rx_Error
EasyLink_Status_Rx_Timeout
EasyLink_Status_Busy_Error
EasyLink_Status_Aborted

Supported Functions¶

Generic API function Description
EasyLink_init() Init’s and opens the RF driver and configures the specified modulation
EasyLink_transmit() Blocking Transmit
EasyLink_transmitAsync() Nonblocking Transmit
EasyLink_receive() Blocking Receive
EasyLink_receiveAsync() Nonblocking Receive
EasyLink_abort() Aborts a non blocking call
EasyLink_EnableRxAddrFilter() Enables/Disables RX filtering on the Addr
EasyLink_GetIeeeAddr() Gets the IEEE Address
EasyLink_SetFreq() Sets the frequency
EasyLink_GetFreq() Gets the frequency
EasyLink_SetRfPwr() Sets the Tx Power
EasyLink_GetRfPwr() Gets the Tx Power

Frame Structure¶

The EasyLink implements a basic header for transmitting and receiving data. This header supports addressing for a star or point-to-point network with acknowledgements.

Packet structure:

1B Length 1-64b Dst Address Payload
Next Previous

2016-2018, Texas Instruments, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale