Commit Graph

63 Commits (b9d824d67cb15cf43a205aa5c78336aaa2aaeecf)

Author SHA1 Message Date
Teppo Järvelin 4608de3e1a Cellular: fix ATHandler destructor possible crash on delete
In some multithread cases there is possibility that process_oob function
was called after ATHandler was deleted. Fix is to wait if oob processing
is ongoing.
2019-10-16 11:53:52 +01:00
Martin Kojtal de627dad6a Merge branch 'read-int-zero' of git://github.com/dextero/mbed-os into dev_rollup 2019-08-28 18:37:46 +01:00
Marcin Radomski c0032c9055 ATHandler::read_int: allow returning 0 successfully 2019-08-16 14:14:58 +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
Antti Kauppila c315672413 Doubled ATHandler's BUFF_SIZE 2019-07-02 10:17:06 +03: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
Antti Kauppila 1ed338ef28 Valgrind & unittest fixes 2019-06-13 15:15:53 +03:00
Antti Kauppila e19249f276 Tracing added for Handle_start + doxygen updates 2019-06-10 17:18:18 +03:00
Antti Kauppila 9d8969daa7 Small fixes and doxygen update 2019-06-04 10:41:16 +03: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
Teppo Järvelin 9d67a8b61c Cellular: send disconnect to correct ctx
Disconnect was sent to all CellularContext classes even it concerned
one specific context. Some disconnect events are still sent to all
context classes. These event are coming from network and ment for all
context classes or event did not specify cid.
2019-04-17 13:53:40 +03:00
Mirela Chirica f100cd59c8 Cellular: Check for URC during AT response stop 2019-04-09 11:15:28 +03:00
Kimmo Vaisanen aff3815790 Cellular: Improve ATHandler AT traces
Original AT traces had several issue:
- Can be overwritten by other traces (printf/mbed-trace)
- No way to know which direction message was going (TX or RX)
- <cr> and <ln> characters were not visible in trace
etc.

This commit addresses those issues using mbed-trace and showing separately
each filehandle write and read.
2019-04-01 11:40:04 +03:00
Cruz Monrreal 6c4b4a5212
Merge pull request #10084 from mirelachirica/info_resp_issue_8829
Cellular: AT information response to return false on empty prefix
2019-03-16 22:59:24 -05:00
Mirela Chirica d12de2a199 Cellular: AT information response to return false on empty prefix 2019-03-13 15:49:33 +02:00
Volodymyr Medvid b0a33273ff Correctly include EventQueue.h
There are two EventQueue.h in mbed-os codebase:
events/EventQueue.h
features/FEATURE_BLE/ble/pal/EventQueue.h

By accident, `mbed compile` generates includes.txt with the correct
order of include search paths. This is not the case for the CMake
exporter: targets with FEATURE_BLE enables fail to compile with errors:

mbed-os/features/cellular/framework/AT/ATHandler.h:99:60: error:
'events' has not been declared

Update all places to always include either "events/EventQueue.h"
or "ble/pal/EventQueue.h": to always find the correct header.
2019-02-21 17:59:05 +02:00
Cruz Monrreal fdd2a9402a
Merge pull request #9728 from AriParkkila/at-handler-clear-sigio
Cellular: Fix sigio to be released in ATHandler destructor
2019-02-15 12:41:44 -06:00
Ari Parkkila 0c697f4421 Cellular: Fix sigio to be released in ATHandler destructor 2019-02-15 05:07:36 -08:00
Jari Poyhonen b6a0892e86 Cellular: clean sensitive information from trace
Information removed from the cellular subsystem trace log:
* SIM pin
* APN username and password

Added get_debug() to ATHandler.h to get the current trace state in order
to support suspend/resume of trace output.
2019-02-14 09:22:54 +02:00
Teppo Järvelin b0d37ebec4 Cellular: Removed unnecessary checks after new
After this change we were able to change methods
ATHandler::set_urc_handler and CellularDevice::set_ready_cb to void
and simplify error handling.
2019-01-22 02:23:04 -08:00
Ari Parkkila 19b24946df Cellular: AT remove_urc_handler changed to set_urc_handler(prefix, 0) 2019-01-22 02:23:03 -08:00
Ari Parkkila 397b396291 Cellular: Update cellular documentation 2019-01-21 11:43:49 +02:00
Teemu Kultala b87b52a45c cellular: AT Handler API changes after review 2018-12-14 13:19:03 +02:00
Teemu Kultala dbdbae3632 cellular: AT Handler API 2018-12-14 13:19:03 +02:00
Ari Parkkila 3d79b50dfb Cellular: Fix ATHandler URC processing 2018-11-25 23:47:23 -08:00
Martin Kojtal 5ad7c3ee6e Merge branch 'gracefully_disconnect' of https://github.com/jarvte/mbed-os into dev_rollup 2018-11-24 21:15:38 +00:00
Teppo Järvelin a655a538b0 Cellular: more gracefully disconnect. 2018-11-19 16:02:30 +02:00
Ari Parkkila 9bdeb68e74 Cellular: Updated debug prints, and network registration return value
Updated cellular debug trace prints:
 - Removed unnecessary prints.
 - Tracing more in DEBUG level.
 - Read/write bytes not printed on big packets.
 - Signal quality (RSSI) traced to log network problems.
 - Dismissed AT data is traced.
 - Modem type and firmware version are traced.

Network registration returns NotRegistered instead of StatusNotAvailable,
because that's not in 3GPP TS 27.007.
2018-11-19 02:55:43 -08:00
Mirela Chirica 273590f615 Cellular: Added ATHandler option to write parameters without delimiters 2018-10-29 13:33:09 +02:00
Mirela Chirica f016d1126f Cellular: AT handler to support only one callback per URC/prefix 2018-10-29 13:32:15 +02:00
Kimmo Vaisanen 963bf8146d Cellular: Refactor basic AT command stop and response reading into own method
This reduces ROM usage by few hundred bytes.
2018-10-22 09:44:12 +03:00
Antti Kauppila a6b4938844 Small improvements for test cases 2018-09-17 12:07:43 +03:00
Wajahat Abbas dfc8ca91fa made destructor virtual as class has a virtual method now 2018-08-01 16:59:18 +05:00
Wajahat Abbas fda096b4c4 Make ATHandler:cmd_start() virtual 2018-07-20 13:49:43 +05:00
Mirela Chirica aff55462f5 Cellular: Fix for ATHandler's read string and hexstring NULL termination 2018-07-10 15:09:09 +03:00
Teppo Järvelin d9a99b0a45 Cellular: release resources in state machine. Made sure that athandler does not try process urc's after switch to data mode. 2018-06-12 09:01:03 +03:00
Ari Parkkila 6a3dce839e Cellular: Updated coding guidelines 2018-05-17 09:02:54 +03:00
Ari Parkkila a146e0e7ff Cellular: AT debugging improved 2018-05-16 12:39:30 +03:00
Ari Parkkila 287a1a86d0 Cellular: AT handler review fixes 2018-05-14 10:25:00 +03:00
Ari Parkkila 3bdb6d1737 Cellular: Fixed ATHandler write poll timeout 2018-05-14 10:25:00 +03:00
Ari Parkkila 9b896a16bb Cellular: ATHandler yield to wait review fixes 2018-05-14 10:25:00 +03:00
Ari Parkkila 559abd3009 Cellular: AT requests are to be processed within time period 2018-05-14 10:24:59 +03:00
Teppo Järvelin b22a16fe4a Cellular: Added dynamic alloc and destruction to easycellular.
Now application can call connect and disconnect multiple times and resources are freed and constructed properly.
Also whole easycellular can be deleted and constructed again.
2018-05-03 12:47:47 +03:00
Mirela Chirica 042586938d Cellular: Common routine for string and hexstring reading 2018-04-25 14:09:20 +03:00
Mirela Chirica 1998173ede Cellular: Added read hex string support to AT handler 2018-04-25 14:09:19 +03:00
Ari Parkkila d7cabe2183 Cellular Greentea tests fixed 2018-04-11 09:38:13 +03:00
Ari Parkkila 6072407ec9 Cellular: async FSM updates 2018-04-11 09:31:44 +03:00
Teppo Järvelin 84b445f51c Fixed coverity warnings for class ATHandler and removed unnecessary assert from state machine. 2018-04-11 09:31:44 +03:00
Teppo Järvelin f0026e4c48 review fixed and some minor improvements. 2018-04-11 09:31:44 +03:00