This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

OpenThread just FTD

Hi,

I am trying to implement DALI-104 (IEC-62386:104:2019) on top of openThread protocol.

I am using  Thread: CoAP Client and  Thread: CoAP Server  and want to configure these codes according to DALI-104 standards.

According to standards, all devices connected to network must be full thread device.(FTD)

I am not sure; is it impossible to send multicast message to SED or MED device? 

In the CoAP example, I think I use FTD, because when I connect three device to each other, there is one leader and two router. However, there is a function such that

static void on_mtd_mode_toggle(uint32_t med);

Also there is a function pointer ;

* @param[in] val 1 if the MTD is in MED mode
* 0 if the MTD is in SED mode
*/
typedef void (*mtd_mode_toggle_cb_t)(uint32_t val);

But I can't see a function or variable whose name start with ftd. 

Finally, my purpose is to make all devices FTD. What kind of changes should I do?

Parents
  • Hi orkunsengur,

    It is possible to send multicast messages to MTD devices, but they do not forwards all messages to their parents, so MTD devices can only be used as End Device. MTD normally used as a CoAP client in application.

    As long as your build the CoAP client project with "west build -b nrf52840dk_nrf52840", it will only work as an FTD device by default. The codes you mentioned are used to enable switch MED/SED modes when you build the program as MTD with "west build -b nrf52840dk_nrf52840 -- -DOVERLAY_CONFIG='overlay-mtd.conf'", so they are not be used when you build an FTD firmware.

    Best regards,

    Charlie

  • Thanks Charlie.

    I want to ask one more question. There three types of FTD; router, REED, FED. My all devices should be Router or REED. How can I do that?

  • Hi orkunsengur,

    This is an interesting question. I did some research online and found a discussion in openthread-users group related to your question: Force node to be router?

    My understanding is that the Thread network is self-organized, and the FTD device has full OT tack in firmware, it is will be Router or REED in default.

    Your concern might be how the FTD plays as FED. I am afraid this is no FED anymore. The discussion mentions an old API otThreadSetRouterRoleEnabled() that can disable the Router role, but this function does not appear on the recent API releases.

    Best regards,

    Charlie

Reply
  • Hi orkunsengur,

    This is an interesting question. I did some research online and found a discussion in openthread-users group related to your question: Force node to be router?

    My understanding is that the Thread network is self-organized, and the FTD device has full OT tack in firmware, it is will be Router or REED in default.

    Your concern might be how the FTD plays as FED. I am afraid this is no FED anymore. The discussion mentions an old API otThreadSetRouterRoleEnabled() that can disable the Router role, but this function does not appear on the recent API releases.

    Best regards,

    Charlie

Children
No Data
Related