HE910: how to avoid internal buffering for application requiring low latency

One thought on “HE910: how to avoid internal buffering for application requiring low latency

  1. Hi,


    We have an application where we send state data containted in a single UDP packet at 1Hz. In case of poor network conditions, we would very much prefer that packets get dropped rather than having them buffered in the internal buffers of the Telit modem.

    In other words, we need a way to avoid queueing/buffering of data.


    We can see two ways this could happen:

    1) Disable/reduce the size of the internal Telit modem buffers


    2) Be able to query either:

    a) the state of the internal buffers (i.e. to know how much data is in the buffers)

    b) when packet get sent over-the-air and hence are removed from the internal buffers


    #1 would allow the existing RTS/CTS to do its job for us


    #2 would allow us to implement our own application-level control flow by only issuing a new packet when we know for sure that the previous one has been removed from the buffers (in other words, have a single packet "in transit" at the same time).


    For #2 option b) above, we have identified a command that we think might gives us what we want, namely AT GDATAVOL. This commands returns a counter of data actually sent through the radio, so we think a scheme where:

    – we send a packet

    – we poll AT GDATAVOL waiting for the send counter to increase

    – we send the next packet

    – …

    might work for what we need, but we need confirmation as it requires some knowledge of the internal details of how the send counter is increased.


    Please advise us about possible options for our application.



    C?t?lin Drul?