Jump to content

OpenTag

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Jake1244 (talk | contribs) at 22:50, 27 April 2013. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
OpenTag
DeveloperJP Norair
Written inC
OS familyEmbedded operating system
Working stateCurrent
Source modelOpen source
Initial release2011
Latest release0.4.0 / 08 Nov 2012
Marketing targetWireless sensor networks
Available inEnglish
PlatformsMSP430, STM32
Kernel typeExokernel
LicenseOpenTag License
Official websiteOpenTag wiki

OpenTag is a DASH7 protocol stack and minimal RTOS, written in C. It is designed to run on microcontrollers or radio SoCs. As a result, OpenTag has been engineered to be a very tight and compact package. However, with proper configuration it can also run in any POSIX environment. It is also worth noting that OpenTag can provide all functionality required for any type of DASH7 Mode 2 device, and not only for the eponymous β€œtag”-type endpoint device.

Design Philosophy

OpenTag implements DASH7 Mode 2, which specifies a monolithic system encompassing OSI layers 1-6 and part of 7 as well as the application layer. OpenTag is designed to be light and compact as it is targeted to run on resource-constrained microcontrollers. As a monolithic system, OpenTag does not implement different layers of the OSI model in a way that will enable them to be deployed on systems that differ from the typical -- and nearly universal -- MCU+RF transceiver architecture, utilized by WSN and M2M nodes.[1] However, the OpenTag RTOS employs an exokernel architecture (as of version 0.4), so it doesn't at all feature a monolithic kernel. Applications developed for OpenTag may safely reference the library or directly access the hardware, as fits the exokernel design model.

Features

Implementation

OpenTag implements a multitasking real-time kernel designed specifically to implement DASH7. User tasks can be managed by the kernel, and they can pre-empt the kernel, although they must be allocated at compile-time. The scheduling frequency, or kernel resolution, is implementation-dependent, but it must be at least 1024 Hz, and it must be an integer multiple of 1024 Hz.[2] CubixWrestlingShow56(2012-Present. {Wireless Sensor Network}}

  1. ^ "OpenTag Features Overview". OpenTag Wiki. Indigresso.com. Retrieved 9 July 2012.
  2. ^ Norair, JP. "Building DASH7 Apps with OpenTag". Retrieved 9 July 2012.