Commit Graph

243 Commits (ced234607ebb7407528fd96b51cf1bb15f5da785)

Author SHA1 Message Date
Martin Kojtal 4567626ade
Merge pull request #10636 from u-blox/activation_status
+UPSND sent to poll activation status
2019-05-23 21:39:48 +01:00
Martin Kojtal 51b835b03b
Merge pull request #10473 from DanielDmlee/BG96_IPV6_only
Add exception case for IPV6 only mode of BG96.
2019-05-23 15:29:34 +01:00
Bilal Qamar 255e2e5623 Correction in AT Command 2019-05-23 16:15:10 +05:00
Bilal Qamar 4a37b13bd0 Coding style corrected 2019-05-23 14:26:38 +05:00
Hasnain Virk 9e72fa29e6 Updating Ublox to accomodate socket id assignment
Changes to accomodate socket id assigment upon actual creation of the
socket at the modem.
2019-05-22 23:44:09 -07:00
Hasnain Virk 2e53a71d45 Updating M26 to accomodate socket id assignment
This modem is a special case. It uses a given socket ID value rather
than providing one. A naive solution here would be to directly map the
index of a CellularSocket object in the CellularSocket container. But
considering the case where there are multiple sockets being opened (some
sockets being already created at the modem and some yet not created), direct mapping
to indices will not work. As it can happen that the CellularSocket
object is allocated but the socket id is not assigned yet as it is not
actually created on the modem.

In such a case, we check the container and assign the socket id from the
pool if an empty slot was found.
2019-05-22 23:44:09 -07:00
Hasnain Virk 3fffa3bd57 Updating BG95 to accomodate socket id assignment
Changes to accomodate socket id assignment upon actual creation of the
socket at the modem.
2019-05-22 23:44:09 -07:00
Hasnain Virk 0308cb826a Updating Gemalto Cinterion to accomodate socked id assignment
Changes introduced to accomodate the socket id assignment upon actual
creation of the socket at the modem.
2019-05-22 23:44:09 -07:00
Hasnain Virk 04242c7fa4 Updating BG96 to accomodate socket id assignment
Socket ids will be assigned in the create_socket_impl(...) method. This
is the point where an actual socket creation at the modem takes place.
2019-05-22 23:44:08 -07:00
Bilal Qamar fb51501234 Timer stopped after exiting while loop 2019-05-23 11:09:43 +05:00
Bilal Qamar defc244db2 +UPSND sent to poll activation status 2019-05-22 16:52:03 +05:00
Daniel Lee 26c3bcf759 Add a check step of IPv6 network to BG96
Need to check IPv6 address when use IPv6 network via BG96.

Signed-off-by: Daniel Lee <daniel.lee2@arm.com>
2019-05-22 15:49:00 +09:00
Martin Kojtal 344ad4372c
Merge pull request #10593 from kivaisan/fix_target_flow_control_flags
Cellular: Fix flow control pin configs for BC95 and Gemalto targets
2019-05-21 08:47:07 +01:00
Anna Bridge 25019df05e
Merge pull request #10554 from jarvte/remove_compile_warnings
Cellular: fixed compile warnings from cellular
2019-05-17 13:07:51 +01:00
Kimmo Vaisanen d0fff05443 Cellular: Fix flow control pin configs for BC95 and Gemalto targets 2019-05-16 12:15:38 +03: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
kevin.ong 75162f9e1a cellular: fix style 2019-05-15 01:08:11 +08:00
kevin.ong 20a06d8c2d cellular: fix Quectel BG96 missing unlock at socket_connect 2019-05-14 22:39:42 +08:00
Teppo Järvelin d56c8cafa8 Cellular: fixed compile warnings from cellular 2019-05-14 08:48:29 +03:00
Martin Kojtal 13880dcd1b
Merge pull request #10465 from jarvte/fix_imsi_length
Cellular: fix calls to ATHandler::read_string(...) give correct size
2019-05-03 08:38:40 +01:00
Martin Kojtal 4da21c04fe
Merge pull request #10463 from mirelachirica/wise_1570_tcp_endpoint_close
Cellular:  Add WISE-1570 handling for socket closing URC
2019-05-03 08:35:45 +01:00
Martin Kojtal 1ce073a9c2
Merge pull request #10402 from jarvte/disconnect_per_context
Cellular: send disconnect to correct ctx
2019-04-29 13:17:59 +01:00
Mirela Chirica 948f8b52d0 Cellular: Added WISE-1570 handling for socket closing URC 2019-04-26 10:12:12 +03:00
Teppo Järvelin 1abf600d03 Cellular: fix calls to ATHandler::read_string(...) give correct size
ATHandler::read_string(...) buffer size param was changed a long time ago
to include also NULL. Some calls still gave wrong size after this change.
2019-04-25 11:20:05 +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 88ea0db30d Cellular: Added BG96 handling for socket closing URC 2019-04-17 11:25:58 +03:00
Hasnain Virk 34fc828601 Flagging WEAK method implementation for default construction
CellularDevice::get_default_instance() is a weak method and is overriden
by either a default construction provided in the code or by application
at some stage. This method needs to be flagged otherwise using another
driver will be hindered by the default overriding of this driver.
2019-04-10 12:52:38 +03:00
Hasnain Virk 69efed266d Marking TX and RX pins for UARTSerial as NC
For default construction of the driver, it would be necessary to define
the pins. However as we don't know the correct pins, until/unless user
sets them up for us. So it makes sense to mark the pins as NC. It would
be easier to debug if the pins are set to NC if user forgot to set them
up.
2019-04-09 10:20:38 +03:00
Hasnain Virk 7ebfa90753 Adding pin polarity and changing the constructor
To make this driver more useful, we needed to do some changes. The
wirings for the modem can differ on the board so we also need to be
flexible in our approach.
It is now mandatory to provide the power pin and pin polarity in the
constructor alongwith the file handle. Reset pin is optional.
2019-04-08 17:32:52 +03:00
Hasnain Virk 57d9e27532 Tidying up the boiler plate code
A little tidying up was needed as there was some boiler plate code that
could be shoved into a corner and reused.
2019-04-08 17:32:52 +03:00
Hasnain Virk 24178bc374 AT+CGSN with EC2X does not take parameter
Standard 3GPP TS27.007 states that the AT+CGSN command can optionally
have type parameter that determines the output. However Quiectel EC2X
series doesn't accept parameters. We need to reflect that in the
cellular properties setup.
2019-04-08 17:32:52 +03:00
Hasnain Virk df7f8cdfcf CREG can handle lac/ci/lat
AT+CREG command can also provide information regarding lac/ci/lat etc so
we should set the mode correctly in cellular properties structure.
2019-04-08 17:32:52 +03:00
Hasnain Virk ab978bde6c Removing left over tracing
A test trace was left lurking around. Removed in this commit.
2019-04-08 17:32:52 +03:00
Hasnain Virk 04299e45a3 Basic driver for Quectel EC25/EC21
Provides basic power up / power down sequences for Quectel EC2X series
modems. Can be used in PPP mode. For using the on-board IP stack, we
will need to add and implement classes that provide context.

Driver constructor takes power and reset control pins along with the
FileHandle. A default construction is provided which can be chosen by
the application in its mbed_app.json. Otherwise the user is free to
construct as per demand.
2019-04-08 17:32:52 +03:00
Martin Kojtal 1d8c3d4553
Merge pull request #10179 from u-blox/n2xx_provide_default
Cellular: C030_N2XX default interface
2019-03-22 06:33:24 +01:00
Ari Parkkila bdd07b6a37 Cellular: Fix max packet size for BC95 driver 2019-03-21 01:11:28 -07:00
mudassar-ublox 2f37e371b4 C030_N2XX default interface 2019-03-21 11:57:32 +05:00
Teppo Järvelin de7520bd97 Cellular: fix astyle for files that already in master 2019-03-18 13:50:10 +02:00
Martin Kojtal 6b84b14ab6
Merge pull request #10081 from jarvte/move_call_CGEREP
Cellular: call AT+CGEREP after sim is ready
2019-03-18 11:26:41 +01:00
Martin Kojtal 964f5ad321
Merge pull request #10098 from ghseb/credentials-for-connection-profile
Cinterion Cellular: Setup connection profile with username and password
2019-03-18 08:13:32 +01: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
Cruz Monrreal 05f18fc7f6
Merge pull request #10100 from ghseb/support-ehs5-e
Cellular: Support Cinterion EHS5-E cellular module
2019-03-16 23:00:51 -05:00
Sebastian Stockhammer 744e648673 Disable dual stack mode for ehs5-e 2019-03-15 09:32:26 +01:00
Sebastian Stockhammer 6b7b36a3b4 Revert "Disable dual stack mode"
This reverts commit 8611474e6c.
2019-03-15 09:31:49 +01:00
Sebastian Stockhammer 8611474e6c Disable dual stack mode 2019-03-15 09:26:43 +01:00
Sebastian Stockhammer 2c3c14c52b Fix registration modes and disable CGSN with type 2019-03-15 09:00:56 +01:00
Sebastian Stockhammer febcea00f3 Support Cinterion EHS5-E cellular module 2019-03-14 13:50:10 +01:00
Martin Kojtal d5eb98e66a Merge branch 'cellular_BC95_leak_fix' of https://github.com/TeemuKultala/mbed-os into rollup 2019-03-14 11:37:10 +00: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
Sebastian Stockhammer ee17c7c996 Setup connection profile with username and password 2019-03-14 12:03:12 +01:00
Martin Kojtal ab0bc65e0d
Merge pull request #9873 from wajahat-ublox/udnsrn_timeout
Corrected timeout for +UDNSRN command
2019-03-14 09:38:20 +01:00
Martin Kojtal cf76b74aad
Merge pull request #9837 from jarvte/drop_bg96_cgact_support
Cellular: CGACT not supported in coming firmware in BG96
2019-03-14 09:16:39 +01:00
Martin Kojtal 76fe7267e7
Merge pull request #9637 from u-blox/C030_N211_Cellular_Driver
Cellular: UBLOX_C030_N211 Cellular API's
2019-03-14 09:11:06 +01:00
Sarah Marsh ae45096ce6 Fix undefined tr_debug for QUECTEL_BG96 cellular feature 2019-03-08 11:22:11 -06:00
Teemu Kultala 71a1ed9c8e cellular: BC95 memory leak fix 2019-03-07 11:58:20 +02:00
mudassar-ublox 578fb7ae2b updated api and removed Astyle issue 2019-03-04 16:47:15 +05:00
mudassar-ublox d34b0475a9 C030_N211 api's update and removed N2XX_CellularNetwork class 2019-02-28 14:20:55 +05: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
Wajahat Abbas bafb145dfb Corrected timeout for +UDNSRN command 2019-02-27 13:44:36 +05: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
mudassar-ublox da797ef946 C030_N211 cellular api 2019-02-21 14:44:20 +05:00
Tymoteusz Bloch 641189c357 Multihoming change parameter orded in gethostbyname 2019-02-20 14:37:33 +02:00
Tymoteusz Bloch 49141376ee Multihoming initial release
Added Multihoming feature to LWIP (ability to use more than one network interfaces) for increasing networking reliability.
This involves:

    LWIP interface
    LWIP IP routing
    DNS storage
    Sockets (bind to interface name possibility)
    possibility to add non default network interface
    cellular middleware modifications if cellular connection is used
2019-02-19 17:39:46 +02:00
Mirela Chirica c75e4a87ee Cellular: Remove compiling warning 2019-02-19 12:23:55 +02:00
Ari Parkkila 605a42d38f Cellular: Fix Gemalto/Cinterion socket open defer 2019-02-18 06:24:42 -08:00
Ari Parkkila 50a276ead8 Cellular: Fix Quectel BG96 driver RTS/CTS setup 2019-02-17 23:53:11 -08:00
Ari Parkkila 9329430871 Cellular: Fix Quectel M26 drivers 2019-02-17 23:52:08 -08:00
Naveen Kaje 02e42fef3e target: UBLOX: Fix build warning in UBLOX_AT_CellularNetwork.cpp
Fix this build warning seen when building with ARMCC

Compile [ 13.7%]: UBLOX_AT_CellularNetwork.cpp
[Warning] UBLOX_AT_CellularNetwork.cpp@65,0:  #111-D: statement is unreachable
2019-02-12 15:50:23 -06:00
Martin Kojtal e1d891b858
Merge pull request #9587 from naveenkaje/fix_build_warning_QUECTEL
targets: QUECTEL: Fix build warning
2019-02-12 09:52:06 +01:00
Mirela Chirica b473aca700 Cellular: Fix UDPSOCKET_SENDTO_INVALID test for BG96 2019-02-08 15:43:01 +02:00
Mirela Chirica 28b4e28207 Cellular: Fix socket's send and receive boundaries for BG96 2019-02-08 13:02:18 +02: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
Naveen Kaje 08c9ae3927 targets: QUECTEL: Fix build warning
Fix the following warning seen when built with GCC_ARM with mbed-cli v1.8.3

$ mbed compile -c -t GCC_ARM -m K64F
<snip>
[Warning] QUECTEL_M26_CellularStack.cpp@364,9: variable 'sent_acked' set but not used [-Wunused-but-set-variable]
<snip>
2019-02-01 14:14:37 -06:00
Ari Parkkila 95839662c6 Cellular: Fix cellular specific Greentea tests 2019-01-24 23:34:44 -08:00
Ari Parkkila 007caa0235 Cellular: Update modem drivers with get_default and other new APIs 2019-01-22 02:24:45 -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 c4de2f2f0e Cellular: Power API updated to match 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
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 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 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
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
Martin Kojtal 714fc83054
Merge pull request #9369 from u-blox/target_C030-R412M
Add target C030-R412M
2019-01-17 12:39:43 +01:00
Oscar Hellström 13222da2b6 Call network status callback from UBLOX AT
The helper method call_network_cb, actually does a lot more than calling
the callback. The method has a check that the network status supplied
for the callback is different compared to the internal one. It also sets
the class member if it is changed. This is a bit surprising, given the
name of the method. It also means that it doesn't work in this call, as
the member is already set.
2019-01-15 09:37:41 +01:00