32
JP Norair 16 Dec 2009 OPENTAG DASH7 STACK OVERVIEW

OpenTag Webinar

Embed Size (px)

DESCRIPTION

OpenTag DASH7 stack overview

Citation preview

Page 1: OpenTag Webinar

JP Norair16 Dec 2009

OPENTAG DASH7 STACK OVERVIEW

Page 2: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Introduction

Page 3: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Basic Facts•An open source DASH7 stack•Primarily for microcontrollers•Written in C

ABOUT THE PROJECT•On-and-off development for two years‣ Some unsuccessful platforms aborted‣ However, library has been tested for billions of vectors

•One current developer, looking for more!‣ Platform porters‣ FreeRTOS developers‣ Library debuggers

•Apache License

•Less than 10K lines of total code‣ Compiled code is much less‣ Build size is typically 8 - 16KB

http://www.sourceforge.net/projects/opentag

Page 4: OpenTag Webinar

www.dash7.orgDASH7 Confidential

DASH7: Ultra-low Energy Wireless Data Technology

• Based on the ISO 18000-7 standard• Mandated by U.S. Department of Defense,

allied militaries• Range is scalable, 10 - 2000 m (1.2 mi)• 433 MHz• 28 kbps• Extendable to multi-hop, sensors, security,

IPv6, and other features

2002:Proto-DASH7used by DoD

2004:First Publication ISO 18000-7

2008:Latest Publication

ISO 18000-7

ABOUT DASH7

Page 5: OpenTag Webinar

www.dash7.org

The DASH7 Alliance directs the development of the DASH7 standard.

Are you interested in joining?www.dash7.org

End Users

SystemsIntegrators

SoftwareDevelopers

ISO 18000-7LicenseesSemiconductor

Companies

Academia

Entrepreneurs

ABOUT THEDASH7 ALLIANCE

Page 6: OpenTag Webinar

www.dash7.orgDASH7 Confidential

ABOUT ME•Name: JP Norair

•Current Status‣ Lead Developer of OpenTag‣ Applications Engineering Mgr. at Savi Technology‣ Co-chair of DASH7 Technology Working Group

•CV items‣ Expertise in RF Comms and Signal Processing‣ Large knowledge of passive and active RFID‣ Growing knowledge of open source project mgmt!

Page 7: OpenTag Webinar

www.dash7.orgDASH7 Confidential

BRIEF HISTORY OF OPENTAG2007 2008200820082008 2009200920092009

Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

STMicro introduces Sensor HDK to Savi, we plan DASH7 integration

First line of OpenTag code

writtenEncoder chain

passes 100 million tests

First AlphaMajor architectural upgrade in order to work better with

different RF silicon

First Release on SourceForge

Beta for ST/Arira platform

OpenTag has been in development for a while, but has been delayed by several rearchitecting phases. As a result, OpenTag is more than a “1.0” product.

“DASH7”coined DASH7 Alliance

Kickoff meeting

Page 8: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Interoperability

•Happens when different developers use the same codebase.

•Happens when a reference codebase for conducting plugfests.

Platform Support

•Open source distributions allow for maximum proliferation of platform support.

Ecosystem Growth

•Reduced time to market

•Greater awareness of DASH7 among product developers

DASH7 BENEFITS FROM OPENTAGThe DASH7 Alliance has a symbiotic relationship with OpenTag.

Page 9: OpenTag Webinar

www.dash7.orgDASH7 Confidential

STMicroelectronicsDASH7 SILICON PARTNERS

Expect many SoC parts in 2010-2011

Does your silicon company want to get involved with DASH7?

We will support your product!

Page 10: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Architecture

Page 11: OpenTag Webinar

www.dash7.orgDASH7 Confidential

DESIGN GOALS

• High Performance DASH7 implementation‣ Moore’s Law has affected microcontrollers, so take advantage‣ Minimal lag between request & response‣ Minimum power requirements (minimum CPU duty cycle)

• Small Program Size‣ Memory on microcontrollers is not growing as fast as DMIPS‣ Where possible, use C-preprocessor directives instead of C‣ Reuse code blocks wherever possible

• Portable to many architectures & MCUs

• Does not require persistent SRAM variables‣ Improves portability and MCU options‣ Increases robustness

Page 12: OpenTag Webinar

www.dash7.orgDASH7 Confidential

SYSTEM APPLICABILITY• Designed for 16 and 32 bit MCUs (these are more efficient)• Requires a hardware DMA or FIFO of some sort

Examples Status Notes

≥ 32 bit

16/32 bit

16 bit

N/8 bit

8 bit

Intel, PPC, most ARMs Tested OpenTag would be used as a daemon on such a platform

ARM Cortex Mx TestedIdeal for embedded applications where 32bit data space or

good DMIPS are beneficial. Cortex M0 may be the “goldilocks” factor.

MSP430 PendingSuitable for all existing applications and most future applications that

DASH7 Alliance has envisioned. Public Key and IPv6 may strain limits.

CoolRISC, PIC –(large instruction word / 8 bit data). Caveat Emptor.

22bit CoolRISC may be workable. PIC, unlikely.

8051, 6800 –Unlikely to be suitable for complete OpenTag distributions, but may be

suitable for module type applications where data is held on master MCU.

Page 13: OpenTag Webinar

www.dash7.orgDASH7 Confidential

OPENTAG BASIC ARCHITECTURE

• Highly modular

• Platform, Init, and UHF modules are hardware-specific. The rest (OTlib) is completely abstracted.

• No OpenTag code in ISRs

• Requires HW DMA or FIFO: strategy is “sprint and sleep,” with no frequent interrupts.

UHFUHF

UserMainUserMain

MACMAC

CommandsCommands

InitInit

QueueQueue

CRC16CRC16

CRC TableCRC Table

Decode TableDecode Table

PacketcodesPacketcodes

EncodeEncode

DataData

MemoryMemory

Pla!ormPla!orm

Hardware or OSHardware or OS

RadioRadio

OTlib

Page 14: OpenTag Webinar

www.dash7.orgDASH7 Confidential

SYSTEM ORGANIZATION

OpenTag is a distribution containing the OTlib and platform code

OTlib:Fully abstracted modules

Platforms:HW-specific code and abstraction layer(s) Folder for each

HW target

Config (.h) files for each boardHW libraryVersioned platform code

Page 15: OpenTag Webinar

www.dash7.orgDASH7 Confidential

DATASTREAM MODEL

• OTlib has a modular design so that individual modules may be replaced or revised without affecting the entire system – or run independently, even in an interrupt-free environment.

• OTlib uses interrupts only to wake the MCU from low power modes. The ISR merely clears the interrupt-pending-bits. The body code must act on the interrupts.

• OTlib has softer real-time requirements and fewer interrupts due to datastream buffering.

sleep

maxinterrupt windows

T T T T’

Page 16: OpenTag Webinar

www.dash7.orgDASH7 Confidential

VIRTUAL MEMORY

• All calls to the data layer should be by virtual address.

• Single 16 bit virtual addressing space (easily upgradeable to 24 or 32 bits)

• Part 1: VWORM (Virtual Write-Once Read-Multiple)‣ Optimized for infrequently written data strings (can be written multiple times, but unoptimized)‣ Used in OpenTag for string data (most UDB elements)

• Part 2: VEEPROM (Virtual EEPROM)‣ Optimized for storage of (somewhat) frequently changing variables‣ If held in Flash, must use wear-leveling techniques and garbage collection, so uses memory space inefficiently‣ If held in traditional EEPROM, performance may be poor (depends on HW)‣ Used in OpenTag for some system variables and UDB elements.

Page 17: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Getting Started

Page 18: OpenTag Webinar

www.dash7.org

DASH7 OFFICIAL DEV TOOLS

STM32 “SmartSensor” Kit:STMicro & Arira

ariradesign.com/hdk.php

TI CC430 & Kitmsp430.com

Open Source DASH7 Libraryfor Microcontrollers

opentag.sourceforge.net

Page 19: OpenTag Webinar

www.dash7.org

STEP 1

Get a board. There are some supported boards available, but OpenTag can also be ported

to many other platforms.

STEP 2

Install “Git” (free source management tool) and join

OpenTag on SourceForge to have access to the latest code.

STEP 3

Start programming your application using the OpenTag

DASH7 stack.

3 STEPS TO OPENTAG DEVELOPMENT

Page 20: OpenTag Webinar

www.dash7.orgDASH7 Confidential

ST - ARIRA DEV KIT

A multi-purpose, multi-system dev kit including hardware and software (DASH7 software is OpenTag).

Compiler : IARDebugger: Segger JLinkTotal Code Size: Less than 50KBCost: ~$2000

http://www.ariradesign.com/hdk.php

Component Hardware Software

Processor ST STM32 Arira

DASH7 Radio Semtech SX1212 OpenTag

GPS ST Module ST/Arira

Cellular ST GPRS Module ST/Arira

Page 21: OpenTag Webinar

www.dash7.orgDASH7 Confidential

SEMTECH SX1212

•Highest performance DASH7 transceiver‣ Lowest Power‣ Highest Receiver Sensitivity‣ Highest Transmitter Strength

•Usable as low as 2.1V, allowing dual alkaline power supply.

•Usable with on-chip 64 byte FIFO or off-chip DMA (via SPI bus).

• Longest range due to highest performance.

Semtech SX1212

Freq. Range

Sensitivity

Output Range

Voltage

Sleep

Start Up

Active RX

Active TX

300 - 510 MHz

-102 dBm

-8.5 to 12.5 dBm

2.1 - 3.6 V

0.1 µA

2 ms @ 0.5mA avg

2.5 mA typ

16 mA typ (1 dBm)

OpenTag/DASH7 Reference Transceiver

Page 22: OpenTag Webinar

www.dash7.orgDASH7 Confidential

POSSIBILITIES WITH SX1212

Large Area Yard Mgmt

Integration with GPS, satcom

In-container sensors

Battery powered

read nodes

Tags with very long life

Page 23: OpenTag Webinar

www.dash7.org

TI CC430 DEV KIT

An evaluation kit for the CC430 SoC, with no additional features or software.

Compiler : IAR, CCS, GCC Debugger: TI JTAG debugger ($100)Total Code Size: Less than 16KBCost: $149

http://www.ti.com/cc430

Component Hardware Software

Processor TI CC430 (MSP430F5) None

DASH7 Radio TI CC430 (CC1101) OpenTag

Page 24: OpenTag Webinar

www.dash7.orgDASH7 Confidential

HIGHLIGHT:TI CC430

• The first true family of SoCs for DASH7

• The CC430 is a single, silicon die and can be used in a QFN package or as a bare die.

• Very capable, and can easily support the future evolution of DASH7

• Excellent engineering support from TI

RF CPU

Freq. Range

Sensitivity

Output Range

Voltage

Sleep

Start Up

Active RX

Active TX

433 / 868 / 915 MHz

-96 dBm

-40 to 10 dBm 25MHz MSP43010 DMIPS

2.2 - 3.6 V10 DMIPS

0.7 mA / DMIPS AES128 Hardware

0.1 µAAES128 Hardwareup to 32 KB Flashup to 4KB SRAM

0.3 ms @ 16mA avgup to 4KB SRAM~2 µA RTC-sleep

16 mA typ

16 mA typ (0 dBm)

Page 25: OpenTag Webinar

www.dash7.orgDASH7 Confidential

POSSIBILITIES WITH CC430

DASH7 in Access Card

DASH7 onSIM Card

Tire Pressure

Monitoring

sub-$10eSeal

Very Small Tracking Tags

Page 26: OpenTag Webinar

www.dash7.orgDASH7 Confidential

25mm

15mm

CC430F5137

8mm

8mm

3mm

3mm

QFN48

Die Package

Flat Ferrite Loop Antenna

COOL IDEA: CC430 ON SIM CARD

Page 27: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Roadmap

Page 28: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Official OpenTag development will support 1.x and 2.x versions across several platforms and eventually a serial-1/O “module” type target. Unofficial development may enable many more platforms and features.

2009 2010 2011-2012

PC Simulator 1.0

2.x for new SoCs

Alpha Development

Arira Beta

CC430 1.0

Official Developers:

Beta/1.0OTlib + custom platform code

1

PC Simulator 2.0

CC430 Beta CC430 2.0

Arira 1.0 Arira 2.0

AlphaPC simulation of OTlib routines

23

4

55+

2.0OTlib + FreeRTOS

1.x / 2.xUpdates & Upgrades

PC Simulator 2.x

Arira 1.x / 2.x

CC430 2.x

SX1282 Module 1.x

Module 2.x

Page 29: OpenTag Webinar

www.dash7.orgDASH7 Confidential

While 2010 is not focused on platform development, it is focused on feature improvements. The DASH7 Technology Working Group (TWG) is developing specifications for several new features. OpenTag will support these.

2009 2010 2011-2012

Official Developers:

New DASH7 FeaturesFeatures under discussion within the DASH7 Alliance Technology Working Group (TWG).

1

ISO 18000-7:2008Standard Spec Functionaliy

2

3 4

5

5+

IPv6

Mode 2

LF ext.PrivateKey

PublicKey

18000-7: 2008

Sensorext.

Remaining New DASH7 Features

Page 30: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Releases

Page 31: OpenTag Webinar

www.dash7.org

NEAR-TERMRELEASE SCHEDULE•Beta code available today for ST/Arira

platform – interfaces are frozen, so fine for getting started.

•Beta code available for CC430 in early Jan

•1.0 releases to follow shortly

• Incremental 1.0.x releases will feature improved application / plug&play support

http://www.sourceforge.net/projects/opentag

Component Support Release Date

Processor

STM32CC430CMSISSX1282

Dec 2009Jan 2009Q2 2010Q2 2010

DASH7 Radio

SX1212CC430SX1230SX1282

Dec 2009Jan 2009Q1 2010Q2 2010

RTOS FreeRTOS Q2 2010

Page 32: OpenTag Webinar

www.dash7.orgDASH7 Confidential

Questions? [email protected]