Developing with ZBOSS SDK for Zigbee
|
Macros | |
#define | ZB_INIT(trace_comment) |
Functions | |
zb_ret_t | zboss_start (void) |
ZBOSS start function. More... | |
zb_ret_t | zboss_start_no_autostart (void) |
void | zboss_start_continue (void) |
#define ZB_INIT | ( | trace_comment | ) |
Global stack initialization.
To be called from MAIN() at start.
Usual initialization sequence: ZB_INIT(), then assign some IB values, then zboss_start().
trace_comment | - trace file name component (valid for Unix, ignored at MCU) |
Example:
See any sample
zb_ret_t zboss_start | ( | void | ) |
ZBOSS start function.
Typical device start: init, load some parameters from NVRAM and proceed with startup.
Startup means either Formation (for ZC), rejoin or discovery/association join. After startup complete zboss_signal_handler callback is called, so application will know when to do some useful things.
Precondition: stack must be inited by ZB_INIT() call. ZB_INIT() sets default IB parameters, so caller has a chance to change some of them. Note that NVRAM will be loaded after zboss_start() call.
zb_ret_t zboss_start_no_autostart | ( | void | ) |
Start ZBOSS with only minimal initialization, without starting commissioning.
This function initializes scheduler and buffers pool, but not MAC and upper layers. Typically zboss_start_no_autostart() is used when application wants to do something before starting joining the network.
For example, you can use this function if it is needed to enable leds, timers or any other devices on periphery to work with them before starting working in a network. It's also useful if you want to run something locally during joining.
Application should later call ZBOSS commissioning initiation - for instance, bdb_start_top_level_commissioning()
To finish node initialization without triggering commissioning call bdb_start_top_level_commissioning() with commissioning mask 0 (no steering, no formation, initialization only).