This module includes the platform abstraction for a radio frame.

Classes

struct otExtAddress
This structure represents the IEEE 802.15.4 Extended Address.
struct otRadioIeInfo
This structure represents the IEEE 802.15.4 Header IE (Information Element) related information of a radio frame.
struct otRadioFrame
This structure represents an IEEE 802.15.4 radio frame.
struct otRadioCoexMetrics
The following are valid radio state transitions:

Macros

#define OT_PANID_BROADCAST 0xffff
IEEE 802.15.4 Broadcast PAN ID.
#define OT_EXT_ADDRESS_SIZE 8
Size of an IEEE 802.15.4 Extended Address (bytes)

Typedefs

typedef uint8_t otRadioCaps
This type represents radio capabilities.
typedef uint16_t otPanId
This type represents the IEEE 802.15.4 PAN ID.
typedef uint16_t otShortAddress
This type represents the IEEE 802.15.4 Short Address.
typedef struct otExtAddress otExtAddress
This structure represents the IEEE 802.15.4 Extended Address.
typedef struct otRadioIeInfo otRadioIeInfo
This structure represents the IEEE 802.15.4 Header IE (Information Element) related information of a radio frame.
typedef struct otRadioFrame otRadioFrame
This structure represents an IEEE 802.15.4 radio frame.
typedef enum otRadioState otRadioState
This structure represents the state of a radio.
typedef struct otRadioCoexMetrics otRadioCoexMetrics
The following are valid radio state transitions:

Enumerations

enum {
OT_RADIO_FRAME_MAX_SIZE = 127,
OT_RADIO_SYMBOLS_PER_OCTET = 2,
OT_RADIO_BIT_RATE = 250000,
OT_RADIO_BITS_PER_OCTET = 8,
OT_RADIO_SYMBOL_TIME = ((OT_RADIO_BITS_PER_OCTET / OT_RADIO_SYMBOLS_PER_OCTET) * 1000000) / OT_RADIO_BIT_RATE,
OT_RADIO_LQI_NONE = 0,
OT_RADIO_RSSI_INVALID = 127
}
enum {
OT_RADIO_CHANNEL_PAGE_0 = 0,
OT_RADIO_CHANNEL_PAGE_0_MASK = (1U << OT_RADIO_CHANNEL_PAGE_0),
OT_RADIO_CHANNEL_PAGE_2 = 2,
OT_RADIO_CHANNEL_PAGE_2_MASK = (1U << OT_RADIO_CHANNEL_PAGE_2),
OT_RADIO_CHANNEL_PAGE_MAX = OT_RADIO_CHANNEL_PAGE_2
}
This enumeration defines the channel page.
enum {
OT_RADIO_915MHZ_OQPSK_CHANNEL_MIN = 1,
OT_RADIO_915MHZ_OQPSK_CHANNEL_MAX = 10,
OT_RADIO_915MHZ_OQPSK_CHANNEL_MASK = 0x3ff << OT_RADIO_915MHZ_OQPSK_CHANNEL_MIN,
OT_RADIO_2P4GHZ_OQPSK_CHANNEL_MIN = 11,
OT_RADIO_2P4GHZ_OQPSK_CHANNEL_MAX = 26,
OT_RADIO_2P4GHZ_OQPSK_CHANNEL_MASK = 0xffff << OT_RADIO_2P4GHZ_OQPSK_CHANNEL_MIN
}
This enumeration defines the frequency band channel range.
enum {
OT_RADIO_CAPS_NONE = 0,
OT_RADIO_CAPS_ACK_TIMEOUT = 1 << 0,
OT_RADIO_CAPS_ENERGY_SCAN = 1 << 1,
OT_RADIO_CAPS_TRANSMIT_RETRIES = 1 << 2,
OT_RADIO_CAPS_CSMA_BACKOFF = 1 << 3,
OT_RADIO_CAPS_SLEEP_TO_TX = 1 << 4
}
This enumeration defines constants that are used to indicate different radio capabilities.
enum otRadioState {
OT_RADIO_STATE_DISABLED = 0,
OT_RADIO_STATE_SLEEP = 1,
OT_RADIO_STATE_RECEIVE = 2,
OT_RADIO_STATE_TRANSMIT = 3,
OT_RADIO_STATE_INVALID = 255
}
This structure represents the state of a radio.

Variables

OT_TOOL_PACKED_BEGIN struct otExtAddress OT_TOOL_PACKED_END

Detailed Description

This module includes the platform abstraction for a radio frame.

Typedef Documentation

otRadioCaps

typedef uint8_t otRadioCaps

This type represents radio capabilities.

The value is a bit-field indicating the capabilities supported by the radio. See OT_RADIO_CAPS_* definitions.

otRadioCoexMetrics

The following are valid radio state transitions:

(Radio ON) +----——+ Enable() +-——+ Receive() +---——+ Transmit() +----——+ | |-----——>| |-----——>| |--------——>| | | Disabled | | Sleep | | Receive | | Transmit | | |<-----——| |<-----——| |<--------——| | +----——+ Disable() +-——+ Sleep() +---——+ Receive() +----——+ (Radio OFF) or signal TransmitDone

During the IEEE 802.15.4 data request command the transition Sleep->Receive->Transmit can be shortened to direct transition from Sleep to Transmit if the platform supports the OT_RADIO_CAPS_SLEEP_TO_TX capability. This structure represents radio coexistence metrics.

otRadioState

This structure represents the state of a radio.

Initially, a radio is in the Disabled state.

Enumeration Type Documentation

anonymous enum

anonymous enum

This enumeration defines the channel page.

Enumerator
OT_RADIO_CHANNEL_PAGE_0

2.4 GHz IEEE 802.15.4-2006

OT_RADIO_CHANNEL_PAGE_0_MASK

2.4 GHz IEEE 802.15.4-2006

OT_RADIO_CHANNEL_PAGE_2

915 MHz IEEE 802.15.4-2006

OT_RADIO_CHANNEL_PAGE_2_MASK

915 MHz IEEE 802.15.4-2006

OT_RADIO_CHANNEL_PAGE_MAX

Maximum supported channel page value.

anonymous enum

anonymous enum

This enumeration defines the frequency band channel range.

Enumerator
OT_RADIO_915MHZ_OQPSK_CHANNEL_MIN

915 MHz IEEE 802.15.4-2006

OT_RADIO_915MHZ_OQPSK_CHANNEL_MAX

915 MHz IEEE 802.15.4-2006

OT_RADIO_915MHZ_OQPSK_CHANNEL_MASK

915 MHz IEEE 802.15.4-2006

OT_RADIO_2P4GHZ_OQPSK_CHANNEL_MIN

2.4 GHz IEEE 802.15.4-2006

OT_RADIO_2P4GHZ_OQPSK_CHANNEL_MAX

2.4 GHz IEEE 802.15.4-2006

OT_RADIO_2P4GHZ_OQPSK_CHANNEL_MASK

2.4 GHz IEEE 802.15.4-2006

anonymous enum

anonymous enum

This enumeration defines constants that are used to indicate different radio capabilities.

See otRadioCaps .

Enumerator
OT_RADIO_CAPS_NONE

Radio supports no capability.

OT_RADIO_CAPS_ACK_TIMEOUT

Radio supports AckTime event.

OT_RADIO_CAPS_ENERGY_SCAN

Radio supports Energy Scans.

OT_RADIO_CAPS_TRANSMIT_RETRIES

Radio supports tx retry logic with collision avoidance (CSMA).

OT_RADIO_CAPS_CSMA_BACKOFF

Radio supports CSMA backoff for frame transmission (but no retry).

OT_RADIO_CAPS_SLEEP_TO_TX

Radio supports direct transition from sleep to TX with CSMA.

anonymous enum

anonymous enum
Enumerator
OT_RADIO_FRAME_MAX_SIZE

aMaxPHYPacketSize (IEEE 802.15.4-2006)

OT_RADIO_SYMBOLS_PER_OCTET

2.4 GHz IEEE 802.15.4-2006

OT_RADIO_BIT_RATE

2.4 GHz IEEE 802.15.4 (bits per second)

OT_RADIO_BITS_PER_OCTET

Number of bits per octet.

OT_RADIO_LQI_NONE

LQI measurement not supported.

OT_RADIO_RSSI_INVALID

Invalid or unknown RSSI value.

otRadioState

This structure represents the state of a radio.

Initially, a radio is in the Disabled state.