Go Down

Topic: Update on DASH7 (Read 8 times) previous topic - next topic


Mar 07, 2012, 09:48 pm Last Edit: Apr 06, 2013, 09:35 pm by jpnorair Reason: 1
Update 6-4-13: Board now in testing

Update 25-2-13: Arduino Shield PCB in prototyping

I've noticed some posts asking about DASH7 over the past two years.

Now that the standard and the open-source firmware implementation are almost ready, and hardware is being developed, I'm posting an update.  Hopefully, this is the appropriate sub-forum.  Admittedly, I'm not an Arduino user -- I started doing embedded too long ago, and I have my own methods -- but I like the fact that Arduino exists.


1. What is DASH7, in two sentences?
DASH7 is a burst-data wireless spec designed with ultra-low-power applications in mind, and part of the ISO 18000-7 standard.  It is different in most respects to 802.15.4 stacks because it is more monolithic in implementation (one standard), more flexible (software defined MAC), and it has some query features integrated into the transport, which allow DASH7 to use a lot fewer packets than typical 15.4 stacks require to do the same thing.

2. Can DASH7 be used for voice?
Possibly, but it's a burst-data spec, so it's not optimized for streaming data (i.e. voice).  Also, the 433 MHz band it uses it typically not allocated for voice, neither is the 866 band.

3. Can DASH7 be ported to Arduino?
Sure.  Over the last two years we've tuned up everything, so the requirement for a DMA no longer exists.  That said, the best way to get DASH7 working with an Arduino would be to make an Arduino/Wiring API client and have it communicate with a DASH7 network processor shield.  Otherwise, the AVR is going to need to manage the DASH7 MAC (which has some strict timing requirements), and I think that's not the right mentality for Arduino.

4. What HW is available?
There are some kits in development now, which have convenient hardware interfaces.  Most use the TI CC430 as either the development target itself, or the CC430 as a network processor.  Here is the kit I'm building.  There are others, too, but I don't want to speak for the developers until they announce publicly themselves.  If someone is interested, we can talk about making an Arduino shield.  It should be really easy.

5. What SW/FW is available?
The OpenTag project is the primary implementation for DASH7 and related client-side tools.  OpenTag would run on the network processor (probably not the Arduino's AVR), but the client-side tools would need to be ported to AVR/Arduino and have some Wiring calls attached.


So, if anyone is interested, just contact me or post something here.  If you want to potentially work on this stuff, then great.  If you just are interested in Arduino shields and tools for DASH7, still please tell me, because otherwise I won't know if this is a project I should undertake.


I'm actually surprised nobody replied to this already.
The last couple of days I've been reading a lot about DASH7. I want to create a sensor network in our home and I don't particularly like the options currently mainstream (Zigbee; bad with concrete, only 'lowish' power, wifi interference, $25+ per radio).
In the past I've dabbled with Arduino and I'm a bit reluctant to start with MSP430 microcontrollers and CC430 radios. I'm sure others can sympathize/feel the same.

Long story short; I'm looking for a (preferably simple) way to get going with DASH7. A shield would fit that bill. :)


This WizziMote is the closest thing to an Arduino-Shield for DASH7/OpenTag.  It uses CC430, so the communications stack (DASH7) is completely implemented on that SoC, and the client device, such as an Arduino, needs only to send API commands.  http://www.wizzilab.com/shop/

The OpenTag project is very much open source, and the WizziMote itself is programmable over JTAG.  So, for advanced usage you can program additional features into the WizziMote.


I've seen the WizziMote, it's $40 per node but I can justify that as 'research'.
I'd be interested in running DASH7 on something like a JeeNode: http://jeelabs.com/products/jeenode. It comes with a 433MHz radio but I have the feeling that alone is not enough. Could you weight in?


Jan 02, 2013, 10:08 am Last Edit: Jan 02, 2013, 10:17 am by jpnorair Reason: 1
JeeNode is €18.50 and, you must assemble it, which to me doesn't seem like a great deal, but I understand your point.  You are not the first person to ask for a cheap, small module.  All I can say is that I and some others are working hard on DASH7 HW, and if you monitor #DASH7 on twitter during Jan/Feb, (or follow @jpnorair), there will be some product announcements.

There is talk of integrating an Energia environment (arduino clone for MSP430) into OpenTag directly, but right now I'm too busy working on HayTag.  OpenTag and DASH7 are *a lot* more sophisticated than JeeNode is (or Arduino), so it's not so simple as writing an Arduino library for DASH7.  I'm not even sure that's possible.  But, it is possible to run an Arduino Environment (or Energia Environment, or Maple Enviroment) as a thread on OpenTag.  That way, you can treat the DASH7 system just like a pipe, and not worry about the deep complexities of it.

If you know Processing and want to help with this, let me know.  WizzMote and CC430 can support Energia, and HayTag can *probably* support Maple.  HayTag also includes solar + battery, and it will be available as a bare module in addition to the normal, finished tag.  The pin-out is somewhat limited given the tiny size of the device, but it has I2C, UART, and a couple of IO/AIN pins.


Consider yourself followed.

Thank you for the background information, I have no experience with Processing but I installed it and it look eerily similar to the Arduino IDE. Besides I have experience with Java/Ruby/Go, this didn't seems hard.
I also agree with the conclusion that writing a DASH7 lib for Arduino won't cut it.

I'm comparing DASH7 with a JeeNode and I can "only" come up with one advantage of DASH7 vs a JeeNode and that is the meshing feature. I'm surely missing something?


Arduino, Energia, Maple, and all these similar things are based on Processing.  That is why I mentioned it.

The bottom line is this: using DASH7 for early-adopter home automation (maybe "hobbyist" use) is not pushing it very hard.  It is designed for doing fast, ad-hoc data collection in populations of thousands of nodes, which is different than meshing, but still quite beyond having a push-button transmitter or something like that.

The benefit of DASH7 vs. JeeNode becomes evident when you start getting collisions.  10 years ago, nobody had WiFi collisions, but today I look at the list of nearby networks, and it is 20-deep.  So, it is good there are some collision avoidance mechanisms in WiFi.  There aren't any in JeeNode, or any other "simple" RF link.  Therefore, JeeNode is a fine solution for hobbyists, but DASH7 is much better for industrial projects, commercial projects, or anything where you have uncertainties to guard against.  This focus is also the reason why there aren't so many hobbyist-oriented DASH7 projects yet.  Eventually, I expect DASH7 will probably be the #1 RF link for hobbyist projects, because it offers some powerful and easy addressing features and it has good propagation, but first, all of us in the DASH7 world need to make markets for ourselves in "boring" things like airports, animal tracking, building automation, etc.  We need to pay the bills, too.  :)  In the process, if I find myself building a part like the JeeNode, I'll certainly find a way to offer it to anyone.  This is the case with HayTag.



It's still not entirely clear to me whether OpenTag (HayTag, what's the difference?) on an 8bit AVR (not arduino). I understand your love for the MSP430. Hey, I was even going to buy one of the chronos watches when they had them up at TIdeals but missed that specifically for Dash7 hobbying! Also never found your 7stick to reach the world :(

Anyhow, you mention you removed the DMA requirement and thus it should run on 8bit-ters. Where can I read about ports etc of that?


@haarts, if the meshing feature is what you need, and you target home automation, you can take a look at panstamps as well. Very similar to JeeNode, but with better radios (CC1100), and a set of "holder" boards that can even install in a DIN-rail fusebox. Very responsive support. All open source.

I have no other relationship with panstamp except being a "happy user", but I think it deserves a bigger community. Take a look. The SWAP stack is great, even if its all-HEX approach isn't the most user-readable one... If you can make a side-by-side comparison with DASH7, I'm interested.


It's still not entirely clear to me whether OpenTag (HayTag, what's the difference?) on an 8bit AVR (not arduino).

HayTag is hardware.  OpenTag is software (firmware).  There is no AVR port for OpenTag because I am busy supporting MSP430 and Cortex M.  It is as simple as that.

The 7stick was supposed to be available now from TI (http://www.indigresso.com/wiki/doku.php?id=opentag:board:ez430-rf5509), but for some reason they have not offered the unit for sale yet.  If it goes much longer, I will build and sell the thing myself using ST parts  ]:)


Jan 12, 2013, 01:49 am Last Edit: Jan 12, 2013, 01:51 am by jpnorair Reason: 1

I have no other relationship with panstamp except being a "happy user", but I think it deserves a bigger community. Take a look. The SWAP stack is great, even if its all-HEX approach isn't the most user-readable one... If you can make a side-by-side comparison with DASH7, I'm interested.

OpenTag/DASH7 is designed to be the world's lowest-power RF stack, so many of the differences between DASH7 and SWAP are levels of sophistication needed to give DASH7 lower power.  MCU time is much lower power than RF time is, so to use this tradeoff, DASH7 has sophisticated anti-collision, synchronizing, filtering, and querying mechanisms that are unique.  If you don't care so much about running the device for years on a small battery, or running off a small solar cell, then these differences are less impactful.

The other difference that may be impactful even for non-low-power applications is that DASH7 can support IPv6 addressing, UDPv6, and CoAP.  So, if you want to link it to HTTP or other REST applications, it doesn't require extra pieces.

SWAP seems like a nice system that could compete with things like ZWave.  DASH7 is more sophisticated, so it is often more difficult for hobbyists to use it for adding wireless to a project, but it can scale-up without concern: 10k units, 1M units, 1B units, etc.  That is the tradeoff.


Looks like an incredibly complex protocol that's gonna take some serious processing
power, so it's not quite clear whether it'll actually be "low-power" to do all that
stuff. It took Maxstream/Digi 2 or 3 years to get the zigbee mesh protocol right.

The main website has a lot of talk about protocols and comparisons with other existing
protocols, but not much at all about actual working hardware. Will have to wait for
some working hardware, before can tell very much.



Looks like an incredibly complex protocol that's gonna take some serious processing
power, so it's not quite clear whether it'll actually be "low-power" to do all that
stuff. It took Maxstream/Digi 2 or 3 years to get the zigbee mesh protocol right.

There are product examples, but just not so much in the hobbyist space.  Hobbyists are awesome, but honestly the addressable market isn't as big as is a single commercial buyer, and nobody in the community is a charity.  Support for hobbyists, still, is improving as wrappers for certain feature subsets get developed.  Unlike ZigBee, DASH7 is open source, so the community is basically doing this on its own.  Also unlike ZigBee, the architecture of the protocol is designed for elegant implementation in firmware.

As for low-power, an STM32L does 5DMIPS/mA.  That's insane.  EFM32 is even less, and I expect the Atmel CM3 in the Due is basically in the same region.  RF transmit has been stuck at 0dBm/15mA for a decade.  Batteries aren't changing either.  RF receive has been getting incrementally better, but it's not anywhere near the kind of slope we see for MIPS/mA.  Crazy but true: running a low power CM3 often uses less total power than MSP430, which uses less power than AVR, which uses less power than 8051.  More sophistication can result in less total power if the architecture is good.  Just ask Intel.  I will fly over to where you live and buy you a beer if HayTag, which uses CM3, isn't at least one order of magnitude -- and probably 2 or 3 -- less power than anything you're accustomed to.


RF transmit has been stuck at 0dBm/15mA for a decade.

Actually, the XBee Pros do 18dBM, albeit at higher current. I guess you're saying
the new standard favors low-power transmit, but more sensitive receivers, so it's
easier to build a wide mesh of low-power nodes. Still, we have to see it in reliable

Dash7 all sounds good. Not sure it will take over the world, however, :-). There have
been a zillion new "standards" over the past 15 years. Some of us have been around
long enough to see many of them come and go. Can you point to some hardware
modules that are commercially available right now?


Dash7 all sounds good. Not sure it will take over the world, however, :-).

Taking over the world is not the goal.  :)  The goal is to provide a standard that can succeed where previously only proprietary technologies have succeeded, due to optimization considerations.

The XBee Pros @ 18dBm are quoted to use 215mA for TX and 55mA for RX, compared with 18/18 for DASH7 on the CC430 and 15/10 on the HayTag.  The range is about the same, although DASH7 has lower data rate.  We use the compute power to provide intelligence, and ultimately the result is sending less data, so the radio on-time is about the same for most apps.  Good for battery powered devices, not so important for mains-powered devices unless you are wild about reducing carbon footprint.

The WizziMote is the most common module at the moment.  It uses CC430, and basically anything with a CC430 can run the stack.  My new product (HayTag) uses a new ST chipset.  I get a lot of requests to build shields and modules, but I'd need to sell about 1000 @ $40 to break-even.  I'm being conservative with the price, though.  Maybe there's potential.

Go Up