This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to enable Child supervision in thread FTD

Hello,

I am using nrf5 SDK for thread and zigbee. 

I want to enable child supervision check on FTD and MTD devices.

For this I have already set OPENTHREAD_ENABLE_CHILD_SUPERVISION macro.

But on building the MTD example I am getting the following error. 

Linking target: _build/nrf52840_xxaa.out
_build/nrf52840_xxaa/main.c.o: In function `_zipnet_process_init':
/../pca10056/blank/armgcc/../../../main.c:862: undefined reference to `otChildSupervisionSetCheckTimeout'
collect2: error: ld returned 1 exit status
../../../../../nrf_sdk_thread/components/toolchain/gcc/Makefile.common:292: recipe for target '_build/nrf52840_xxaa.out' failed
make: *** [_build/nrf52840_xxaa.out] Error 1

Parents
  • Hi,

    Did you set the OPENTHREAD_ENABLE_CHILD_SUPERVISION macro on the OT config and builded the OT stack again? Or did you change the macro only inside the project files? You need to build the OpenThread stack again in order to enable child supervision.

    See 'How to enable child supervision' page:

    To enable Child Supervision, define OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE as 1 in the /src/core/config/child_supervision.h file, prior to building OpenThread.

    Best regards,

    Marjeris

  • Hi,

    Thanks for the update.

    I have done this, and not getting this error now.

    But since I have updated OpenThread Stack, my coap client is unable to send NON-CONFORMABLE coap message.

    If I change the coap message type to CONFORMABLE, it sends the message.

    Rest everything is same.

    For enabling the child supervision feature, I have only updated libopenthread-ftd.a and libopenthread-mtd.a in the nrf_sdk.

    While building the openthread stack I used the following make command..

    make -f examples/Makefile-nrf52840 COMMISSIONER=1 JOINER=1 COAP=1 DNS_CLIENT=1 MTD_NETDIAG=1 BORDER_ROUTER=1 MAC_FILTER=1 UDP_PROXY=1 BORDER_AGENT=1 DHCP6_SERVER=1 DHCP6_CLIENT=1 CERT_LOG=1 COAPS=1

  • Hi,

    Is there anything else you have changed in the project? The coap message type is not a compile-time config, so it sounds a bit weird that this is changed after recompiling the stack.

    Did you use the right commit when building the stack? You should use the specific OpenThread commit used in the SDK you are using to make sure your are not changing something else in the project. See the release notes inside SDK_folder/documentation/release_notes.txt for the commit ID.

    BR,

    Marjeris

  • I haven't changed anything else in the project. 

    My current stack is based on nrf SDK for Thread and Zigbee V2.0.0.

    and as per its documentation I am using the following openthread commit 

    github.com/.../704511c (with revert of 136a444)

    The issue is only in case of NON CONFORMABLE coap message type. If changed to CONFORMABLE everything is working.
  • Hi,

    I have again checked the whole process, but still facing the same issue. NON CONFIRMABLE messages don't reach the coap server while CONFIRMABLE messages are do reach.

    The only change I did is replaced "libopenthread-cli-ftd.a", "libopenthread-ftd.a", "libopenthread-mtd.a" with the openthread libraries build with CHILD_SUPERVISION enable option.  

    Is there something else I can try to test the NON-CONFORMABLE packet transfer issue.

Reply
  • Hi,

    I have again checked the whole process, but still facing the same issue. NON CONFIRMABLE messages don't reach the coap server while CONFIRMABLE messages are do reach.

    The only change I did is replaced "libopenthread-cli-ftd.a", "libopenthread-ftd.a", "libopenthread-mtd.a" with the openthread libraries build with CHILD_SUPERVISION enable option.  

    Is there something else I can try to test the NON-CONFORMABLE packet transfer issue.

Children
Related