Accelerate your ZigBee design using the new TI ZigBee Processor

Similar documents
ZigBee Technology Overview

Microchip Technology. February 2008 Valerio Moretto Slide 1

Network Enabled Battery Health Monitoring System

ZIGBEE ECGR-6185 Advanced Embedded Systems. Charlotte. University of North Carolina-Charlotte. Chaitanya Misal Vamsee Krishna

APPLICATION NOTE. AVR2130: Lightweight Mesh Developer Guide. Atmel MCU Wireless. Features. Description

Wireless Microcontrollers for Environment Management, Asset Tracking and Consumer. October 2009

Use of the ZENA MiWi and P2P Packet Sniffer

An Overview of ZigBee Networks

Crossroads Copenhagen

Radiocrafts Embedded Wireless Solutions

Figure 1. The Example of ZigBee AODV Algorithm

Supporting ZDOs with the XBee API

Silabs Ember Development Tools

AN965. Microchip Stack for the ZigBee Protocol ASSUMPTION INTRODUCTION FEATURES LIMITATIONS

QSG105 GETTING STARTED WITH SILICON LABS WIRELESS NETWORKING SOFTWARE

AN1066. MiWi Wireless Networking Protocol Stack CONSIDERATIONS INTRODUCTION TERMINOLOGY FEATURES

MeshBee Open Source ZigBee RF Module CookBook

Introduction to Zibgbee Technology

Z-Stack Sample Applications

Figure 1.Block diagram of inventory management system using Proximity sensors.

USER GUIDE EDBG. Description

Z-Stack Linux Gateway User s Guide

Building a Basic Communication Network using XBee DigiMesh. Keywords: XBee, Networking, Zigbee, Digimesh, Mesh, Python, Smart Home

Power Characterisation of a Zigbee Wireless Network in a Real Time Monitoring Application

IEEE /ZigBee USB Dongle

The Internet of Things: Opportunities & Challenges

BLUETOOTH SERIAL PORT PROFILE. iwrap APPLICATION NOTE

Surveillance System Using Wireless Sensor Networks

WISE-4000 Series. WISE IoT Wireless I/O Modules

BLUETOOTH SMART CABLE REPLACEMENT

Wireless Control Communication for Mechatronic Systems

UG103.2: Application Development Fundamentals: ZigBee

The design of home care assistant system by the ZigBee technology

LoRa FAQs. 1 of 4 Semtech. Semtech Corporation LoRa FAQ

A DIY Hardware Packet Sniffer

RC2200DK Demonstration Kit User Manual

Wireless monitoring system for temperature and humidity based on ZigBee

Synapse s SNAP Network Operating System

USER GUIDE. ZigBit USB Stick User Guide. Introduction

Customer Specific Wireless Network Solutions Based on Standard IEEE

Using Xbee in Serial Communication

Freescale Development Kits IEEE Wireless design made simple. freescale.com/802154

ZigBee PRO Stack User Guide

Data Sheet. Adaptive Design ltd. Arduino Dual L6470 Stepper Motor Shield V th November L6470 Stepper Motor Shield

Zigbee-Based Wireless Distance Measuring Sensor System

Design of a Wireless Medical Monitoring System * Chavabathina Lavanya 1 G.Manikumar 2

Automotive electronics CAN and LIN buses. Copyright 2006 Matrix Multimedia Limited

Online Communication of Critical Parameters in Powerplant Using ZIGBEE

USR-TCP232-T Hard Version: V2.0 Doc Version: V

CONTROL MICROSYSTEMS DNP3. User and Reference Manual

Measurement and Analysis Introduction of ISO7816 (Smart Card)

ZigBee Home Automation User Guide

Wireless Patient Monitoring System Using Point to Multi Point Zigbee Technology

F2103 GPRS DTU USER MANUAL

GTS-4E Hardware User Manual. Version: V1.1.0 Date:

Testing Data Radio Modem with Serial Port Tool V1.20

Demystifying Wireless for Real-World Measurement Applications

The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications

EDK 350 (868 MHz) EDK 350U (902 MHz) EnOcean Developer Kit

UG105 ADVANCED APPLICATION PROGRAMMING WITH THE STACK AND HAL APIS

ZigBee Sensor Monitor SWRU157D 2008 Low-Power RF

Wifi Web Server Module w TF Socket User s Guide

The design and implementation of the environment monitoring system of smart home based on EnOcean technology

WASP User Manual. Revision: 1.6. (c) 2012 North Pole Engineering, Inc.

UG103.9 EMBER APPLICATION DEVELOPMENT FUNDAMENTALS: ZLL

Elettronica dei Sistemi Digitali Costantino Giaconia SERIAL I/O COMMON PROTOCOLS

Questions from The New SensorTag - IoT Made Easy Webinar

This idea could limit unnecessary visits and help developing countries to provide healthcare remotely as well.

Wireless Personal Area Networks (WPANs)

APPLICATION NOTE. AVR2052: BitCloud SDK Quick Start Guide. Atmel MCU Wireless. Introduction. Features

User s Manual of Board Microcontroller ET-MEGA2560-ADK ET-MEGA2560-ADK

AN588 ENERGY HARVESTING REFERENCE DESIGN USER S GUIDE. 1. Kit Contents. 2. Introduction. Figure 1. Energy Harvesting Sensor Node

A Wireless Sensor Network for Weather and Disaster Alarm Systems

UG103.8 APPLICATION DEVELOPMENT FUNDAMENTALS: TOOLS

Wireless Technologies for Automation

Implementing SPI Master and Slave Functionality Using the Z8 Encore! F083A

Thingsquare Technology

Wireless Sensor Networks

SPI I2C LIN Ethernet. u Today: Wired embedded networks. u Next lecture: CAN bus u Then: wireless embedded network

Internet of Things based approach to Agriculture Monitoring

Reducing Configuration Complexity with Next Gen IoT Networks

Bluetooth Health Device Profile and the IEEE Medical Device Frame Work

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor.

The System Design and Implementation of Vehicle Management

Bidirectional wireless communication using EmbedRF

XBEE PROTOCOL COMPARISON

An Analysis of Wireless Device Implementations on Universal Serial Bus

IT 3202 Internet Working (New)

Chapter 7 Low-Speed Wireless Local Area Networks

FLYPORT Wi-Fi G

UG103-13: Application Development Fundamentals: RAIL

Adding WiFi to Your Embedded System. WPG Americas & Gainspan Titus Wandinger (WPG) & Su Li (Gainspan) April 23, 2013

524 Computer Networks

Communication Networks. MAP-TELE 2011/12 José Ruela

AT12181: ATWINC1500 Wi-Fi Network Controller - AP Provision Mode. Introduction. Features. Atmel SmartConnect APPLICATION NOTE

UG129: ZigBee USB Virtual Gateway Reference Design (RD ) User's Guide

DISTRIBUTED WIRELESS MECHATRONIC SYSTEM OPERATED FROM MATLAB-SIMULINK ENVIRONMENT

Design of Remote data acquisition system based on Internet of Things

M2M I/O Modules. To view all of Advantech s M2M I/O Modules, please visit

TOSR0X-D. USB/Wireless Timer Relay Module. User Manual. Tinysine 2013 Version 1.0

Transcription:

Accelerate your ZigBee design using the new TI ZigBee Processor 5/2/2008 Abstract To simplify the addition of ZigBee to an application, TI has created a new concept called Z-Accel. Z-Accel, as the name implies, is intended to accelerate the development of a ZigBee solution. Z-Accel consists of two parts: a ZigBee processor, CC2480, and an application MCU, any MSP430. This presentation will explain the concepts behind Z-Accel, describe the features of the CC2480 and ends with a demo experience using ez430-rf2480. 2 2

What is Z-Accel and CC2480? Z-Accel is a ZigBee Network Processor that communicates with any MCU via an SPI or UART interface CC2480 is the first-generation ZigBee-compliant network processor in the Z-Accel family Z-Accel allows customers to work with their favorite MSP430 Z-Accel provides complete ZigBee functionality without having to learn the complexities of a full ZigBee stack Advantages... 3 5 CC2480 Advantages Wireless Network Processor, Smart Transceiver Z-Accel: ZigBee Network Processor Accelerate your ZigBee Connectivity Easy Add-On to existing solution ZigBee Connectivity made easy to design and develop Reduce development time and time to market Enable ZigBee out-of-the-box and black box network capabilities Enable interoperable devices where desired by manufacturers using private profiles Features... 4 6 2

Z-Accel Key Features Reduce Development Complexity Preprogrammed / preconfigured ZigBee Node Easy to Deploy Accelerate ZigBee Connectivity for existing solution Easily added as serial peripheral Simple API applied for network commissioning Easy to Use Split Application and Network processor Application Processor running Application Framework & Profile Physical Layer Serial Transport / Full Duplex Remote Procedure Call (RPC) Layer Layered Interface Messages: System, Configuration and Data Standardized protocol Network Infrastructure reuse by multiple applications Manufacturer Specific Profiles to enable interoperability whenever possible 5 7 ZigBee GLOSSARY A Application Profile is an agreement on a series of messages defining an application space Public Application Profile Interoperable application profile developed by the ZigBee Alliance Manufacturer Specific Profile Private application profile developed by a company to operate a ZigBee Device Limits application interoperability to devices that share this profile Profile ID a unique identifier assigned by the ZigBee Alliance A Cluster is a message identifier for exchange of information within an application profile Endpoint a communication entity within a device which permits support for a specific application through the exchange of Clusters Binding/s is a way of connecting devices between two endpoints Each binding supporting a specific application profile Each message type is represented by a cluster within the profile Commissioning the task of configuring devices and networks to achieve the needs of a specific installation Application Object is software at an endpoint that controls the ZigBee Device A single ZigBee Device node supports up to 240 application objects Each application objects supports endpoints numbered between and 240 Endpoint 0 reserved for the ZigBee Device Object (ZDO) 6 3

ZigBee GLOSSARY ZigBee Device Object (ZDO) defines the logical role of a device within the network Device type: Coordinator, Router, End device Initiates and/or responds to binding and discovery CC2480 is running the ZDO endpoint PAN ID a unique Personal Area Network Identifier; Controlled by User and Application development Device Description is a description of a specific device within a profile Device Discovery can find the identity of devices on active channels within the PAN In a Mesh network the routing of messages is performed as a decentralized, cooperative process involving many peer devices routing on each others behalf Service Discovery is the ability to determine supported services on given devices within the PAN (e.q. USB Enumeration) 7 ZigBee-2006 Benefits to Consider Extremely well tested by a variety of companies Base of products and networks on market and in use today! Many certified stacks and silicon providers available Simple = less code & less overhead ZigBee Coordinator ZigBee Router ZigBee End Device 8 4

ZigBee-2007 Feature Set ZigBee Tree Addressing AODV Routing Backup Tree Routing Fragmentation Frequency Agility Basic Group Addressing Security ZigBee PRO Stochastic Addressing AODV Routing Many to One / Source Routing Asymmetric Link Handling Fragmentation Frequency Agility Basic Group Addressing Limited Broadcast Addressing Security High Security 9 CC2480 APPLICATION DESIGN PROCESS Customer has a new application with no defined ZigBee Profile Define devices in the system Map to Logical Devices Define the Profile by partitioning the devices Define the Device Descriptions within each Profile Define the Clusters and indicate which are input and output from each Device Description Define the Security solution Define the Commissioning Process Package the solution: Define the descriptors, deploy the applications over endpoints Integrate and test the solution. Solve Deployment issues. http://www.daintree.net/downloads/whitepapers/zigbee_primer.pdf 0 5

Profiles Medical Thermostat Tracking Sensor CC2480 only supports Manufacturer Specific Profiles (Private Profile) Privately developed by individual manufacturers CC2480 only supports Stack Profile ZigBee 2006 A set of devices required in the application area A set of clusters to implement the functionality» A set of attributes to represent device state» A set of commands to enable the communication A profile ID must be unique and use a ZigBee allocated profile identifier Commercial products developed using this profile must undergo network capable testing Endpoints An Endpoint (EP) is the address of your application running on Host Client EP 0 is ZDO application running on CC2480 Up to 240 additional applications can be supported on a device Each application on an endpoint is identified by its own Endpoint Structure containing the Cluster list Sink EP Binding Source EP 2 Manufacturer Specific Profile Cluster List Cluster ID Cluster ID Cluster List Cluster ID Cluster ID This device contain one EP (ZDO EP is on CC2480) Each EP contains an application 2 6

Clusters Commands sent or received over the network are called Clusters (data types) Cluster may be inputs or outputs form a device No ZigBee Cluster Library (ZCL) support with CC2480 Cluster List must be registered through communcation entities called EndPoint Source Cluster List SRCE_REPORT_ID Sink SRCE_REPORT_ID Cluster List 3 CC2480 Target Application Example MEDICAL AUTOMATION MEDICAL SIGNAL CHAIN ELECTRONICS Portable Medical Devices Commercial Control Home Control Personal Medical Devices Alarm & Security Short-Range Wireless Communications Medical Monitoring, Sensors Monitoring 4 7

Hardware Flexibility Z-Accel: (ZigBee Processor) ez430 RF2480 = MSP430 + CC2480 5 ZigBee System Architectures MSP430: Application Code w/profile using the Simple API of the CC2480 Layer Solution : ZigBee 2006 2: ZigBee 2007 3: ZigBee 2007 4: ZigBee 2006 Application Profile PP / MSP PP / MSP PP / MSP MSP Stack Profile ZigBee 2006 ZigBee 2007 Non PRO ZigBee 2007 PRO ZigBee 2006 MAC Layer IEEE 802.5.4 IEEE 802.5.4 IEEE 802.5.4 IEEE 802.5.4 Physical Layer* CC2430/CC2420 CC2520 CC2520 CC2480 PP Public Profile MSP Manufacture Specific Profile CC2480: Stack & Physical Layer 6 8

Application Device Type Model Application Device Type e.g. Source e.g. Sink... Distinguishes the type of device from an end-user perspective Logical Device Type ZigBee Coordinator ZigBee Router ZigBee End Device Distinguishes the Logical Device Types deployed in a specific network 802.5.4 Device Type FFD Full Function Device RFD Reduced Function Device Distinguishes the type of hardware platform ZigBee products are a combination of Application, Logical, and Physical device types The communication between applications is based on either a Public Profile (PP) or a Manufacturer Specific Profile (MSP). The public Home Automation profile (HA) provides the support for several device types (e.g. lamp, switch, thermostat, etc.) 7 Application Device Type Model Application Device Type e.g. Source e.g. Sink... Distinguishes the type of device from an end-user perspective Logical Device Type ZigBee Coordinator ZigBee Router ZigBee End Device Distinguishes the Logical Device Types deployed in a specific network 802.5.4 Device Type FFD Full Function Device RFD Reduced Function Device Distinguishes the type of hardware platform ZigBee products are a combination of Application, Logical, and Physical device types The communication between applications is based on either a Public Profile (PP) or a Manufacturer Specific Profile (MSP). The public Home Automation profile (HA) provides the support for several device types (e.g. lamp, switch, thermostat, etc.) 8 9

CC2480 Mesh Network Devices ZigBee Coordinator Starts the Network Routes packets Manages security Associates Routers and End Devices Example: Sink ZigBee Router Routes packets Associates Routers and End Devices Example: Source Devices are configured for their network function Coordinator can be removed ZigBee End Device Sleeps most of the time Can be battery powered Does not route Example: Source 9 ez430- RF2480 Sensor Monitor PC application running on PC connected to sink via Virtual COM Port (VCP) Sensor Monitor: (Yellow) Source (End Device) Sensor Monitor: (Blue) Source (Router) ZASA: ZigBee Accelerator Sample Application Remark: Temperature Sensor is not calibrated 20 0

Z-Accel - Application Model Configure Application Device as ZigBee Logical Device Register your Application Devices and End Points Join Network as a configured ZigBee Logical Device mapped as a an Application Devices Types: Source (Router or End Device) Creator for periodic sensor reports (Temperature, Battery). Transmit data to one or more Sink Devices to which it is bound Sink (Coordinator) Destination for Data. Receive data from one or more Source Devices Source EP Temp Read Source EP Temp Read Cluster examples supported by ZASA Configuration EP Sink EP Cluster Cluster Cluster Sink Cluster example added by user Source EP Source Z-Accel architecture 2 Z-Accel Architecture Z-Accel Host processor ( MSP430 ) HAL Application Simple API ZACC RPC SPI/UART interface ZigBee Processor (CC2480) ZigBee Processor Server Simple API Z-Stack API Z-Stack Radio A Diff look 22

Application Device Architecture Application processor MSP430 Sample Application ZASA SAPI Simple API ZACC (RPC) HAL / BSP Physical Layer (SPI/UART) SAPI 23 Simple API - SAPI Z-Accel support TI s Simple API. Simple API has only 0 API calls to learn, drastically simplifying the ZigBee application development. Simple API simplifies: Device Configuration Commissioning of Networks Binding of Devices Data Transfer API - Application Programming Interface ( Software Interface ) 24 2

SAPI Overview Functions and Callbacks API zb_systemreset Resets network zb_startrequest Starts network zb_permitjoiningrequest Allow nodes to join network zb_binddevice Establish a binding (connection) zb_allowbind Allow binding request zb_senddatarequest Send data zb_readconfiguration Read configuration parameters zb_writeconfiguration Write configuration parameters zb_getdeviceinfo Get current address, PAN ID etc zb_finddevicerequest Search for a device on the network Callbacks zb_startconfirm Network start up callback zb_allowbindconfirm Accepted bind request callback zb_senddataconfirm Send data status callback zb_receivedataindication Incomming data callback zb_finddeviceconfirm Search results callback zb_handlekeys EVM key push callback zb_handleosalevent Operating system callback For more details about the SimpleAPI see ZACC documentation 25 CC2480 Digital IF SPI Transport to MSP430F2274 ZP A0 A GPIO[0..3] MRDY RESETn SRDY CSn SI SO SCLK CFG0 CFG VCC MSP430Fxxx MOSI MISO SCLK IF Interface Sensor IF Analog Input Analog Input 2 Reset (RESETn) 4 Wire GPIO IF GPIO[0..3] 4 Wire SPI IF Optional with 3 - Wire MRDY 3 Wire SPI Consolidate (CS & MRDY) SRDY Configuration GPIO IF Option : Dynamical Configuration CFG0 CFG Option 2: Static Configuration CFG0: 32 khz XTAL» Pulled to VCC No 32 khz XTAL» Pulled to GND CFG: SPI Transport» Pulled to VCC UART Transport» Pull to GND 26 3

Application Circuit ZigBee Network Processor CC2480 27 Radio Channel Configuration In the sample_app.cfg file, you ll need to select the channel your PAN will operate on Remark: Selected Channel 28 4

PAN ID Configuration While we re at it, let s also select the PAN ID and Profile ID in the same file If PAN_ID = 0xFFFF and device = Coordinator: Device uses IEEE address to choose a PAN_ID (last 2 bytes) If PAN_ID = 0xFFFF and device = Router or End Device: Device will join any available PAN If the PAN_ID 0xFFFF and device = Coordinator: Device will use the set value for the PAN_ID If the PAN_ID 0xFFFF and device = Router or End Device: Device will ONLY join a PAN that has this PAN_ID 29 Packet Sniffer Displays RF data packets on the air Advanced filters Timeline display - Shows all nodes in a network Can be connected to all nodes in a network Supports IEEE 802.5.4/Zigbee packets 30 5

ZigBee Demonstration Kit GPIO MSP430F2274 Light Sensor CC2480 2x LEDs Button Antenna ez430-rf2480 Based on the CC2480 A ZigBee Network Processor 3x Target Boards 2x Battery Boards x USB debug dongle Comes with a simple application that demonstrates - Command interface - Chip configuration - Simple API - Basic network operations A PC application shows the network topology Price $99 3 Demo Starting a PAN, ez430 RF2480 Start PC Demo Application Start Sink, then Source Router then Source End Device Observe PAN traffic 32 6

Appendix Detailed Information Profiles/Clusters/Endpoints RPC Remote Procedure Call UART Transport Interface 5/2/2008 33 Descriptor Simple (Device) Assign a Device ID & Version Specify Profile ID Specify Endpoint ID Initialized in AppReset() Must be registered with CC2480 Endpoint Descriptor provide information about the application like: Number of defined Clusters Number of defined Endpoints zb_appregisterrequest(srceep) Allows CC2480 to know the cluster information for each endpoint Simplifies handling of messages to the node by differentiating by endpoint 34 7

PAN Formation (Sink: Coordinator) Application processor MSP430 ZASA SAPI RPC SPI Register Device App & Start Req SREQ/SRSP (Coordinator) AREQ AF Register SREQ/SRSP Network Form Start Confirm AREQ A unique PAN ID is determined either from the IEEE address dynamically or statically One channel is selected Process fully automated once started 35 Pan Discovery/Join/Bind (Source: Router or End Device) Application processor MSP430 ZASA SAPI RPC SPI Register Device (Router/EndDevice) Register Device confirmed App & Start Req Start Confirm Bind Request Bind Confirm SREQ/SRSP AREQ SREQ/SRSP AREQ A unique PAN ID is determined either from the IEEE address dynamically or statically One channel is selected Process fully automated once started 36 8

Z-Accel Transport Overview: Remote Procedure Calls (RPC) CC2480 s 0 Simple API calls are abstracted to 4 Physical Transport Layer Command Types Z-Accel RPC Command Types AREQ Asynchronous Request Callback Events Function call with return value POLL Polling for Data Retrieve Queued Data SREQ Synchronous Request Immediate Response SRSP Synchronous Response Response to a SREQ command General frame format... 37 6 General Frame Format (GFF) - SPI Frame Format Transport Packet Length CMD0 CMD Data Field 0-252 CMD0: Command Type & Sub Type: CMD: Command ID Note: Length byte is the length of the data field excluding itself and commands Length CMD0 [7:5] CDM0 [4:0] CMD 0-7 0-3 0-27 CMD 0 Command Type [7:5] Type (AREQ, POLL, SREQ, or SRSP) [4:0] - SubType (SAPI, SYS, AF, ZDO, Reserved) CMD Command ID CC2480 Application Interface Commands 38 9

General Frame Format (GFF) - UART Frame Format Transport Packet SOF GFF FCS 3-253 CMD0: Type & Sub Type: CMD: Command ID Note: Length byte is the length of the data field excluding itself and commands SOF Length CMD0 CMD Data Field FCS 0-250 Remark: UART Transport not supported on ez430 RF2480 39 CC2480 Digital IF UART Transport to MSP430F2274 ZP A0 A GPIO[0..3] RESETn CTS RXD TXD RTS CFG0 CFG MSP430Fxxx GPIO[0..3] (CS) TXD (MOSI) RXD (MISO) (SCLK) UART Transport Not supported on ez430 RF2480 Reference Design: How To VCP Virtual COM Port Used with PC Demo tool VCC 40 20

CC2480 Digital IF for Multi Drop SPI ZP MSP430Fxxx GPIO[0..3] MRDY RESETn SRDY CSn SI SO SCLK GPIO[0..3] MOSI MISO SCLK CC2480 Errata Multi Drop SPI will require external 3-State Buffer for MOSI Other Circuit CSn MOSI MISO SCLK 4 Thank you 42 2