Commit Graph

194 Commits (tools-release-6.1.0)

Author SHA1 Message Date
Hugues Kamba a3f4cf212d Use std::chrono based functions
The chrono based functions improve readability. Using them also removes
warnings related to usage of deprecated warnings.
2020-06-17 14:52:50 +01:00
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
Martin Kojtal b622a25688
Merge pull request #12810 from MarceloSalazar/platform_cleanup
Remove unsupported targets

Note, commit 21e364e is just a styling fix, no target removal.
2020-04-22 10:58:50 +02:00
MarceloSalazar 4b1ad8ad4c Remove MTB_STM_L475 target 2020-04-20 16:55:33 +01:00
Kimmo Vaisanen fe98dbef94 Cellular: Fix BG96 offloaded DNS query for new API
Fixed following issues in BG96 offloaded DNS:
- Fixed mbed-os 6 API change for asynchronous DNS callback. Return value is no longer
  an error value but in success case the amount of DNS records
- Asynchronous request returns request ID instead of NSAPI_ERROR_OK. BG96 supports only
  one asynchronouse DNS query at the time, so ID 1 is used.
- BG96 does not support multi-ip DNS responses, so disabled multi-ip tests
2020-04-20 12:35:09 +03:00
Kimmo Vaisanen 4f7d7750e4 Cellular: Make Quectel EC2x modem start up timeout configurable
Default timeout also increase from 5sec to 15sec.
2020-03-19 12:31:46 +02:00
Martin Kojtal dc21432cc1
Merge pull request #12633 from kivaisan/bg96_use_offload_tlssocket_flags
Cellular: Add offload TLSSocket implementation inside feature flag
2020-03-17 12:17:12 +01:00
Kimmo Vaisanen 51175eed1f Cellular: Add offload TLSSocket implementation inside feature flag
Reduce binary size (~500 bytes with GCC_ARM and developer profile) when offloaded TLSSocket is not in use.
2020-03-17 08:42:59 +02:00
Chih-Chiang Chang 73b96c1cbc Support EC2x PWRKEY set as no connect 2020-03-13 13:46:24 +08:00
Martin Kojtal d7f3341974
Merge pull request #12339 from jeromecoutant/PR_MODEMVERSION
Cellular : add modem version in mbed trace
2020-02-13 13:04:30 +00:00
jeromecoutant 5f1ea7d57b Cellular : add modem version in mbed trace 2020-02-06 14:40:23 +01: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
Anna Bridge 80fe861f1d
Merge pull request #12035 from kjbracey-arm/callback_prep
Preparation for Callback changes
2020-01-21 11:50:43 +00:00
Ari Parkkila 2871721e08 Cellular: Refactor socket_stack_init() from generic to modem specific 2020-01-20 00:56:09 -08: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
Antti Kauppila eb78ba6624 Fixed PDP type handling 2020-01-10 13:48:25 +02:00
Antti Kauppila 2fb167be26 Fixed IOTCELL-2384
Earlier we called AT+QICSGP only if the username and password was set.
It seems that we must call it also to set up APN while in AT mode.
This commit fixes the issue + updated IPv4/v6 handling to be correct in the same call
2020-01-09 17:19:24 +02:00
Kevin Bracey d6a48b5124 Turn NULLs into nullptr
Avoids overload problems with Callback(nullptr) versus Callback(fnptr).
2020-01-09 14:52:54 +02:00
Ari Parkkila 7899fead59 Cellular: Refactor CellularBase from AT_ControlPlane_netif 2020-01-07 04:03:33 -08:00
Ari Parkkila 4b3ef73333 Cellular: Fix astyle 2020-01-06 22:35:53 -08:00
Ari Parkkila 033402d597 Cellular: Change CellularNonIPSocket to poll before timeout 2020-01-06 22:35:18 -08:00
Ari Parkkila feee2a234e Cellular: Fix Non-IP of Quectel/BG96 modem driver
Add missing license headers.
Remove semaphores to allow async operation.
Change hex format to allow binary payload.
Limit payload size to 100 bytes.
Fix missing plus char at +QCFGEXT.
2020-01-06 22:33:49 -08:00
Martin Kojtal 6baa5e479d
Merge pull request #12020 from linlingao/fix_rat
Fix issues in setting radio access technology
2020-01-02 10:08:11 +00:00
Antti Kauppila ca7848d854 Refactored away onboard_modem_api because it is not needed at all
All targets must implement soft_- and hard_power_on/off() functions which are practically same what onboard_modem_api offered.
These were seen as a duplicate features and therefore we removed this.
All targets involved have been updated to reflect the changes
2019-12-27 16:04:10 +01:00
Ari Parkkila d5abab8843 Cellular: Add check for network congestion in BC95 driver 2019-12-20 04:25:26 -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
Adrien CABARBAYE 877523dab4
Update QUECTEL_BG96_CellularStack.cpp
Similar issue for a different target
`./mbed-os/features/cellular/framework/targets/QUECTEL/BG96/QUECTEL_BG96_CellularStack.cpp", line 431: Error:  #20: identifier "sprintf" is undefined`
> armcc -c --gnu -Ospace --split_sections --apcs=interwork --brief_diagnostics --restrict --multibyte_chars -O3 -DMBED_TRAP_ERRORS_ENABLED=1 --cpu=Cortex-M4.fp.sp --md --no_depend_system_headers --c99 -D__ASSERT_MSG --cpp11 --no_rtti --no_vla -DMBED_ROM_START=0x0 -DMBED_ROM_SIZE=0x80000 -DMBED_RAM_START=0x20000000 -DMBED_RAM_SIZE=0x10000 -DTARGET_SOFTDEVICE_NONE -DTARGET_NORDIC -DCMSIS_VECTAB_VIRTUAL_HEADER_FILE="cmsis_nvic.h" -DTARGET_NRF52 -DCMSIS_VECTAB_VIRTUAL -DTARGET_MCU_NRF52832 -DDEVICE_SPI_ASYNCH=1 -DMBED_TICKLESS -DDEVICE_SLEEP=1 -DFEATURE_BLE=1 -DNRF52_PAN_12 -D__CMSIS_RTOS -DTARGET_SDK_15_0 -DNRF52_PAN_64 -DDEVICE_SPI=1 -DDEVICE_I2C=1 -DNRF52_PAN_15 -DDEVICE_SERIAL=1 -DTARGET_LIKE_MBED -DDEVICE_PORTOUT=1 -DDEVICE_SERIAL_ASYNCH=1 -DTARGET_M4 -DNRF52_PAN_31 -D__FPU_PRESENT=1 -D__CORTEX_M4 -DTARGET_RTOS_M4_M7 -DDEVICE_PORTIN=1 -DTARGET_CORDIO_LL -DTARGET_NRF5x -DCONFIG_GPIO_AS_PINRESET -DDEVICE_SERIAL_FC=1 -DDEVICE_USTICKER=1 -DTARGET_RELEASE -D__MBED__=1 -DTARGET_CORDIO -DMBED_MPU_CUSTOM -DNRF52_PAN_54 -DSWI_DISABLE0 -DDEVICE_INTERRUPTIN=1 -DNRF52_PAN_63 -DNRF52_PAN_51 -DDEVICE_ANALOGIN=1 -DCOMPONENT_PSA_SRV_EMUL=1 -DTARGET_NORDIC_CORDIO -DNRF52_PAN_62 -DNRF52_PAN_55 -DTARGET_CORTEX -DNRF52_PAN_53 -DDEVICE_PWMOUT=1 -DDEVICE_PORTINOUT=1 -DTOOLCHAIN_ARMC5 -DTARGET_CORTEX_M -DDEVICE_ITM=1 -DMBED_BUILD_TIMESTAMP=1574735595.5081437 -DNRF52_PAN_20 -DDEVICE_I2C_ASYNCH=1 -DDEVICE_LPTICKER=1 -DNRF52_PAN_30 -DTARGET_LIKE_CORTEX_M4 -DTARGET_NAME=MTB_UBLOX_NINA_B1 -DCOMPONENT_NSPE=1 -DDEVICE_TRNG=1 -DNRF52_PAN_58 -DTOOLCHAIN_ARM -DARM_MATH_CM4 -D__MBED_CMSIS_RTOS_CM -DNRF52 -DBOARD_PCA10040 -DDEVICE_FLASH=1 -DCOMPONENT_PSA_SRV_IMPL=1 -DTARGET_MTB_UBLOX_NINA_B1 -DDEVICE_SYSTICK_CLK_OFF_DURING_SLEEP=1 -DTARGET_NRF52832 -DTOOLCHAIN_ARM_STD -DNRF52_PAN_36 --preinclude=./BUILD/MTB_UBLOX_NINA_B1/ARMC5/mbed_config.h --via ./BUILD/MTB_UBLOX_NINA_B1/ARMC5/.includes_3003a516b3c5c98831c114756251051b.txt --depend BUILD/MTB_UBLOX_NINA_B1/ARMC5/mbed-os/features/cellular/framework/targets/QUECTEL/BG96/QUECTEL_BG96_CellularStack.d -o BUILD/MTB_UBLOX_NINA_B1/ARMC5/mbed-os/features/cellular/framework/targets/QUECTEL/BG96/QUECTEL_BG96_CellularStack.o ./mbed-os/features/cellular/framework/targets/QUECTEL/BG96/QUECTEL_BG96_CellularStack.cpp
2019-11-26 15:27:15 +00:00
Ari Parkkila 2301af398e Cellular: Enable ePCO IE for BG96 driver
As per 3GPP TS 24.301:

If the UE supports NB-S1 mode, Non-IP PDN type, or N1 mode,
then the UE shall support the extended protocol configuration options IE.
...
If the UE supports the extended protocol configuration options IE,
then the UE shall set the ePCO bit to extended protocol configuration options supported
in the UE network capability IE of the ATTACH REQUEST message.
2019-11-19 21:59:19 -08:00
Mirela Chirica c484fc88f9 Cellular: Added set routine for baud rate 2019-11-01 17:21:31 +02:00
Martin Kojtal 3c9853af61
Merge pull request #11754 from mirelachirica/athandler_write_hex_string
Cellular: Added write_hex_string to AT handler
2019-10-29 10:00:46 +01:00
Mirela Chirica beeccbe52c Cellular: Added write_hex_string to AT handler 2019-10-28 10:34:05 +02:00
Ilia Penev ad1387b2fd Fix Quectel M26 context hang 2019-10-21 00:48:22 +03:00
Kimmo Vaisanen b319be14e8 Offloaded TLSSocket for BG96
Some external modems have an internal TLSSocket implementation which can be used
instead of mbedtls based TLSSocket. Using offloaded TLSSocket can result in
significantly reduced ROM usage.

Offloaded TLSSocket can be enabled by enabling "nsapi.offload-tlssocket" and the used
network stack (e.g. cellular modem's CellularStack class) must support the setsockopt's
defined in nsapi_types.h.

Compared to original mbedtls based TLSSocket, offloaded TLSSocket brings in one significant
API limitation. Offloaded TLSSocket requires setting of certificates and keys after open()
and before connect() calls, where mbedtls based TLSSocket allows setting these before open()
call.
2019-09-25 09:25:33 +03:00
Martin Kojtal e1cfb7b908
Merge pull request #11534 from kivaisan/handle_qisend_send_fail
Cellular: Handle SEND FAIL and ERROR response
2019-09-24 13:30:32 +02:00
Martin Kojtal daafb950d9
Merge pull request #11538 from mirelachirica/ipv6_to_wise_1570
Cellular: Enable IPV6 for WISE_1570
2019-09-20 15:29:07 +02:00
Kimmo Vaisanen 1768b653ec Cellular: Handle SEND FAIL and ERROR response
QISEND command can respond either SEND OK, SEND FAIL or ERROR.
If response is not SEND OK, sent bytes should not be checked but
error should be reported.
2019-09-20 10:06:32 +03:00
Mirela Chirica 090ce0358f Cellular: Enable IPV6 for WISE_1570 2019-09-19 16:19:31 +03:00
Martin Kojtal 185e380233
Merge pull request #11490 from AriParkkila/cell-bg96-ifc
Cellular: Add flow control (IFC) in BG96 AT driver
2019-09-19 10:25:47 +02:00
Kimmo Vaisanen ba4308344b Cellular: Fix stop tag for Quectel M26 send command
Possible responses for send command are SEND OK<cr><ln>, SEND FAIL<cr><ln> or ERROR<cr><ln>
so normal OK<cr><ln> response check does not work properly.
2019-09-17 15:52:14 +03: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
Mirela Chirica b44ba531a1 Cellular: Check IP version of send to address 2019-09-12 12:56:28 +03:00
Martin Kojtal 978296a26d
Merge pull request #11372 from AriParkkila/bg96-pwr
Cellular: Fix BG96 power on and connect
2019-09-05 13:10:26 +02:00
Martin Kojtal 567479792c
Merge pull request #11392 from hugueskamba/hk-remove-minor-warnings
Remove minor build warnings
2019-09-05 09:59:39 +02:00