Indigresso Wiki

Open Source Stuff for DASH7

User Tools

Site Tools


opentag:platforms:main

OpenTag Platforms

In OpenTag parlance, a Platform is a combination of a computing element, a memory, and non-radio I/O. Typically, it is a microcontroller, but it could also be a higher level I/O standard, such as POSIX. OpenTag can be ported to many kinds of platforms, although it usually needs at least 1KB SRAM and at least 12KB ROM (Flash). More typically, 4DMIPS + 2KB SRAM + 32 KB Flash + Masked Interrupt Controller is a decent, minimum-spec platform for implementing most (if not all) OpenTag features. Adding more DMIPS, RAM, ROM, or a better interrupt controller (e.g. NVIC) enables more advanced applications, but it does not necessarily improve the way OpenTag runs itself.

Client and Server Platforms

OpenTag has a client-server architecture, where all devices that actually talk DASH7 are servers. The client is a control interface that can connect to a server. OpenTag can be built for client or server, and the platforms supported by client or server may differ. For example, POSIX is a very common client platform, but it is not likely to be used as a server, unless it is being used as a simulator.

Table of Supported Platforms

An OpenTag server is typically run on bare metal on a microcontroller (ARM Cortex M3, MSP430, etc), and a client is typically run on some sort of more formal OS. However, it is possible to port the server to other kinds of Real Time OS'es too, but these ports have not yet been developed. I expect that ports for certain RTOSes like ChibiOS, TinyOS, FreeRTOS, RTLinux, etc, will end up being developed by the community in time.

The “official” supported toolchains (e.g. IDEs) are also listed in this table. Like with the platforms themselves, OpenTag is not limited to these toolchains, they are just the ones that have been verified to work.

Platform Notes Platform Type Toolchains
POSIX A POSIX OS system Client Make+GCC+stdclib
- Linux All libs built-in
- Mac OS X All libs built-in
- µClinux With required libs
- Windows Via MinGW
CC430 TI CC430 RF SoC (on bare-metal) Server TI CCSv4
- CC430 (typ) parts: F5137, F6137
- RF430 (CC430+PaLFi SiP) parts: F5978
MSP430 TI MSP430 MCU (on bare-metal) Server TI CCSv4
- MSP430F5 parts: F5509, F551x, F552x, others
STM32F10x STM32F1 series MCUs Server RIDE7, GNU ARM Eclipse
- STM32F100 series Value Line, basic features + 24 MHz
- STM32F101 series Access Line, basic features + 36 MHz
- STM32F102 series USB Value Line, basic features + USB + 48 MHz
- STM32F103 series Performance Line, extended features + 72 MHz
- STM32F105/7 series Connectivity Line, extended features + USB + Ethernet + 72 MHz
STM32L1xx STM32L1 series Low-Power MCUs Server RIDE7 , GNU ARM Eclipse
- STM32F151 series Ultra Low Power, basic features + USB + 32 MHz
- STM32F152 series Ultra Low Power, basic features + USB + LCD + 32 MHz
named pipe debuging and testing All Make & gcc
opentag/platforms/main.txt · Last modified: 2012/06/10 04:34 by jpnorair