Commit Graph

52 Commits (tools-release-6.1.0)

Author SHA1 Message Date
Kevin Bracey 355b45ade1 Cellular: Convert to Chrono
Note that documentation for random_max_start_delay config setting has
been changed to indicate that the setting is in seconds, and always has
been. No functional change.
2020-05-11 14:18:04 +03:00
Kimmo Vaisanen bd0f939277 Cellular: Remove support for multiple ATHandlers
Major changes:
- Dependency to FileHandle removed from base classes
- AT_CellularDevice owns the default FileHandle and shares it with AT -classes
- Hang-up -detection moved as CellularContext::configure_hup(). Cannot be configured via CellularDevice any more.

Result on NRF52840_DK + BG96:
GCC:
Total Static RAM memory (data + bss): 29360(+296) bytes
Total Flash memory (text + data): 130660(-832) bytes

ARM:
Total Static RAM memory (data + bss): 261554(+8) bytes
Total Flash memory (text + data): 127573(-1193) bytes

IAR:
Total Static RAM memory (data + bss): 25479(+296) bytes
Total Flash memory (text + data): 102418(-527) bytes

RAM increase is because now ATHandler is no longer created with new -operator but is now member of AT_CellularDevice,
so image tool is able to count it. Actually total RAM consumption has decreased due to removed variables.
2020-01-23 09:27:44 +02:00
Martin Kojtal ecf4d62dc5
Merge pull request #12265 from AriParkkila/cell-fea-refactor
Refactor unnecessary functions from cellular driver
2020-01-17 13:57:06 +00:00
Ari Parkkila f9eef97ead Cellular Refactor get_send_delay() into CellularProperty 2020-01-17 00:28:41 -08:00
Hugues Kamba 9e11e5b43d Cellular: Replace UARTSerial references with BufferedSerial
`BufferedSerial` is `UARTSerial` renamed to convey the original purpose
of the class. It is the recommended buffered I/O serial class.
2020-01-16 16:22:07 +00:00
Ari Parkkila ceea992b40 Cellular: Refactor is_protocol_supported() into CellularProperty 2020-01-15 23:04:00 -08:00
Ari Parkkila e2cb18061e Cellular: Refactor get_max_socket_count() into CellularProperty 2020-01-15 23:04:00 -08:00
Lin Gao c8524c25be add config option and property to choose automatic fallback for PLMN manual operator selection 2019-12-19 11:26:13 -06:00
Antti Kauppila e51230c5e4 Remove CellularBase and AT_CellularBase
Removed CellularBase and AT_CellularBase from cellular stack and updated both code and unittests accordingly.

Moved property handling into AT_CellularDevice
2019-12-09 15:25:22 +02:00
Ari Parkkila 823993e7b1 Cellular: Add flow control (IFC) in BG96 AT driver 2019-09-16 03:16:36 -07:00
Martin Kojtal 66c39e0bca
Merge pull request #11424 from mirelachirica/stack_type_ip_versions
Stack type ip versions
2019-09-13 11:46:06 +02:00
Mirela Chirica 78f4e8b12f Cellular: Enable IPv6 stack property for BG96 2019-09-12 12:56:29 +03:00
Ari Parkkila cb20277701 Cellular: Fix BG96 power on and connect 2019-09-04 03:24:11 -07:00
Martin Kojtal 39733cbc0b
Merge pull request #11306 from AnttiKauppila/ATHandler_improvements
At handler improvements
2019-09-02 12:08:44 +02:00
Antti Kauppila d08d55da88 New ATHandler functions taken into use
New ATHandler functions taken into use for rest of the targets (BG96 was updated initially) to reduce code size. This means basically that new functions using variadic list approach are taken into use and with those one can usually write AT commands in single line instead of multiple lines.
Only internal changes and API's are not modified.
2019-08-27 09:15:51 +03: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
Ari Parkkila 7a5e4ca5da Cellular: Fix BG96 power up 2019-07-18 23:13:36 -07:00
Martin Kojtal 979f26f74d
Merge pull request #10875 from mirelachirica/revert_ipv6_bg96
Cellular: Remove IPV6 and IPV4V6 as supported properties for BG96
2019-06-24 14:55:50 +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
Mirela Chirica ce6415bfce Cellular: Remove IPV6 and IPV4V6 as supported properties for BG96
IPV6 and IPV6V4 support is also network dependent not only modem.

Having these properties enabled for a modem requires a fallback
mechanism during PDP context activation. This mechanism is missing
at the moment and that can result in imposibility to establish
succesfull connection when network only supports IPV4 contexts.
2019-06-20 14:48:07 +03:00
Anna Bridge 3e6f5eba6c
Merge pull request #10764 from mirelachirica/bg96_sockid_fix_ipv6_support
BG96 ipv6 support and socket id fix for BG96 and M26
2019-06-12 17:04:46 +01:00
Mirela Chirica 0339ffd1b9 Cellular: Added handling for BG96 network PDP context deactivation 2019-06-11 16:05:27 +03:00
Mirela Chirica b57d978bbd Cellular: Added IPV6 and IPV4V6 as supported properties for BG96 2019-05-30 14:07:33 +03:00
Ari Parkkila e49d7bbdcd Cellular: Add BG96 power control 2019-05-24 00:30:04 -07:00
Pekka Pesu 93cb530b94 add BG96 povermanagemet 2019-05-15 00:50:39 -07:00
Pekka Pesu 4d3f1a456d BG96 power handling added 2019-05-15 00:50:32 -07:00
Teppo Järvelin dba3d42362 Cellular: call AT+CGEREP after sim is ready
Current implementation did call AT+CGEREP before sim was ready
and it was failing in most modems.
2019-03-18 08:10:09 +02:00
Martin Kojtal 4df969fc2c Merge branch 'tr-debug-cell' of https://github.com/sarahmarshy/mbed-os into rollup 2019-03-14 11:36:59 +00:00
Sarah Marsh ae45096ce6 Fix undefined tr_debug for QUECTEL_BG96 cellular feature 2019-03-08 11:22:11 -06:00
mudassar-ublox 6c347eafe5 C030_N211 cellular api refactoring 2019-02-26 17:28:01 +05:00
Ari Parkkila 50a276ead8 Cellular: Fix Quectel BG96 driver RTS/CTS setup 2019-02-17 23:53:11 -08:00
Ari Parkkila af0d2cf61d Cellular: Update API description to match better onboard_modem_api 2019-01-22 02:24:45 -08:00
Ari Parkkila 269d151b12 Cellular: Default modem drivers with FF_ARDUINO 2019-01-22 02:24:45 -08:00
Ari Parkkila 75caa75a96 Cellular: Add get_target_default_instance in CellularDevice 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 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 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 2dde5a4376 Cellular: Move ready_cb from power to device 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
Teppo Järvelin fc4ed93e08 Cellular: Fix to use PPP stack in PPP mode
In QUECTEL_BG96 and QUECTEL_BC95 there was missing #ifdefs for
PPP mode and our stack was used. Also BG96 needed to be added
AT_CellularBase::AT_CGDATA as not supported.
2018-12-14 09:40:33 +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 ad2abbe887 Cellular: major refactoring while introducing new CellularContext class. 2018-11-11 14:12:49 +02:00
Teppo Järvelin 8f4acc14ca Cellular: CellularDevice:get_default_instance() implemented
Removed copy-paste code from targets by creating implementation methods to override.
2018-09-07 14:49:18 +03:00
Ari Parkkila 7d006f6f6a Cellular: Target support for AT+CCID and AT+CGSN 2018-06-15 14:28:48 +03:00
Mirela Chirica 350d7916cf Release AT handler if network not created 2018-03-08 12:50:14 +02:00