Which wireless protocol for low-latency?

Discussion in 'The Projects Forum' started by jlstrauss, Jun 17, 2009.

  1. jlstrauss

    Thread Starter New Member

    Jun 17, 2009
    Hi folks,

    I'm currently working on a MIDI controller as a bit of a hobby / learning excercise. I use a number of simple sensors as inputs and then output the mapped sensor values as MIDI note/control messages to control audio equipment (e.g. pitch/note/velocity/triggers).

    I now want to start looking at making my device wireless (splitting it into host/controller units) and I was wondering what the best wireless protocol for my purposes would be?

    Just to be as clear as I can on what I'm after:

    1) Because this is for live performance, latency is absolutely critical. Anything more than 5-6ms added by the transmission would start to be noticed on top of the existing audio latencies.

    2) The data throughput would be very low (< 64kbps) and the distance would be < 100ft

    3) Ideally I'd like to be able to have multiple nodes (musicians) simultaneously transmitting to a single receiver unit.

    4) Bidirectional comms would be nice for autodiscovery/etc, but I'll sacrifice that for latency.

    5) It will be operating in a concert-stage environment with a lot of electrical a/v gear running and so I presume a lot of EMI.

    6) Being a remote device, power is a concern, but as long as I can run it on battery for a few performances (say 6 hours between charges) that's more than enough.

    Currently I'm looking at Zigbee & Bluetooth. Zigbee because it seems relatively simple and Bluetooth because of it's ubiquity (e.g. My laptop could be the controller) although I've heard the bluetooth overhead is relatively high.

    If anyone has any advice on what technologies I should be investigating or how to squeeze every last drop out of a wireless transmission, it would be much appreciated. However I'm only an amateur electronics guy so if the solution involves highly advanced, non-standard RF techniques, then it's probably not for me although I love reading about it anyway :)

    Thanks in advance,
    Last edited: Jun 17, 2009
  2. nanovate

    Distinguished Member

    May 7, 2007
    Take a look at XBEE
    or a prebuilt RF module like the ones from RFM

    There are also premade bluetooth modules that act like a common serial port.

    This way you have a working RF unit and can concentrate on how you want to send the data.
  3. jlstrauss

    Thread Starter New Member

    Jun 17, 2009
    Thanks for that nanovate, I'll check them out (I'm also looking at some SoC modules from sparkfun and others).

    You suggested modules with both Zigbee and Bluetooth on them. Will either of these wireless protocols get the kind of transmission latency I'm after? (~4ms or less)?
    I have read about 50ms latency and 2-3s wakeup times for Bluetooth which is why I'm a little suspicious of it and Zigbee the lowest I've read about is ~16ms (I'm assuming round-trip).
  4. Propaganda


    Jun 3, 2009

    Look into the nRF24L01 chips which can be found on Decibits premade boards such as the DCBT-24N. (sparkfun makes thier own eval board as well)

    2.4GHz, channel selectable, multceiver, ACK with or w/o ACK packets, 2Mbs, 150us rise to xmit time, good range.

    They are rather lowlevel so you will need to interface them with MCUs from there to a PC via USB/RS232.
    gfigna likes this.