Skip to content

LoRa Class C device can't retry-join in OTAA mode #15213

Open
@cyliangtw

Description

@cyliangtw

Description of defect

Normally, LoRa Class A device could retry join several times in OTAA mode.
As while I set LoRa device as Class C before OTAA handshake lora.connect(), if RX1 can't receive 1st join-accept packet, it will stay in the state "RX2 slot open" and not proceed any retry-join procedure.

Target(s) affected by this defect ?

Not depend on the specific target.
I could reproduce this symptom on both of NUMAKER_IOT_M487 and NUMAKER_IOT_M252.

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

GCC_ARM

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

OS v6.15

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

mbed-tools 7.2.0

How is this defect reproduced ?

Modify lora example https://github.com/ARMmbed/mbed-os-example-lorawan, to add set_device_class(CLASS_C) in main() of main.cpp as:

    printf("\r\n Adaptive data  rate (ADR) - Enabled \r\n");
    lorawan.set_device_class(CLASS_C);  //## Mbed support class A and class C; OTAA should be in class A.
    retcode = lorawan.connect();

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