Skip to content

In some cases CellularContext does not call NSAPI_STATUS_GLOBAL_UP callback in blocking mode #15310

Closed
@skazemi

Description

@skazemi

Description of defect

CellularContext does not call NSAPI_STATUS_GLOBAL_UP callback on successful connect after retry in blocking mode.
If AT_CellularContext::do_connect() succeeds on first call the callback is called as expected.
If it fails and then succeeds after one or more retry, then the callback is not called.
In the second case AT_CellularContext::connect() returns true, and connection is established, but the callback is not called.

Target(s) affected by this defect ?

I faced this issue with STM32F730V8 using QUECTEL-BG95-M1 LTE-M modem but likely all targets using cellular context are affected

Toolchain(s) (name and version) displaying this defect ?

GCC_ARM arm-none-eabi 6-2017-q2

What version of Mbed-os are you using (tag or sha) ?

mbed-os-5.14.1 and mbed-os-99.99.99 (91b793c4fd1ad7f02b8db5a2e0d77daf63e5c836)

What version(s) of tools are you using. List all that apply (E.g. mbed-cli)

Mbed CLI 1

How is this defect reproduced ?

The issue is reproducible by (with some network provider):

  1. Use NetworkInterface instance for cellular connection
  2. Set blocking mode to true
  3. Register event listener for NetworkInterface callbacks
  4. Call NetworkInterface->connect()
  5. connect() returns true without GLOBAL_UP callback being called (only if it fails at least once in cellular context before success)
  6. network is connected and has traffic but without NSAPI_STATUS_GLOBAL_UP being called

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions