cancel
Showing results for 
Search instead for 
Did you mean: 

Delay between SPWF01 messages

paolo23
Associate II
Posted on August 31, 2015 at 19:13

Hi everybody, I'm evaluating the SPWF01SA and I'm wondering if there is a minimum delay between messages useful to determine the end of a transmission, ex. between the response to a command and a following WIND?

Thanks

Paolo
4 REPLIES 4
Posted on September 01, 2015 at 13:22

Ciao Paolo,

AT-commands and WINDS are not related. I mean: SPWF have synch indications (OK/ERROR) and asynch indications (+WIND).

- When you run an AT-command, you have to expect OK or ERROR reply, than go on to next AT-command;

- WINDs management must be in a ''background task'', since thay can happen in every moment.

Note: WINDs are never delivered between an AT-command and related OK/ERROR reply.

jerry

paolo23
Associate II
Posted on September 01, 2015 at 15:07

Thank you, Jerry.

As the command guide says, asynchronous messages can be sent at any time but not between commands and responses.

This means that a pending asynchronous message can theoretically be queued to a response and become a single transfer with it. In this case, a time-out in reception would not be enough to separate the messages. Is that right?

Paolo

Posted on September 01, 2015 at 15:24

Pending WINDs are queued, and printed after OK/ERROR.

Module side, they are always multiple transfers (2 or more printfs).

Using STM32 as external host: I suggest an UART management by DMA through a circular buffer, and an interrupt on UART IDLE detection. You can check circular buffer (and parse it!) when curcular buffer is [half]full, or when idle interrupt occurrs on UART.

If you prefer a different approach, estimate your timeout on used baudrate. Remember that every WIND from SPWF starts and ends with a CrLf.

Hope to be useful.

ciao

jerry

paolo23
Associate II
Posted on September 02, 2015 at 08:24

Yes, you are.

Ciao,

Paolo