BitCloud SDK for ATZB-DK-24 / ATZB-DK-A24 / ATZB-DK-900

v. 1.4.1

Introduction

The BitCloud is a full-featured, professional grade embedded software ZigBee stack from Atmel. The stack provides a software development platform for reliable, scalable, and secure wireless applications running on Atmel microcontrollers and radio transceivers. BitCloud is designed to support a broad ecosystem of user-designed applications addressing diverse requirements while enabling a full spectrum of software customization.

The BitCloud stack is fully compliant with ZigBee PRO and ZigBee standards for wireless sensing and control. It provides an augmented set of APIs which, while maintaining full compliance with the standard, offer extended functionality designed with developer's convenience and ease-of-use in mind.

BitCloud's target audience is system designers, embedded programmers and hardware engineers evaluating, prototyping, and deploying ZigBee solutions and products built on the Atmel hardware platform. BitCloud is delivered as a software development kit, which includes


Features

The BitCloud internal architecture follows IEEE 802.15.4™, ZigBee-defined convention of splitting the networking stack into logical layers. Besides the core stack containing protocol implementation, BitCloud contains additional layers implementing shared services (e.g. task manager, security, and power manager) and hardware abstractions (e.g. hardware abstraction layer HAL and board support package BSP). The APIs contributed by these layers are outside the scope of core stack functionality. However, these essential additions to the set of APIs significantly help reduce application complexity and simplify integration.

The topmost of the core stack layers, APS, provides the highest level of networking-related APIs visible to the application.

ZDO provides a set of fully compliant ZigBee Device Object APIs which enable main network management functionality (start, reset, formation, join) and power management (sleep, wakeup). ZDO also defines ZigBee Device Profile types, device and service discovery commands implemented by the stack, and provides APIs for unicast, multicast, and broadcast data transmission and acknowledgment.

There are three service "planes" including: task manager, security, and power manager. These services are available to the user application, and may also be utilized by lower stack layers.

Task manager is the stack scheduler which mediates the use of the MCU among internal stack components and user application. The task manager utilizes a proprietary priority queue-based algorithm specifically tuned for multi-layer stack environment and demands of time-critical network protocols.

Power management routines are responsible for gracefully shutting down all stack components and saving system state when preparing to sleep and restoring system state when waking up.

Hardware Abstraction Layer includes a complete set of APIs for using on-module hardware resources (EEPROM, app, sleep, and watchdog timers) as well as the reference drivers for rapid design-in and smooth integration with a range of external peripherals (IRQ, I2C, SPI, UART, 1-wire).

Board Support Package includes a complete set of drivers for managing standard peripherals (sensors, UID chip, sliders, and buttons) placed on a MeshBean development board.

Configuration server is a component of the stack that stores key stack configuration parameters and allows users to change them without recompiling the core stack layers. Users can configure the stack and specify key parameters (e.g. select tree vs. mesh routing, network fan-in, and depth, PAN ID, channel mask, etc.) all without managing multiple versions of the stack libraries.


BitCloud Software Stack Architecture

Network Topology

The BitCloud Stack supports star, tree, and mesh topologies. In a star topology, the network is controlled by one single device called coordinator. The coordinator is responsible for initiating and maintaining the devices on the network. All other devices, known as end devices, directly communicate with the coordinator. In mesh and tree topologies, the coordinator is responsible for starting the network and for choosing certain key network parameters, but the network may be extended through the use of routers.

BitCloud API Functions

The BitCloud API functions contained within this package fall into the categories related to the following layers:


Generated on Tue Jun 3 12:45:19 2008 for BitCloud Stack Documentation by  doxygen 1.5.1-p1