Commit Graph

358 Commits (ced234607ebb7407528fd96b51cf1bb15f5da785)

Author SHA1 Message Date
Martin Kojtal a1540c5f77
Merge pull request #11245 from dextero/8bit-sms
AT_CellularSMS: allow configuring SMS encoding (7-bit/8-bit) at initialization
2019-08-23 13:51:59 +02:00
Martin Kojtal 5c09ff12ac
Merge pull request #11220 from jarvte/fix_cellular_dns_test
Fix cellular dns test with IAR compiled binary
2019-08-22 10:57:22 +02:00
Martin Kojtal 0b49952b9e
Merge pull request #11249 from dextero/get-sms-zero
Make AT_CellularSMS::list_messages support index 0 in SMS inbox
2019-08-20 10:27:57 +02:00
Martin Kojtal 9ccfe49d12
Merge pull request #11247 from dextero/international-numbers
AT_CellularSMS: set "international" flag in PDU when applicable
2019-08-20 10:27:13 +02:00
Martin Kojtal b849bc1e3d
Merge pull request #11201 from mirelachirica/bug_virtual_in_constructor
Cellular: Fixed improper AT handler setup through virtual calls in co…
2019-08-20 09:52:28 +02:00
Martin Kojtal a5a2036c65
Merge pull request #11224 from AnttiKauppila/Coverity_fixes
Coverity issues fixed
2019-08-20 09:40:20 +02:00
Marcin Radomski 17f6f1c0e3 Make AT_CellularSMS support index 0 in SMS inbox
When AT+CGML is used to retrieve list of SMS stored in modem inbox,
every message has an associated index. ETSI TS 127 005 v7.0.0 does not
specify what is the allowed range of such indices - all it says is
"integer type; value in the range of location numbers supported by the
associated memory".

Usually, AT modems use positive indexes (starting at 1). Quectel BG96
modem takes a different approach, indexing messages starting at 0.

Current implementation of `AT_CellularSMS::list_messages()` considers
index 0 invalid and ignores such message, effectively making it
impossible to access using mbed-os API.

This commit changes the behavior so that value of 0 is handled as any
other positive message index.
2019-08-16 14:19:29 +02:00
Marcin Radomski 2bfa4e9b8d AT_CellularSMS: set "international" flag in PDU when applicable
Currently, create_pdu receives a destination address without '+' prefix,
and always sets the "type of address" to "unknown". That means, the
number needs to contain appropriate international number prefix (00/011)
if necessary - which is not the case if the leading + is simply
stripped.

This changes send_sms behavior so that when a SMS is sent to an
international number (indicated by leading +):

- AT+CMGS command receives the number with + prefix,
- created PDU has the "international" flag set.
2019-08-16 13:30:59 +02:00
Marcin Radomski f3e9501ac6 Increase PDU buffer size to fit 8-bit-encoded hex string 2019-08-16 13:20:37 +02:00
Marcin Radomski 14f8d15242 Add option to set up SMS encoding 2019-08-16 12:24:54 +02:00
Mirela Chirica 75c823c1a3 Cellular: Fixed improper AT handler setup through virtual calls in constructor
Added AT handler setup method to be used for initialisation routines
that are virtual and therefore cannot be called from constructor.
2019-08-16 10:57:37 +03:00
Anna Bridge 2af2b1b18b
Merge pull request #11190 from jarvte/fix_wise1570_netsocket_tests
Cellular: failure when deleting created context is not considered error
2019-08-15 12:58:32 +01:00
Anna Bridge 797e58a2b3
Merge pull request #11148 from AriParkkila/cell-sim-pin
Cellular: Fix SIM pin enter command
2019-08-15 12:49:24 +01:00
Antti Kauppila 84063bf222 Coverity issues fixed 2019-08-14 16:22:05 +03:00
Teppo Järvelin 6a17d74b55 Cellular: notify global up after we have IP address
CellularContext now tries to get an IP address after connect and before
sending NSAPI_STATUS_GLOBAL_UP. Even if we don't the IP address from
the modem we will send NSAPI_STATUS_GLOBAL_UP and return success.
Modem has an ip address but for some reason some modems don't
give it to us.
2019-08-14 12:54:13 +03:00
Teppo Järvelin 3c1bf0a9e2 Cellular: moved string_to_pdp_type from AT_CellularContext to CellularUtil
string_to_pdp_type is a common method for AT and other layers.
Without moving there will be duplicate methods.
2019-08-12 10:27:57 +03:00
Teppo Järvelin 10251ab3b2 Cellular: failure when deleting created context is not considered as an error
If delete fails there is nothing we or application can do. There is no point
returning an error for this. This affects to AT_CellularContext::disconnect
not returning an error if context delete fails.
2019-08-09 12:27:25 +03:00
Seppo Takalo 976c30c52b
Merge pull request #11162 from AriParkkila/cell-dns
Add DNS servers from cellular PDP to nsapi
2019-08-07 14:06:49 +03:00
Seppo Takalo 46a56fb47b
Merge pull request #11154 from AriParkkila/cell-shutdown-stm
Cellular API shutdown to stop state machine
2019-08-06 11:34:44 +03:00
Ari Parkkila e1124668db Cellular: Add DNS servers from PDP contexts to nsapi_dns 2019-08-05 21:53:24 -07:00
Ari Parkkila ed3562e764 Cellular: Fix shutdown to stop statemachine 2019-08-02 02:26:12 -07:00
Ari Parkkila cbe2b50a32 Cellular: Fix SIM pin enter command 2019-08-01 03:46:33 -07:00
Mirela Chirica 341cc2be03 Cellular: Remove unnecessary local variables 2019-08-01 13:26:05 +03:00
Ari Parkkila ac78b5ab16 Cellular: Fix to delete context just once 2019-07-23 03:04:24 -07:00
Kevin Bracey a522dcfa0a Replace deprecated wait calls 2019-07-15 10:13:50 +03:00
Kevin Bracey fc8e8f67c6 Deprecate wait/wait_ms APIs 2019-07-15 10:13:50 +03:00
Kevin Bracey 607856ee9a Set unit tests to C++14
Adjust some non-C++11-compatible code that failed as a result.
2019-07-09 19:08:57 +03:00
Martin Kojtal eadc799584
Merge pull request #10919 from jeromecoutant/PR_AT_MUTEX
AT Cellular Network: mutex lock issue
2019-07-05 09:03:07 +01:00
Antti Kauppila c315672413 Doubled ATHandler's BUFF_SIZE 2019-07-02 10:17:06 +03:00
Martin Kojtal d2c73f2bcd
Merge pull request #10842 from ghseb/cellular-stack-type-fixes
Cellular: Stack type fixes
2019-07-01 09:23:21 +01:00
jeromecoutant 758a4bb56a AT Cellular Network: mutex lock issue 2019-06-28 16:08:52 +02:00
Tero Jääskö bae3043e92 cellular: AT: fix build on ARMCC5
ARMC5 failed to compile the code with debug-profile (!!) as va_list
is getting into std:: namespace when one includes <cstdarg>. Other
compilers seem to be more relaxed, and so is ARMC5 if compiled
with other profiles.

Add the explicit std:: to references of va_list.

While here, remove one extra copy of "#include "PlatformMutex.h""
and a "#include <stdarg.h>" which is kind of duplicate of
"#include <cstdarg>".

Error being fixed:
--8<--8<--8<--
Compile [ 81.8%]: ATHandler.cpp
[Error] ATHandler.h@552,0:  #20: identifier "va_list" is undefined
[Error] ATHandler.cpp@1226,0:  #147: declaration is incompatible with "void mbed::ATHandler::handle_args(const char *, <error-type>)"  (declared at line 552 of "./mbed-os/features/cellular/framework/AT/ATHandler.h")
[ERROR] "./mbed-os/features/cellular/framework/AT/ATHandler.h", line 552: Error:  #20: identifier "va_list" is undefined
"./mbed-os/features/cellular/framework/AT/ATHandler.cpp", line 1226: Error:  #147: declaration is incompatible with "void mbed::ATHandler::handle_args(const char *, <error-type>)"  (declared at line 552 of "./mbed-os/features/cellular/framework/AT/ATHandler.h")
./mbed-os/features/cellular/framework/AT/ATHandler.cpp: 0 warnings, 2 errors
2019-06-26 19:58:34 +03:00
Martin Kojtal 34eefb49fa
Merge pull request #10858 from LMESTM/fix_cellular_properties
Check Cellular Properties have been set
2019-06-25 10:58:23 +01:00
Martin Kojtal 13081a21ab
Merge pull request #10808 from mirelachirica/bg96_pdpdeact
Cellular: Added handling for BG96 network PDP context deactivation
2019-06-24 11:23:40 +01:00
Laurent Meunier 3286472de9 Check Properties have been set 2019-06-20 09:23:48 +02:00
Anna Bridge 37640301e0
Merge pull request #10812 from jarvte/fix_multiple_urc_athander
Cellular: fix athandler to use correct timeout in case of multiple urc's
2019-06-19 15:03:36 +01:00
Anna Bridge 6000724de6
Merge pull request #10703 from AnttiKauppila/optimisation
Cellular: Removed boilerplate code
2019-06-19 12:06:10 +01:00
Sebastian Stockhammer 402c471e70 Require exact context type match 2019-06-17 10:03:06 +02:00
Antti Kauppila 1ed338ef28 Valgrind & unittest fixes 2019-06-13 15:15:53 +03:00
Teppo Järvelin 6b11ca1371 Cellular: fix athandler to use correct timeout in case of multiple urc's
Start time was not updated when multiple urc's were found and so timeout
was set to zero. Now that start time is updated, timeout is correct.
2019-06-12 11:21:00 +03:00
Mirela Chirica 0339ffd1b9 Cellular: Added handling for BG96 network PDP context deactivation 2019-06-11 16:05:27 +03:00
Antti Kauppila e19249f276 Tracing added for Handle_start + doxygen updates 2019-06-10 17:18:18 +03:00
Antti Kauppila 43b67459ae Assert handling added 2019-06-06 13:12:29 +03:00
Antti Kauppila 9d8969daa7 Small fixes and doxygen update 2019-06-04 10:41:16 +03:00
Antti Kauppila 7f199ceeef Added missing _cid handling 2019-06-02 18:55:50 +03:00
Martin Kojtal 523ad23a30
Merge pull request #10656 from jarvte/fix_cellularctx_destr
Cellular: AT_CellularContext disconnect in non-blocking mode
2019-05-31 12:35:59 +01:00
Antti Kauppila 83d62fbb9c astyle fixes 2019-05-29 20:13:22 +03:00
Antti Kauppila 77e8374058 Cellular: Removed boiler plate code 2019-05-29 16:17:08 +03:00
Martin Kojtal 9cc1caa031
Merge pull request #10596 from kjbracey-arm/sem_acquire
Introduce Semaphore::acquire methods
2019-05-29 06:22:30 +01:00
Kevin Bracey 2fbbd9d2ca Introduce Semaphore::acquire methods
Deprecate wait() in favour of acquire(), try_acquire(),
try_acquire_for() and try_acquire_until().

Brings Semaphore more into line with CMSIS-RTOS 2 (which uses "acquire"),
itself (as it has "release"), and other classes having "try", "try for"
and "try until".

Also steps away from vague "wait" term - the primary operation here is
to acquire the semaphore, and this will of course sleep.
2019-05-28 17:02:06 +03:00