Commit Graph

41 Commits (1623b1430d00022c2e00a7d6e6759627e90cae2c)

Author SHA1 Message Date
Ari Parkkila d5abab8843 Cellular: Add check for network congestion in BC95 driver 2019-12-20 04:25:26 -08:00
Antti Kauppila 90d3dc1f13 CellularStack fixed 2019-12-09 15:25:22 +02: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
Martin Kojtal ffdd54315f
Merge pull request #11941 from michalpasztamobica/remove_internal_string_apis
Remove string-based API usage within mbed-os
2019-11-28 14:26:03 +01:00
Michal Paszta ea04c4f85e Remove internal usage of deprecated APIs in IPCore
Updated:
* netsocket classes,
* unittests, stubs and mocks,
* greentea tests
2019-11-27 20:02:20 +02:00
Ari Parkkila adba109de6 Cellular: Replace CellularSocket.rx_avail with pending_bytes
CellularSocket::rx_avail can be refactored away as
it is a duplicate to CellularSocket::pending_bytes.
2019-11-25 21:49:17 -08:00
Michal Paszta fd5b4b9119 Deprecate string-based APIs in IPCore
MBED_DEPRECATE macros is added to string-based APIs.
New, non-string-based APIs are added in their place.
Wiced binaries rebuilt
Any existing stubs or mocks are adjusted to compile and run with the newly added non-string based functions.
2019-11-22 11:31:12 +02:00
Anna Bridge eeb033f814
Merge pull request #11357 from kivaisan/offloaded_tlssocket_bg96
Offloaded TLSSocket and BG96 support for it
2019-10-03 11:54:32 +01:00
Ari Parkkila e449e6dcdc Cellular: Fix setting of PDP context ID (cid) 2019-09-27 02:09:36 -07:00
Kimmo Vaisanen 6ba0efc969 Cellular: Use more specific error codes for socket open and connect
- When calling socket APIs when socket is not open, NSAPI_ERROR_NO_SOCKET will be
  returned instead of generic NSAPI_ERROR_DEVICE_ERROR

- If socket_send() is called when connection is not open, NSAPI_ERROR_NO_CONNECTION
  will be returned instead of generic NSAPI_ERROR_DEVICE_ERROR
2019-09-25 09:25:33 +03:00
Mirela Chirica b44ba531a1 Cellular: Check IP version of send to address 2019-09-12 12:56:28 +03:00
Mirela Chirica ea1b2b8045 Cellular: Stack type based on assigned IP addresses versions 2019-09-12 12:55:33 +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
Antti Kauppila 7f199ceeef Added missing _cid handling 2019-06-02 18:55:50 +03:00
Antti Kauppila 77e8374058 Cellular: Removed boiler plate code 2019-05-29 16:17:08 +03:00
Hasnain Virk bded22ee98 Prevent assigning socket id until opened at modem
Local modem ip stacks vary in their implementations and the way of
working. Some of the modems may not open a socket until an IP context is
assigned. That's why we came up with a container that stores addresses of
any CellularSocket instances created on-demand by the application. When
the application requests opening a socket we store allocate and store the
premitive in the container however actual socket creation at the modem
may happen at a later stage, e.g., a call to send_to() may result in
actual opening of a socket.

That's why we must not assign socket ids in the CellularSocket object
during construction. It must happen when actual socket is opened and is
alive.

Another implication of the previous model is that we may have multiple
sockets created in our container but the actual socket ids are not
assigned yet, so we cannot directly map the socket id to the container
indices which has been happening previously.

To solve this issue we have promoted the AT_CellularStac::find_socket_index(...) method
to be a protected method rather than being private so that the children
can use the method to determine if the given index in the container
corrsponds to the assigned socket id or not.

We have given up on the socket->created flag and the whole decision
making to actually open a socket on the modem happens on the basis of a
valid socket being assigned or not.
2019-05-22 23:43:41 -07: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
mudassar-ublox 578fb7ae2b updated api and removed Astyle issue 2019-03-04 16:47:15 +05:00
Ari Parkkila 3bcf51385e Cellular: Handling of TCP endpoint closed 2019-02-17 23:51:08 -08:00
Mirela Chirica 6af725822b Cellular: Fix socket bind tests for BG96 2019-02-08 13:02:18 +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
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
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
Ari Parkkila a14ac31f68 Cellular: Added support for the Gemalto/BGS2 cellular module 2018-08-28 02:14:28 -07:00
Ari Parkkila 4b223b6ff2 Cellular: Make AT_CellularStack socket array multi-thread safe 2018-08-24 00:21:26 -07:00
Mirela Chirica c217a521f4 Cellular: Handle AT response stop in case IP address is missing from CGPADDR response 2018-08-09 11:41:19 +03:00
Martin Kojtal cde18aa0bc cellular: astyle fix 2018-07-27 13:33:20 +01:00
Ari Parkkila 4d431cd1ae Cellular: Removed max_packet_size 2018-07-11 13:11:47 +03:00
Mirela Chirica 5c2262219d Cellular: BC95 socket creation to fail on missing socket id in the response 2018-05-29 17:05:16 +03:00
Ari Parkkila b37532addf Cellular: Fix to prefer IPv6 single stack with fallback to IPv4 2018-04-23 09:57:23 +03:00
Mirela Chirica 9531bbeaf5 BC95 fixes 2018-04-11 09:38:13 +03:00
Teppo Järvelin 12b0bc4a36 Fixed coverity warnings for AT_CellularStack. 2018-04-11 09:31:44 +03:00
Ari Parkkila d2e8691754 Cellular stack listen and accept to return UNSUPPORTED 2018-03-02 14:38:06 +02:00
Mirela Chirica d15801d893 PR review fix:
- bind behaviour to not change existing port or address if the requested ones are 0
- removed temporary array setting to zero
2018-03-02 14:38:06 +02:00
Teppo Järvelin 9e85767c80 PR review fixed: removed dead code, removed magic numbers. 2018-03-02 14:38:05 +02:00
Ari Parkkila 065326135e Change cellular socket port 0 to dynamic range 2018-03-02 14:38:05 +02:00
Antti Kauppila bfbd3e42af more unittests added 2018-03-02 14:38:05 +02:00
Ari Parkkila 5b70492c64 Updated cellular 2018-03-02 14:38:02 +02:00
Ari Parkkila 863ec3c3cc Initial cellular feature 2018-03-02 14:38:02 +02:00