SMS Server Tools 3
 Menu
Basic information:
Additional information:
Support:
Get SMS Server Tools 3:
Additional Options

 Sponsored links

 Search
Custom Search

 Visitor locations
 
 SMS Server Tools 3 Community
Welcome, Guest. The forum is currently read-only, but will open soon. Thu Nov 21, 2024 23:12
SMSTools3 Community » Help and support Bottom

[answered] fast mode

  This topic is locked

Page:  1

Author Post
Member
Registered:
Apr 2011
Location: Switzerland
Operating system name and version: busy box
Version of smsd: 3.1.14
Smsd installed from: sources
Name and model of a modem / phone: SIM300
Interface: serial

I am trying to use a fast mode for sending sms'es. Currently it takes about 8 sec to send one sms.
I have seen something like AT+CMMS=2 that would improve performance
however my modem does not seem to support this command:
AT+CMMS=?
ERROR

Can anyone help?

lbh

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
At least the manual SIM300_ATC_V2.01 does not talk about the command CMMS, so fast mode cannot be used with your device. And in any case, fast mode will require some changes to the code. See this topic for details: fast sms + queues.

Member
Registered:
Apr 2011
Location: Switzerland
Topic owner
thanks for the quick reply!

ok for the CMMS, but are there any other options that I can tweak to speed up the process of sending an sms? any tutorial about this topic that I can find on this site?

Regards
lbh

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
First set loglevel to 7 and then send couple of SMS. From the log it can be seen how much time is used for initialization, and for actual sending. If the time for initialization is remarkable, you could avoid to use init strings, by using start string, or store settings permanently to the modems memory.

Member
Registered:
Apr 2011
Location: Switzerland
Topic owner
Hello I have enabled the level 7 in logging and here is a snip of the log.
I can see some 4 to 5 sec before actually the sms file is sent to the modem for sending over the GSM network
How can I minimize this latency ?
Note that the init string is needed in my case to get back a status report...

Thanks for all the help
lbh
here is the log


Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
lbh00 wrote
Hello I have enabled the level 7 in logging and here is a snip of the log.
I can see some 4 to 5 sec before actually the sms file is sent to the modem for sending over the GSM network
How can I minimize this latency ?

:shock: I was wondering what the ....
but there was a duplicate block in your log, starting from 2011-06-05 19:50:47 ...

Okay, it takes about 3 seconds to initialize the modem, and then it takes about 4 seconds to send SMS.

When more than one SMS is sent consecutively, initialization is done only once. After the modem has been idle, initialization is done again. You could prepare two SMS for sending at the same time, and then check what is the latency for second SMS. Use a global setting logtime_ms = yes, it tells more specifically the time for each command.

lbh00 wrote
Note that the init string is needed in my case to get back a status report...

If you store CNMI setting as a permanent value in the modem's profile, you can drop the init string. Also, you can use start string as an alternative.

Member
Registered:
Apr 2011
Location: Switzerland
Topic owner
Hello,

I have switched the ms option on for the logging and sent 2 sms'es consecutively.
The first one takes 7 sec and the second takes 5 sec.
We can see from the time the server realizes that it has an sms to send up to the point when actually the data is sent to the modem there are about 4 sec for the first sms. In my application I rarely have consecutive sms'es to send so I would like to optimize the timing of the first sms sent.
Does using "start" option reduce the initial time spent in doing regular checks before send data to the modem?
I can see like checking if the modem is registered to the network and the signal quality ...
In the meantime i will try the start option and will let you know what are the findings

Thanks for all help
lbh


Member
Registered:
Apr 2011
Location: Switzerland
Topic owner
Hello,

I have tried the start option as well as check_network = 0
this reduced the time needed from 7sec to 6 sec.
I am wondering if we can remove these regular checks like:
ATE0+CMEE=1;+CREG=2
AT+CPIN?
AT+CSQ

This would improve the time delay by about 3 to 4 seconds
Regards

lbh

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
lbh00 wrote
I am wondering if we can remove these regular checks like:
ATE0+CMEE=1;+CREG=2

pre_init = no

lbh00 wrote
AT+CPIN?

Disable PIN and set pin = ignore
lbh00 wrote
AT+CSQ

status_signal_quality = no

lbh00 wrote
Does using "start" option reduce the initial time spent in doing regular checks before send data to the modem?

Start string is sent to the modem when smsd is started. Later it is not sent. You need to create a start string which contains commands needed by your modem. Later, if modem has any troubles, you need to restart smsd because initialization is done only when smsd is started. I do not recommend this kind of usage, but of course it's up to you what kind of system you do want.

The original "fast mode" is not relevant in your case, when only one SMS is sent. In the next version there is a setting "keep_radiolink_open", and that is what CMMS means (More Messages to Send).

Member
Registered:
Apr 2011
Location: Switzerland
Topic owner
Hello keke,
thanks for all the help!

ok when i disabled those options I gained between 2 to 3 sec
so now am down to 5 sec for the first sms and 4 for the second (send consecutively).

I understand that there is a compromise to do using this method :(.

Do you know of other methods (other than CMMS as my modem do not support it) to speed up sms sending?

Regards and thanks for all the help !

lbh00

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
lbh00 wrote
Do you know of other methods (other than CMMS as my modem do not support it) to speed up sms sending?

Other remarkable methods do not exist. When many SMS are sent consecutively, CMMS is for that and the modem just should be replaced to better one. Some 0.3 sec could be saved by playing with the prompt (>), but it's not sure if all modems support that, and it usually is not worth the effort and risk. However, the next version will have slightly smaller delay between commands, but it's not a huge change.

Member
Registered:
Apr 2011
Location: Switzerland
Topic owner
Ok I guess I will give up at this stage! :-)
Thanks for all the help and explanation throughout this case.

Regards

lbh

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
If you want to try, this is one change in the next version:

In the file modeminit.c:

    // read data
    got = read(modem_handle, answer +count, toread);
    // if nothing received ...
    if (got<=0)
    {
      // wait a litte bit and then repeat this loop
      got=0;
      usleep_until(time_usec() + 100000);
      timeoutcounter++;
    }
    else
 
'c' Syntax Highlight powered by GeSHi


is changed to:

    // read data
    got = read(modem_handle, answer + count, toread);
    // if nothing received ...
    if (got <= 0)
    {
      // wait a litte bit and then repeat this loop
      got = 0;

      // 3.1.15: Do not sleep if the loop will not continue:
      timeoutcounter++;
      if (timeoutcounter < timeout)
        usleep_until(time_usec() + 100000);
    }
    else
 
'c' Syntax Highlight powered by GeSHi


Member
Registered:
Apr 2011
Location: Switzerland
Topic owner
Hello keke,

I will try these changes out. However, If I understand the code correctly they will improve by a matter of few hundreds of milliseconds am I right?

will let you know of the outcome of my tests


Regards
lbh

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
lbh00 wrote
However, If I understand the code correctly they will improve by a matter of few hundreds of milliseconds am I right?

Yes, for each single command.

  This topic is locked

Page:  1

SMSTools3 Community » Help and support Top

 
Time in this board is UTC.  

Privacy Policy   SMS Server Tools 3 Copyright © Keijo Kasvi.