Zephyr Project API 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
IEEE 802.15.4 Net Management

IEEE 802.15.4 net management library. More...

Data Structures

struct  ieee802154_req_params
 Scanning parameters. More...
 
struct  ieee802154_security_params
 Security parameters. More...
 

Command Macros

IEEE 802.15.4 net management commands.

These IEEE 802.15.4 subsystem net management commands can be called by applications via Network Management macro.

All attributes and parameters are given in CPU byte order (scalars) or big endian (byte arrays) unless otherwise specified.

The following IEEE 802.15.4 MAC management service primitives are referenced in this enumeration:

  • MLME-ASSOCIATE.request, see section 8.2.3
  • MLME-DISASSOCIATE.request, see section 8.2.4
  • MLME-SET/GET.request, see section 8.2.6
  • MLME-SCAN.request, see section 8.2.11

The following IEEE 802.15.4 MAC data service primitives are referenced in this enumeration:

  • MLME-DATA.request, see section 8.3.2

MAC PIB attributes (mac.../sec...): see sections 8.4.3 and 9.5. PHY PIB attributes (phy...): see section 11.3. Both are accessed through MLME-SET/GET primitives.

#define NET_REQUEST_IEEE802154_SET_ACK   (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_ACK)
 Sets AckTx for all subsequent MLME-DATA (aka TX) requests.
 
#define NET_REQUEST_IEEE802154_UNSET_ACK    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_UNSET_ACK)
 Unsets AckTx for all subsequent MLME-DATA requests.
 
#define NET_REQUEST_IEEE802154_PASSIVE_SCAN    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_PASSIVE_SCAN)
 MLME-SCAN(PASSIVE, ...) request.
 
#define NET_REQUEST_IEEE802154_ACTIVE_SCAN    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_ACTIVE_SCAN)
 MLME-SCAN(ACTIVE, ...) request.
 
#define NET_REQUEST_IEEE802154_CANCEL_SCAN    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_CANCEL_SCAN)
 Cancels an ongoing MLME-SCAN(...) command (non-standard).
 
#define NET_REQUEST_IEEE802154_ASSOCIATE    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_ASSOCIATE)
 MLME-ASSOCIATE(...) request.
 
#define NET_REQUEST_IEEE802154_DISASSOCIATE    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_DISASSOCIATE)
 MLME-DISASSOCIATE(...) request.
 
#define NET_REQUEST_IEEE802154_SET_CHANNEL    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_CHANNEL)
 MLME-SET(phyCurrentChannel) request.
 
#define NET_REQUEST_IEEE802154_GET_CHANNEL    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_CHANNEL)
 MLME-GET(phyCurrentChannel) request.
 
#define NET_REQUEST_IEEE802154_SET_PAN_ID    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_PAN_ID)
 MLME-SET(macPanId) request.
 
#define NET_REQUEST_IEEE802154_GET_PAN_ID    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_PAN_ID)
 MLME-GET(macPanId) request.
 
#define NET_REQUEST_IEEE802154_SET_EXT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_EXT_ADDR)
 Sets the extended interface address (non-standard), see sections 7.1 and 8.4.3.1, in big endian byte order.
 
#define NET_REQUEST_IEEE802154_GET_EXT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_EXT_ADDR)
 like MLME-GET(macExtendedAddress) but in big endian byte order
 
#define NET_REQUEST_IEEE802154_SET_SHORT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_SHORT_ADDR)
 MLME-SET(macShortAddress) request, only allowed for co-ordinators.
 
#define NET_REQUEST_IEEE802154_GET_SHORT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_SHORT_ADDR)
 MLME-GET(macShortAddress) request.
 
#define NET_REQUEST_IEEE802154_GET_TX_POWER    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_TX_POWER)
 MLME-SET(phyUnicastTxPower/phyBroadcastTxPower) request (currently not distinguished)
 
#define NET_REQUEST_IEEE802154_SET_TX_POWER    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_TX_POWER)
 MLME-GET(phyUnicastTxPower/phyBroadcastTxPower) request.
 
#define NET_REQUEST_IEEE802154_SET_SECURITY_SETTINGS    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_SECURITY_SETTINGS)
 Configures basic sec* MAC PIB attributes, implies macSecurityEnabled=true.
 
#define NET_REQUEST_IEEE802154_GET_SECURITY_SETTINGS    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_SECURITY_SETTINGS)
 Gets the configured sec* attributes.
 

Event Macros

IEEE 802.15.4 net management events.

These IEEE 802.15.4 subsystem net management events can be subscribed to by applications via net_mgmt_init_event_callback, net_mgmt_add_event_callback and net_mgmt_del_event_callback.

#define NET_EVENT_IEEE802154_SCAN_RESULT    (_NET_IEEE802154_EVENT | NET_EVENT_IEEE802154_CMD_SCAN_RESULT)
 Signals the result of the NET_REQUEST_IEEE802154_ACTIVE_SCAN or NET_REQUEST_IEEE802154_PASSIVE_SCAN net management commands.
 

Detailed Description

IEEE 802.15.4 net management library.

Since
1.0
Version
0.8.0

The IEEE 802.15.4 net management library provides runtime configuration features that applications can interface with directly.

Most of these commands are also accessible via shell commands. See the shell's help feature (shell> ieee802154 help).

Note
All section, table and figure references are to the IEEE 802.15.4-2020 standard.

Macro Definition Documentation

◆ NET_EVENT_IEEE802154_SCAN_RESULT

#define NET_EVENT_IEEE802154_SCAN_RESULT    (_NET_IEEE802154_EVENT | NET_EVENT_IEEE802154_CMD_SCAN_RESULT)

#include <include/zephyr/net/ieee802154_mgmt.h>

Signals the result of the NET_REQUEST_IEEE802154_ACTIVE_SCAN or NET_REQUEST_IEEE802154_PASSIVE_SCAN net management commands.

See ieee802154_req_params for associated event parameters.

◆ NET_REQUEST_IEEE802154_ACTIVE_SCAN

#define NET_REQUEST_IEEE802154_ACTIVE_SCAN    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_ACTIVE_SCAN)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-SCAN(ACTIVE, ...) request.

See ieee802154_req_params for associated command parameters.

◆ NET_REQUEST_IEEE802154_ASSOCIATE

#define NET_REQUEST_IEEE802154_ASSOCIATE    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_ASSOCIATE)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-ASSOCIATE(...) request.

◆ NET_REQUEST_IEEE802154_CANCEL_SCAN

#define NET_REQUEST_IEEE802154_CANCEL_SCAN    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_CANCEL_SCAN)

#include <include/zephyr/net/ieee802154_mgmt.h>

Cancels an ongoing MLME-SCAN(...) command (non-standard).

◆ NET_REQUEST_IEEE802154_DISASSOCIATE

#define NET_REQUEST_IEEE802154_DISASSOCIATE    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_DISASSOCIATE)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-DISASSOCIATE(...) request.

◆ NET_REQUEST_IEEE802154_GET_CHANNEL

#define NET_REQUEST_IEEE802154_GET_CHANNEL    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_CHANNEL)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-GET(phyCurrentChannel) request.

◆ NET_REQUEST_IEEE802154_GET_EXT_ADDR

#define NET_REQUEST_IEEE802154_GET_EXT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_EXT_ADDR)

#include <include/zephyr/net/ieee802154_mgmt.h>

like MLME-GET(macExtendedAddress) but in big endian byte order

◆ NET_REQUEST_IEEE802154_GET_PAN_ID

#define NET_REQUEST_IEEE802154_GET_PAN_ID    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_PAN_ID)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-GET(macPanId) request.

◆ NET_REQUEST_IEEE802154_GET_SECURITY_SETTINGS

#define NET_REQUEST_IEEE802154_GET_SECURITY_SETTINGS    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_SECURITY_SETTINGS)

#include <include/zephyr/net/ieee802154_mgmt.h>

Gets the configured sec* attributes.

See ieee802154_security_params for associated command parameters.

◆ NET_REQUEST_IEEE802154_GET_SHORT_ADDR

#define NET_REQUEST_IEEE802154_GET_SHORT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_SHORT_ADDR)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-GET(macShortAddress) request.

◆ NET_REQUEST_IEEE802154_GET_TX_POWER

#define NET_REQUEST_IEEE802154_GET_TX_POWER    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_GET_TX_POWER)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-SET(phyUnicastTxPower/phyBroadcastTxPower) request (currently not distinguished)

◆ NET_REQUEST_IEEE802154_PASSIVE_SCAN

#define NET_REQUEST_IEEE802154_PASSIVE_SCAN    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_PASSIVE_SCAN)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-SCAN(PASSIVE, ...) request.

See ieee802154_req_params for associated command parameters.

◆ NET_REQUEST_IEEE802154_SET_ACK

#define NET_REQUEST_IEEE802154_SET_ACK   (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_ACK)

#include <include/zephyr/net/ieee802154_mgmt.h>

Sets AckTx for all subsequent MLME-DATA (aka TX) requests.

◆ NET_REQUEST_IEEE802154_SET_CHANNEL

#define NET_REQUEST_IEEE802154_SET_CHANNEL    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_CHANNEL)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-SET(phyCurrentChannel) request.

◆ NET_REQUEST_IEEE802154_SET_EXT_ADDR

#define NET_REQUEST_IEEE802154_SET_EXT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_EXT_ADDR)

#include <include/zephyr/net/ieee802154_mgmt.h>

Sets the extended interface address (non-standard), see sections 7.1 and 8.4.3.1, in big endian byte order.

◆ NET_REQUEST_IEEE802154_SET_PAN_ID

#define NET_REQUEST_IEEE802154_SET_PAN_ID    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_PAN_ID)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-SET(macPanId) request.

◆ NET_REQUEST_IEEE802154_SET_SECURITY_SETTINGS

#define NET_REQUEST_IEEE802154_SET_SECURITY_SETTINGS    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_SECURITY_SETTINGS)

#include <include/zephyr/net/ieee802154_mgmt.h>

Configures basic sec* MAC PIB attributes, implies macSecurityEnabled=true.

See ieee802154_security_params for associated command parameters.

◆ NET_REQUEST_IEEE802154_SET_SHORT_ADDR

#define NET_REQUEST_IEEE802154_SET_SHORT_ADDR    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_SHORT_ADDR)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-SET(macShortAddress) request, only allowed for co-ordinators.

◆ NET_REQUEST_IEEE802154_SET_TX_POWER

#define NET_REQUEST_IEEE802154_SET_TX_POWER    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_SET_TX_POWER)

#include <include/zephyr/net/ieee802154_mgmt.h>

MLME-GET(phyUnicastTxPower/phyBroadcastTxPower) request.

◆ NET_REQUEST_IEEE802154_UNSET_ACK

#define NET_REQUEST_IEEE802154_UNSET_ACK    (_NET_IEEE802154_BASE | NET_REQUEST_IEEE802154_CMD_UNSET_ACK)

#include <include/zephyr/net/ieee802154_mgmt.h>

Unsets AckTx for all subsequent MLME-DATA requests.