Martin Kojtal
c9bdcd6b16
cellular: fix file permission
2019-06-24 22:23:10 +01: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
Anna Bridge
15b5b5da23
Merge pull request #10694 from jarvte/set_authentication_type
...
Cellular: add method to set authentication type to CellularContext
2019-06-21 12:19:04 +01:00
mudassar-ublox
26f1d0b659
cellular socket flags updated
2019-06-21 10:05:35 +05: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
Laurent Meunier
3286472de9
Check Properties have been set
2019-06-20 09:23:48 +02:00
Anna Bridge
363ad8ab14
Merge pull request #10825 from kivaisan/fix_plmn_debug_trace
...
Cellular: Fix PLMN debug trace for IAR
2019-06-19 15:04:24 +01:00
Anna Bridge
37640301e0
Merge pull request #10812 from jarvte/fix_multiple_urc_athander
...
Cellular: fix athandler to use correct timeout in case of multiple urc's
2019-06-19 15:03:36 +01:00
Anna Bridge
b8f413a4a2
Merge pull request #10811 from u-blox/ubx_socket_close_callback
...
socket close callback
2019-06-19 15:02:17 +01:00
Anna Bridge
2fd7f80f35
Merge pull request #10484 from trowbridgec/telit-me910-driver
...
Cellular: Telit ME910 driver
2019-06-19 12:07:25 +01:00
Anna Bridge
6000724de6
Merge pull request #10703 from AnttiKauppila/optimisation
...
Cellular: Removed boilerplate code
2019-06-19 12:06:10 +01:00
Sebastian Stockhammer
7dc4c99b23
Allow IPV4V6 stack type
2019-06-17 10:06:27 +02:00
Sebastian Stockhammer
402c471e70
Require exact context type match
2019-06-17 10:03:06 +02:00
Chris Trowbridge
28f7a4e6a6
Moved DEFAULT_DELAY_BETWEEN_AT_COMMANDS constant to cpp file
2019-06-14 08:02:33 -04:00
Kimmo Vaisanen
d7858f6184
Cellular: Refactor APN db implementation to reduce memory usage
...
Reduce memory usage by moving actual APN database into single object file
instead of having it defined in header as a static.
2019-06-14 13:31:54 +03:00
Kimmo Vaisanen
b26314a799
Cellular: Fix PLMN debug trace for IAR
...
IAR does not allow printing from null pointer as parameter for %s. PLMN string
can be null depending on user configuration.
2019-06-13 15:35:37 +03:00
Antti Kauppila
1ed338ef28
Valgrind & unittest fixes
2019-06-13 15:15:53 +03:00
mudassar-ublox
3ad1ee1fe4
Style issue fixed
2019-06-13 16:58:50 +05: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
Chris Trowbridge
ea5d8cf26d
Remove unnecessary init AT commands
2019-06-12 09:36:22 -04:00
Teppo Järvelin
6b11ca1371
Cellular: fix athandler to use correct timeout in case of multiple urc's
...
Start time was not updated when multiple urc's were found and so timeout
was set to zero. Now that start time is updated, timeout is correct.
2019-06-12 11:21:00 +03:00
mudassar-ublox
488d47b723
socket close callback
2019-06-12 12:15:10 +05:00
Mirela Chirica
0339ffd1b9
Cellular: Added handling for BG96 network PDP context deactivation
2019-06-11 16:05:27 +03:00
Antti Kauppila
e19249f276
Tracing added for Handle_start + doxygen updates
2019-06-10 17:18:18 +03:00
Chris Trowbridge
9a1309f5f8
Modify ME910 driver to follow power on/off best practices and add custom get_context() function
2019-06-06 14:29:15 -04:00
Chris Trowbridge
0a717e435b
Add default soft/hard power on/off sequences for ME910
2019-06-06 10:26:51 -04:00
Chris Trowbridge
0d9facd921
Remove ME910 trace group #define
2019-06-06 10:26:50 -04:00
Chris Trowbridge
21a8ed8108
Remove ME910 flow control debug message
2019-06-06 10:26:50 -04:00
Chris Trowbridge
f0afd1f896
Remove unnecessary #includes
2019-06-06 10:26:50 -04:00
Chris Trowbridge
1a20ea11af
Remove default power on/off functions
2019-06-06 10:26:50 -04:00
Chris Trowbridge
841607d029
Add Telit ME910 driver
2019-06-06 10:26:50 -04:00
Antti Kauppila
43b67459ae
Assert handling added
2019-06-06 13:12:29 +03:00
Antti Kauppila
9d8969daa7
Small fixes and doxygen update
2019-06-04 10:41:16 +03:00
Martin Kojtal
752101d041
Merge pull request #10696 from AriParkkila/cell-ublox-at-connect
...
Cellular: Fix socket connect on UBLOX_AT driver
2019-06-03 08:52:43 +01:00
Martin Kojtal
9a3c175e96
Merge pull request #10588 from AriParkkila/cell-bg96-power
...
Cell bg96 power
2019-06-03 08:38:58 +01:00
Antti Kauppila
7f199ceeef
Added missing _cid handling
2019-06-02 18:55:50 +03:00
Martin Kojtal
523ad23a30
Merge pull request #10656 from jarvte/fix_cellularctx_destr
...
Cellular: AT_CellularContext disconnect in non-blocking mode
2019-05-31 12:35:59 +01:00
Mirela Chirica
b57d978bbd
Cellular: Added IPV6 and IPV4V6 as supported properties for BG96
2019-05-30 14:07:33 +03:00
Mirela Chirica
ff2061aba4
Cellular: Fix requested socket id in socket_connect routines of BG96 and M26
2019-05-30 14:07:33 +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
Ari Parkkila
73164710af
Cellular: Fix socket connect on UBLOX_AT driver
2019-05-29 03:19:07 -07:00
Teppo Järvelin
8922eeb014
Cellular: add method to set authentication type to CellularContext
...
Authentication type must be able to set. It was hard coded to CHAP.
Added unit tests for CellularContext to be able to add test for new function.
2019-05-29 09:46:15 +03:00
Martin Kojtal
9cc1caa031
Merge pull request #10596 from kjbracey-arm/sem_acquire
...
Introduce Semaphore::acquire methods
2019-05-29 06:22:30 +01:00
Kevin Bracey
2fbbd9d2ca
Introduce Semaphore::acquire methods
...
Deprecate wait() in favour of acquire(), try_acquire(),
try_acquire_for() and try_acquire_until().
Brings Semaphore more into line with CMSIS-RTOS 2 (which uses "acquire"),
itself (as it has "release"), and other classes having "try", "try for"
and "try until".
Also steps away from vague "wait" term - the primary operation here is
to acquire the semaphore, and this will of course sleep.
2019-05-28 17:02:06 +03:00
Teppo Järvelin
779fb6defd
Cellular: AT_CellularContext disconnect in non-blocking mode
...
Disconnect was supporting only blocking mode.
2019-05-27 12:23:29 +03:00
Martin Kojtal
a434583b6e
Merge pull request #10442 from trowbridgec/patch-1
...
Cellular: Make AT_CellularContext::get_context() virtual
2019-05-24 12:38:35 +01:00
Ari Parkkila
e49d7bbdcd
Cellular: Add BG96 power control
2019-05-24 00:30:04 -07:00
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
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
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
Anna Bridge
6344b9db2c
Merge pull request #10579 from kevinong0108/fix_cellular_quectel_bg96
...
Cellular: fix Quectel BG96 missing unlock at socket_connect
2019-05-16 10:58:32 +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
Martin Kojtal
26aa16ff39
Merge pull request #10557 from jarvte/fix_cellularcontext_init
...
Cellular: Initialize CellularContext member variables in correct class
2019-05-15 08:48:54 +01: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
e7b8ccf0ae
Merge pull request #10511 from AriParkkila/cell-statemachine-timeout
...
Cellular: Fix setting of statemachine timeout
2019-05-13 06:41:29 +01:00
Teppo Järvelin
e4ee870b2e
Cellular: Initialize CellularContext member variables in correct class
...
CellularContext member variables were initialized in inheriting class.
Now in base class where they should be initialized so that every inheriting
class don't have to init them.
2019-05-10 11:43:48 +03:00
Ari Parkkila
830b4234e9
Cellular: Fix setting of statemachine timeout
2019-05-09 04:42:30 -07: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
094f648123
Merge pull request #10488 from kivaisan/add_cellularproperty_description
...
Cellular: Add description for CellularProperty
2019-04-30 09:40:08 +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
Kimmo Vaisanen
38aa56efa8
Cellular: Add description for CellularProperty
2019-04-26 12:37:52 +03: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
Hasnain Virk
4eaffb4b03
Minor doc update
...
Socket ID is usually spitted out by the modem, however there are cases
when the modem is actully taken in as an input argument, e.g., in the
case of QUECTEL M26 modem. This minor knit clarifies that the
CellularSocket::id can be an input argument.
2019-04-23 12:36:29 +03:00
Chris Trowbridge
a457b80e81
More access modifier changes
2019-04-18 15:14:08 -04:00
Chris Trowbridge
b59228988c
Make AT_CellularContext::get_context() virtual
2019-04-18 15:02:41 -04:00
Martin Kojtal
46603f831e
Merge pull request #10411 from mirelachirica/bg96_tcp_endpoint_close
...
Cellular: Added BG96 handling for socket closing URC
2019-04-18 18:00:30 +01: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
Martin Kojtal
b2b2fcea7b
Merge pull request #10375 from AriParkkila/cell-context-cleanup
...
Cellular: Fix to delete PDP context on disconnect
2019-04-17 09:23:52 +01:00
Martin Kojtal
4401d41428
Merge pull request #10053 from AriParkkila/cellular-state-timeout
...
Cellular: Make CellularStateMachine timeouts configurable
2019-04-15 08:53:11 +01:00
Ari Parkkila
79c54372f2
Cellular: Fix to delete PDP context on disconnect
2019-04-11 03:58:56 -07: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
Ari Parkkila
e0f8b2116a
Cellular: Fix CellularStateMachine timeout configurations
2019-04-09 22:02:38 -07:00
Cruz Monrreal
6dbc00dd8a
Merge pull request #10292 from hasnainvirk/ec2x_driver
...
Cellular: Basic driver for Quectel EC25/EC21
2019-04-09 11:06:51 -05:00
Cruz Monrreal
cec5a85761
Merge pull request #10354 from hasnainvirk/compile_error_at_handler
...
Cellular: Using new rather than malloc in debug_print
2019-04-09 11:06:15 -05:00
Cruz Monrreal
d1672d0200
Merge pull request #10341 from mirelachirica/check_urc_resp_stop_1
...
Cellular: Check for URC during AT response stop
2019-04-09 11:05:56 -05:00
Teppo Järvelin
8234f00506
Cellular: fix state machine to compile after master rebase
...
Fix automatic rebase error with cellulardevice.cpp
2019-04-09 14:00:59 +03:00
Teppo Järvelin
2470a3611c
Cellular: new state machine state and better info from stm
...
Added new state (signal quality) and more information about progress
so application/driver can build recovery logic.
2019-04-09 13:44:45 +03:00
Hasnain Virk
9229aba87d
Using new rather than malloc in debug_print
...
Using malloc will require us to add stdlib.h somewhere in the path for
the application. Maybe the CI apps are adding stdlib.h and that's why
the code would have worked. In a custom app, it can happen that the
header is not included. Using new avoids the need to add stdlib.h
anywhere and it is more in line with C++.
2019-04-09 12:25:59 +03:00
Mirela Chirica
f100cd59c8
Cellular: Check for URC during AT response stop
2019-04-09 11:15:28 +03:00