Commit Graph

311 Commits (43a304351a01e7819e583a9dbf6872173f307d9f)

Author SHA1 Message Date
Teppo Järvelin ec73c8a9c7 Cellular: fix connect-disconnect sequence called many times
Fix syncing back to at mode after ppp disconnect.
Fix AT_CellularContext flags and states to allow new connect after disconnect.
Fix that state machine is not reseted in disconnect is it's running (might be
running because of another context or new connect already started).
2019-03-01 14:47:41 +02:00
Teppo Järvelin 4077898de1 Cellular: fix issue where CGACT not supported in coming firmware in BG96. 2019-02-28 08:36:31 +02:00
mudassar-ublox 6c347eafe5 C030_N211 cellular api refactoring 2019-02-26 17:28:01 +05:00
Cruz Monrreal 50af2c341c
Merge pull request #9752 from mirelachirica/add_comment_fix_warning
Add comment fix warning
2019-02-21 17:30:34 -06: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
mudassar-ublox da797ef946 C030_N211 cellular api 2019-02-21 14:44:20 +05:00
Cruz Monrreal 2234dac127
Merge pull request #9751 from AriParkkila/athandler-set_at_timeout
Cellular: Fix ATHandler set/restore_at_timeout with mutex lock
2019-02-19 15:29:38 -06:00
Cruz Monrreal e3bc37b4de
Merge pull request #9655 from mirelachirica/nonip_doxygen_updates
Cellular: Non-IP doxygen updates
2019-02-19 15:29:14 -06:00
Mirela Chirica 9ddb843cc8 Cellular: Added explanatory comment for AT cellular stack's socket_open routine 2019-02-19 10:18:08 +02:00
Ari Parkkila d48adcce2c Cellular: Fix ATHandler set/restore_at_timeout with mutex lock 2019-02-19 00:16:45 -08:00
Mirela Chirica 57a93bbd0a Cellular: Non-IP doxygen updates 2019-02-18 09:53:59 +02:00
Ari Parkkila 3bcf51385e Cellular: Handling of TCP endpoint closed 2019-02-17 23:51:08 -08:00
Ari Parkkila 5aaf42c418 Cellular: ATHandler debugging relieved 2019-02-17 23:49:01 -08: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
Cruz Monrreal 7f248970ec
Merge pull request #9660 from blind-owl/clean_cellular_trace
Cellular: clean sensitive information from trace
2019-02-15 12:28:25 -06:00
Ari Parkkila 0c697f4421 Cellular: Fix sigio to be released in ATHandler destructor 2019-02-15 05:07:36 -08:00
Cruz Monrreal 67abaf5fa7
Merge pull request #9706 from jarvte/fix_powering_onboard_modems
Cellular: fix onboard modems powering failure.
2019-02-14 20:26:51 -06:00
Teppo Järvelin e4018bd9bb Cellular: fix onboard modems powering failure
Don't call soft power on if device was already powered.
Some modems need to wait before sending anything to modem after soft powering.
2019-02-14 12:39:37 +02: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
Neil MacMullen f29c5b22a1 Keep style linter happy 2019-02-12 14:37:07 +00:00
Neil MacMullen a7f4cbcdce Make a few trivial syntactic changes to better support cross-compilation 2019-02-12 12:01:05 +00:00
Mirela Chirica 6af725822b Cellular: Fix socket bind tests for BG96 2019-02-08 13:02:18 +02:00
Nir Sonnenschein 8c2ad14ace
Merge pull request #9568 from ARMmbed/feature-cellular-refactor
Merge feature cellular refactor
2019-02-07 18:17:32 +02:00
Martin Kojtal a0ec77d9a8
Merge pull request #9378 from oscarh/master
Add get_connection_status() override in CellularContext
2019-02-05 10:39:00 +01:00
Martin Kojtal 50b5f57c28
Merge pull request #9457 from blind-owl/fix_valgrind_defects_from_cellular
Fix valgrind defects from cellular
2019-01-31 11:12:00 +01:00
Ari Parkkila 95839662c6 Cellular: Fix cellular specific Greentea tests 2019-01-24 23:34:44 -08:00
Jari Poyhonen 84536bd09e cellular ATHandler update due valgrind run 2019-01-23 09:43:03 +02:00
Ari Parkkila c4de2f2f0e Cellular: Power API updated to match onboard_modem_api 2019-01-22 02:24:45 -08:00
Ari Parkkila 139d506a24 Cellular: Move power on/off to device and remove CellularPower 2019-01-22 02:24:45 -08:00
Mirela Chirica ba3727b4e8 Cellular: Unit tests for Non-IP socket 2019-01-22 02:24:45 -08:00
Mirela Chirica d301e13610 Cellular: Non-IP socket and PDP context for EPS control plane data delivery 2019-01-22 02:24:44 -08:00
Teppo Järvelin 84e5013a2d Cellular: added setting of data carrier support for UART. 2019-01-22 02:23:04 -08:00
Teppo Järvelin fa5d0fc358 Cellular: Added generic cellular modem
Generic cellular module (GENERIC_AT3GPP) can by used as a default
module when porting new cellular module. It's a good starting point
and eases porting of new modules. GENERIC_AT3GPP uses only standard
3GPP AT commands when communicating with the modem.
2019-01-22 02:23:04 -08:00
Teppo Järvelin 0c9130efeb Cellular: change stack_type_supported to get_property
Change usage of AT_CellularContext::stack_type_supported to
AT_CellularBase::get_property. This way we can rid of
targets overriding stack_type_supported and delete
unnecessary classes and simplify new targets.
2019-01-22 02:23:04 -08:00
Teppo Järvelin 7c9f9d47ec Cellular: Remove target files inheriting from AT_CellularNetwork
After AT_CellularNetwork::has_registration was replaced with
CellularProperties and better
AT_CellularNetwork::set_access_technology_impl default
implementation we can delete most of the target specific classes
that inherit AT_CellularNetwork.
2019-01-22 02:23:04 -08:00
Teppo Järvelin 9a72c221d8 Cellular: Change AT_CellularNetwork to use CellularProperties.
This change enables removing function has_registration from
class AT_CellularNetwork and all targets inheriting
AT_CellularNetwork.
2019-01-22 02:23:04 -08: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
Teppo Järvelin 8fcd2e0401 Cellular: changed support features to CellularProperty array. 2019-01-22 02:23:04 -08:00
Ari Parkkila c7486b2a0d Cellular: Added shutdown() 2019-01-22 02:23:04 -08:00
Ari Parkkila bdddb445a6 Cellular: Moved reset from power to device 2019-01-22 02:23:03 -08:00
Ari Parkkila 1bc84404b2 Cellular: Removed set_power_level() 2019-01-22 02:23:03 -08:00
Ari Parkkila 0813b969f7 Cellular: Unify set_at_mode and init_module into init() 2019-01-22 02:23:03 -08:00
Ari Parkkila 2dde5a4376 Cellular: Move ready_cb from power to device 2019-01-22 02:23:03 -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 e49f90fb0b Cellular: Move device_ready from power to device 2019-01-22 02:23:03 -08:00
Ari Parkkila 38f79a9b65 Cellular: Move PSM setting from power to device 2019-01-22 02:23:03 -08:00
Ari Parkkila 36292a4f14 Cellular: Move eDRX setting from power to network 2019-01-22 02:23:03 -08:00
Teemu Kultala 22a536a78a cellular: eps ciot optimization network support check astyle fix 2019-01-22 02:23:03 -08:00
Teemu Kultala f94117559b cellular: eps ciot optimization network support check
-added an API for checking network eps ciot optimization support
-renamed the API for getting the UE parameters
-the API for setting the UE parameters includes now a callback, which
will be called once network support for eps ciot optimization is known
2019-01-22 02:23:03 -08:00
Teppo Järvelin 22d9105318 Removed CellularSIM interface.
Moved methods to classes CellularDevice and CellularInformation.
SIM interface was removed to simplify cellular usage and
methods better suite new classes.
Updated greentea and unit tests.
2019-01-22 02:23:03 -08:00
Ari Parkkila 235c2bc00d Cellular: Removed get_extended_signal_quality and changed get_signal_quality 2019-01-22 02:23:03 -08:00
Ari Parkkila 397b396291 Cellular: Update cellular documentation 2019-01-21 11:43:49 +02:00
Oscar Hellström 58b176ca04 Add connection status override for CellularContext
Add override for the virtual method get_connection_status() inherited
from NetworkInterface. The method in the base class returns
NSAPI_STATUS_ERROR_UNSUPPORTED. The CellularContext has the member
_connection_status, which means that we could return this.
2019-01-15 09:37:24 +01: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
Cruz Monrreal 945a52df1c
Merge pull request #9052 from mirelachirica/at_handler_fix_consume_to_stop_tag
Cellular: Rewrite AT handler consume to tag
2018-12-13 18:15:42 -06:00
Mirela Chirica 806e95cf67 Cellular: Rewrite AT handler consume to tag
If sequence from buffer contains tag but symbol before tag is same as
first symbol of the tag, then the tag wasn't detected.

For example, "\r\n" tag was not found from "\r\r\nOK" sequence.
2018-12-11 15:36:33 +02:00
Terence Zhang cc63a31eb3 Formatted via astyle. 2018-12-11 16:50:14 +08:00
Terence Zhang d3d1e0d30b Fix for the fault exception issue:
https://github.com/ARMmbed/mbed-os-example-cellular/issues/112
2018-12-10 11:07:13 +08:00
Terence Zhang a713358d3c Fix the fault exception issue in socket_recvfrom with the null pointer parameter as SocketAddress *addr. 2018-12-10 11:07:12 +08:00
Martin Kojtal bf36ff77c1
Merge pull request #8855 from michalpasztamobica/warnings_fix
Fix compilation warnings (apart from nanostack)
2018-12-03 13:31:55 +01:00
Martin Kojtal b9927e5f27
Merge pull request #8795 from TeemuKultala/cellular_connect_status_fix
cellular: registration status change fix
2018-11-30 14:32:34 +01:00
Michal Paszta e101943cce Fix compilation warnings (apart from nanostack) 2018-11-26 14:27:48 +01:00
Teemu Kultala a1b1d7c4bd cellular: registration status change fix 2018-11-26 11:20:21 +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
Martin Kojtal a2ae34b0e6 cellular: fix coding style 2018-11-15 07:23:37 +00:00
Teppo Järvelin 14f3740c13 Cellular: fixed cellular greentea tests after major refactoring. 2018-11-13 18:33:55 +02:00
Teppo Järvelin 3f6e088782 Cellular: Fixed backward compatibility with OnBoardCellularInterface and set default values in NetworkInterfaceDefaults.cpp. 2018-11-11 14:13:05 +02:00
Teppo Järvelin 1a047efade Cellular: review fixes, added missing fixes from master. 2018-11-11 14:13:05 +02:00
Teppo Järvelin 9fb83024ea Changed CellularContext to inherit from CellularBase instead of NetworkInterface. \n Changed Device constructor to take Filehandle instead of eventqueue. 2018-11-11 14:13:05 +02:00
Teppo Järvelin dbbe2ddc59 Cellular: fixed to compile even if CELLULAR_DEVICE and rx/tx are not defined. 2018-11-11 14:13:05 +02:00
Teppo Järvelin d1ff9ed68d Cellular: added to reset state machine is we get disconnected so application can try again. 2018-11-11 14:13:05 +02:00
Teppo Järvelin 609b0f71be Cellular: minor doxygen fixes. 2018-11-11 14:13:05 +02:00
Teppo Järvelin 43e08a0adf Cellular: fixing unit test after refactor. 2018-11-11 14:12:49 +02:00
Teppo Järvelin ad2abbe887 Cellular: major refactoring while introducing new CellularContext class. 2018-11-11 14:12:49 +02:00
Teppo Järvelin 8880538eba Cellular: Introduced new state machine to replace old CellularConnectionFSM
CellularDevice class own new state machine. Now we don't have to expose state machine
which may change and so we don't have to make API changes if that happens.
EasyCellularConnection uses now CellularDevice instead of old state machine.
2018-11-11 14:11:21 +02:00
Martin Kojtal 71d35749f9 cellular: fix coding style 2018-11-07 08:56:32 +00:00
Mirela Chirica c8f2ed3d30 Cellular: ATHandler to reset match URC generated errors and continue response handling 2018-10-29 13:33:11 +02:00
Mirela Chirica 4e6cbb8f5f Cellular: ATHandler's mem_str fixed to work on matching strings 2018-10-29 13:33:10 +02: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
Cruz Monrreal 69904ea43e
Merge pull request #8313 from kivaisan/reduce_memory_footprint
Reduce cellular memory footprint
2018-10-23 09:05:39 -05:00
Cruz Monrreal ba23fef90b
Merge pull request #8350 from mirelachirica/at_consume_to_tag_fix
Cellular: Fix for AT handler consume to tag
2018-10-22 19:45:24 -05: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
Kimmo Vaisanen 553718ba5b Cellular: Optimize memory usage for gsm_to_ascii table
gsm_to_ascii table contains ASCII codes, so it can be a char table instead of int table.

This reduces ROM usage by 384 bytes.
2018-10-22 08:35:33 +03:00
Mirela Chirica 31f153af7d Cellular: Fix for AT handler consume to tag
If sequence from buffer contains tag but symbol before tag is same as
first symbol of the tag, then the tag wasn't detected.

For example, "\r\n" tag was not found from "\r\r\nOK" sequence.
2018-10-19 15:21:02 +03:00
Cruz Monrreal a9f43239be
Merge pull request #8295 from AriParkkila/cell-cinterion
Cellular: Update Cinterion AT drivers
2018-10-15 10:10:23 -05:00
Kevin Bracey 1ef213ec89 Clean up Thread deprecation warnings
Static Thread methods and signal methods have been deprecated. Remove
all references in the main code, and most of the tests. Some tests of
the deprecated APIs themselves remain.
2018-10-12 14:57:13 +03:00
Mirela Chirica ffb9cdb4b3 Cellular: Registration parameters as struct 2018-10-09 10:49:47 +03:00
Mirela Chirica 723e913bcc Cellular: AT handler read string up to delimiter or stop tag 2018-10-09 10:47:25 +03:00
Ari Parkkila 3784dd066e Cellular: Fixed AT drivers for Gemalto/Cinterion cellular module to close internet service and profile. 2018-10-08 00:14:29 -07:00
Kimmo Vaisanen 05f0ba8e97 Cellular: Fix AT_CellularStack unittest
Missing CellularSocket constructor caused uninitialized values to be used.

Also changed comparision macros to ASSERT_EQ as suggested by GoogleTest guide.
2018-10-03 14:44:34 +03:00
Cruz Monrreal 9bd17d33f3
Merge pull request #7934 from wajahat-ublox/psm_method_typo
corrected a typo in AT_CellularPower::opt_power_save_mode
2018-09-27 10:20:44 -05:00
Mirela Chirica 983425e4fc Cellular: Fix cellular network unit test 2018-09-24 15:15:18 +03:00
Martin Kojtal 2e049ce035
Merge pull request #8019 from jarvte/fix_crash_in_close_cellularnetwork
Cellular: fixed crash when closing CellularNetwork via CellularDevice.
2018-09-24 09:06:34 +02:00
Cruz Monrreal 73a96a68cf
Merge pull request #8147 from AriParkkila/cell-auth
Fix authentication on a cellular network for Access Point Name (APN)
2018-09-22 16:25:35 -05:00
Cruz Monrreal f00c5643e5
Merge pull request #7944 from AnttiKauppila/unittests
Cellular Unittests refactored to GoogleTest framework
2018-09-18 11:30:23 -05:00