This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

WiLink reference broadcast synchronization

Hello,

This is a general question regarding the WiLink modules. We are in the process of integrating Wireless capabilities to an existing data acquisition system. We are in seach of a pre-certified wifi module which will operate in the 5GHz band, with antenna diversity supported, which we will integrate into our embedded design. Our embedded design utilizes a Freescale Vybrid processor running a custom distribution of Linux (Timesys). We would hope to be able to achieve a data throughput of somewhere on the order of 5MB/s if possible. With all of that said, there is one additional requirement that has proven to be difficult in our search for a module. We would like to be able to synchronize sub-systems from a broadcasted message. In our application we would have several (lets call it 4) platforms in close proximity to one another, within 20 feet. Each of these platforms will have a Wifi Module on it and they must be synchronized with respect to one another. A separate WiFi module would broadcast a synchronization message. Since we are not worried about synchronization between the broadcaster and receiving modules, any latency/uncertainty on the transmitting side is negligible. We are however concerned with the uncertainty on the receiving modules (the uncertainty in time between when the module receives the message at the physical antenna and when it is available through some host interface). We are looking to achieve an uncertainty on the order of 1us. With all of that said this would mean we would need some sort of event fairly close to the radio so we do not inherit the uncertainty involved in the various processing that is required for 802.11. Do you feel that this can be accomplished using one of the TI WiLink products? Would we have access that deep into the layers to achieve this? Is there any MAC layer timestamping that may be utilized to determine time of flight on that level of uncertainty? I would love to discuss this.

Best regards.

Matt

  • Hi Matt,

    We do not have the exact request that you want (you won't be able to get an event close to the RF side)

    More than that, even if we can have an event at that location, there is a very big dependency on the interrupt handling of the Linux side.

    Linux does not guarantee any specific time between interrupt received and interrupt handled (it can be several mSec even).

    Having said that, we do work on a synchronized option over WLAN solution, and should have it ready in R8.6 (m/o next year)

    Regards,
    Gigi Joseph.

  • Hi Gigi,

    Thank you for getting back to me on this inquiry.  What type of uncertainty would be looking at if we were not to factor in Linux.  For instance, if we were to get creative at the host interface and capture an edge at the moment the WiLink chip began to send data to our host controller.  Although this would not be the most elegant solution, I was curious to what level of uncertainty we could achieve using this device.

    Its good to hear that there is a WLAN synchronization device in the works.  We will look forward to checking this device out when it is ready.

    Best regards,

    Matt

  • Hi Matt,


    Linux, is not a Real Time Operational System

    Even with basic functionality single process run of the linux, you can get delay of more than 10 mSec from IRQ to handle.
    Even if you hack the system, and put the IRQ in the top priority, you still have delays of several mSec due to "disable" interrupts and "semaphores" running in the background

    Shahar

  • Hi Shahar,

    Thank you for your response.  I do understand the uncertainty which comes along with Linux which makes it not useful for our application.  When I mentioned getting creative at the interface and capturing an edge, I should have mentioned that this would not be done with Linux.  We would do this using an FPGA or some other device in an attempt to factor out the uncertainty in Linux.

    What we are really looking into is what level of uncertainty would we be looking at using the TI chipset alone.  In other words what uncertainty would we be looking at between the physical antenna, and the host interface of the WiLink WiFi devices?

    Best regards,

    Matt

  • Hi Matt,

    In that case, the uncertainty is mostly depend on where the "catch" of that special frame will be done.
    As closer that it can be done to the antenna, the uncertainty will be reduced

    If the frame is broadcast (no ACK needed), the closest theoretical location we can check the frame (not sure if that is possible due to other request of the system) is just on the RX Complete interrupt, and in there the uncertainty will be less then 1uSec

    If we will check the frame just before the host interface, the uncertainty will be of several 10's of uSec

    All of the above is true if we got the frame at all (there is a good chance of losing broadcast frames in WIFI)

    As Gigi wrote (and I added in that replay), we do not have the option to support the <1uSec uncertainty in our code at the moment (as you requested)

    But, We do work on a solution for Audio sync to get those requests in another way. this solution will be ready m/o 2015.

    Shahar