User-configurable stack memory allocation defaults. More...

Macros

#define EMBER_TASK_COUNT (3)
The number of event tasks that can be tracked for the purpose of processor idling. More...
#define EMBER_HEAP_SIZE 2000
The size in bytes of the Ember heap. More...
#define EMBER_CHILD_TABLE_SIZE 0
The maximum number of children that a node may have set by default to 0. If the application includes the optional parent support stack feature, this should be adjusted accordingly. More...
#define EMBER_CHILD_TABLE_TOKEN_SIZE EMBER_CHILD_TABLE_SIZE
#define EMBER_CHILD_TIMEOUT_SEC 3600
Every child should exchange regularly some sort of traffic with the parent. Eventually, if traffic is not exchanged for a prolonged period of time, the parent will remove the child from the child table. Range extenders periodically exchange network-level commands with the coordinator. End devices and sleepy end devices can use emberPollForData() as keep alive mechanism. More...
#define EMBER_INDIRECT_QUEUE_SIZE 0
The maximum number of pending indirect packets set by default to 0. If the application includes the optional parent support stack feature, this should be adjusted accordingly. More...
#define EMBER_MAC_OUTGOING_QUEUE_SIZE 0
The maximum number of packets in the outgoing MAC queue set by default to 0. If the application includes the optional MAC queue stack feature, this should be adjusted accordingly. More...
#define EMBER_INDIRECT_TRANSMISSION_TIMEOUT_MS 8000
The maximum amount of time (in milliseconds) that the MAC will hold a message for indirect transmission to a child. More...
#define EMBER_MAX_INDIRECT_TRANSMISSION_TIMEOUT_MS 30000
#define EMBER_NWK_RANGE_EXTENDER_UPDATE_PERIOD_SEC 60
The period in seconds a range extender sends an update command to the coordinator containing the list of its children. More...
#define EMBER_MAC_ACK_TIMEOUT_MS 25
The ACK timeout in milliseconds. This parameter should be fine-tuned to reduce energy consumption for sleepy devices and depends on the data rate of the PHY configuration used. More...
#define EMBER_RADIO_CCA_THRESHOLD -65
The CCA threshold used at the MAC layer. More...
#define EMBER_FREQUENCY_HOPPING_SEED 0
The frequency hopping channel sequence generation seed. More...
#define EMBER_FREQUENCY_HOPPING_START_CHANNEL 0
The lowest channel on the frequency hopping list. More...
#define EMBER_FREQUENCY_HOPPING_END_CHANNEL 24
The highest channel on the frequency hopping list. More...
#define EMBER_FREQUENCY_HOPPING_CHANNEL_DURATION_MS 400
The time in milliseconds to stay on each channel for frequency hopping. More...
#define EMBER_FREQUENCY_HOPPING_CHANNEL_GUARD_DURATION_MS 20
The time in milliseconds to guard each channel while frequency hopping. No MAC activity is allowed when entering or exiting the slot. More...
#define EMBER_FREQUENCY_HOPPING_SERVER_FREQ_INFO_BROADCAST_PERIOD_S 15
The duration in seconds after which the server should broadcast its frequency hopping information to allow clients to realign. More...
#define EMBER_FREQUENCY_HOPPING_CLIENT_RESYNC_PERIOD_S 60
The duration in seconds after which the client should resync with the server if the last resync happened more than this duration ago. More...
#define EMBER_COORDINATOR_FIRST_SHORT_ID_TO_BE_ASSIGNED 1
A star coordinator assigns short IDs to other nodes in the star network sequentially starting from this short ID. This option provides a simple effective way to reserve an interval of short addresses. More...
#define EMBER_SECURITY_SHORT_TO_LONG_MAPPING_TABLE_SIZE 10
The size of the short-to-long address mapping table. More...

Detailed Description

User-configurable stack memory allocation defaults.

Note
Application developers should not modify any portion of this file. Doing so may cause mysterious bugs. Allocations should be adjusted only by defining the appropriate macros in the application's CONFIGURATION_HEADER.

See Configuration for documentation.

License

Copyright 2018 Silicon Laboratories Inc. www.silabs.com

The licensor of this software is Silicon Laboratories Inc. Your use of this software is governed by the terms of Silicon Labs Master Software License Agreement (MSLA) available at www.silabs.com/about-us/legal/master-software-license-agreement. This software is distributed to you in Source Code format and is governed by the sections of the MSLA applicable to Source Code.

All configurations have defaults. Therefore, many applications may not need to do anything special. However, you can override these defaults by creating a CONFIGURATION_HEADER and, within this header, defining the appropriate macro to a different size.

See ember-configuration-defaults.h for source code.

Macro Definition Documentation

#define EMBER_CHILD_TABLE_SIZE 0

The maximum number of children that a node may have set by default to 0. If the application includes the optional parent support stack feature, this should be adjusted accordingly.

Definition at line 62 of file ember-configuration-defaults.h .

#define EMBER_CHILD_TABLE_TOKEN_SIZE EMBER_CHILD_TABLE_SIZE

Definition at line 65 of file ember-configuration-defaults.h .

#define EMBER_CHILD_TIMEOUT_SEC 3600

Every child should exchange regularly some sort of traffic with the parent. Eventually, if traffic is not exchanged for a prolonged period of time, the parent will remove the child from the child table. Range extenders periodically exchange network-level commands with the coordinator. End devices and sleepy end devices can use emberPollForData() as keep alive mechanism.

Definition at line 75 of file ember-configuration-defaults.h .

#define EMBER_COORDINATOR_FIRST_SHORT_ID_TO_BE_ASSIGNED 1

A star coordinator assigns short IDs to other nodes in the star network sequentially starting from this short ID. This option provides a simple effective way to reserve an interval of short addresses.

Definition at line 182 of file ember-configuration-defaults.h .

#define EMBER_FREQUENCY_HOPPING_CHANNEL_DURATION_MS 400

The time in milliseconds to stay on each channel for frequency hopping.

Definition at line 153 of file ember-configuration-defaults.h .

#define EMBER_FREQUENCY_HOPPING_CHANNEL_GUARD_DURATION_MS 20

The time in milliseconds to guard each channel while frequency hopping. No MAC activity is allowed when entering or exiting the slot.

Definition at line 160 of file ember-configuration-defaults.h .

#define EMBER_FREQUENCY_HOPPING_CLIENT_RESYNC_PERIOD_S 60

The duration in seconds after which the client should resync with the server if the last resync happened more than this duration ago.

Definition at line 174 of file ember-configuration-defaults.h .

#define EMBER_FREQUENCY_HOPPING_END_CHANNEL 24

The highest channel on the frequency hopping list.

Definition at line 146 of file ember-configuration-defaults.h .

#define EMBER_FREQUENCY_HOPPING_SEED 0

The frequency hopping channel sequence generation seed.

Definition at line 134 of file ember-configuration-defaults.h .

#define EMBER_FREQUENCY_HOPPING_SERVER_FREQ_INFO_BROADCAST_PERIOD_S 15

The duration in seconds after which the server should broadcast its frequency hopping information to allow clients to realign.

Definition at line 167 of file ember-configuration-defaults.h .

#define EMBER_FREQUENCY_HOPPING_START_CHANNEL 0

The lowest channel on the frequency hopping list.

Definition at line 140 of file ember-configuration-defaults.h .

#define EMBER_HEAP_SIZE 2000

The size in bytes of the Ember heap.

Definition at line 54 of file ember-configuration-defaults.h .

#define EMBER_INDIRECT_QUEUE_SIZE 0

The maximum number of pending indirect packets set by default to 0. If the application includes the optional parent support stack feature, this should be adjusted accordingly.

Definition at line 83 of file ember-configuration-defaults.h .

#define EMBER_INDIRECT_TRANSMISSION_TIMEOUT_MS 8000

The maximum amount of time (in milliseconds) that the MAC will hold a message for indirect transmission to a child.

The default is 8000 milliseconds (8 sec). The maximum value is 30 seconds (30000 milliseconds). Larger values will cause rollover confusion.

Definition at line 102 of file ember-configuration-defaults.h .

#define EMBER_MAC_ACK_TIMEOUT_MS 25

The ACK timeout in milliseconds. This parameter should be fine-tuned to reduce energy consumption for sleepy devices and depends on the data rate of the PHY configuration used.

Definition at line 122 of file ember-configuration-defaults.h .

#define EMBER_MAC_OUTGOING_QUEUE_SIZE 0

The maximum number of packets in the outgoing MAC queue set by default to 0. If the application includes the optional MAC queue stack feature, this should be adjusted accordingly.

Definition at line 91 of file ember-configuration-defaults.h .

#define EMBER_MAX_INDIRECT_TRANSMISSION_TIMEOUT_MS 30000

Definition at line 104 of file ember-configuration-defaults.h .

#define EMBER_NWK_RANGE_EXTENDER_UPDATE_PERIOD_SEC 60

The period in seconds a range extender sends an update command to the coordinator containing the list of its children.

Definition at line 114 of file ember-configuration-defaults.h .

#define EMBER_RADIO_CCA_THRESHOLD -65

The CCA threshold used at the MAC layer.

Definition at line 128 of file ember-configuration-defaults.h .

#define EMBER_SECURITY_SHORT_TO_LONG_MAPPING_TABLE_SIZE 10

The size of the short-to-long address mapping table.

Definition at line 188 of file ember-configuration-defaults.h .

#define EMBER_TASK_COUNT (3)

The number of event tasks that can be tracked for the purpose of processor idling.

Definition at line 48 of file ember-configuration-defaults.h .