Matter Light bulb sample project modify for Matter over Thread keeping WiFi for AWS

I would like to modify the Matter: Light Bulb sample project, which comes as a dual Matter + AWS integration all running on WiFi. I would like to modify this project so that the Matter is running over Thread, and the WiFi continues to be used for the AWS integration. 

This is the project: docs.nordicsemi.com/.../README.html

Ideally, we have Matter-over-thread as sleepy end device, and WiFi-AWS using legacy power save mode. 

Parents Reply Children
  • Hi - thanks for following up. Can we not make use of the external flash? such as XIP or something? or is the RAM itself is not sufficient?

    in any case, thanks for the update. 

  • Hi nabeela,

    nabeela said:
    Can we not make use of the external flash? such as XIP or something? or is the RAM itself is not sufficient?

    Will you not have DFU with your product? If you need DFU, you need external flash anyway.

    XIP can help save some flash memory, yes, but only one image sector (in DFU context). That is not enough here.

    Fitting things on RAM is going to be a challenge too, but as things are right now, fitting things on flash is a bigger challenge.

  • So I just want to make clear that I don't need thread-wifi switching for Matter. 

    What I would like is the Matter Light Bulb sample project, which is currently Matter-WiFi + WiFi-AWS combo, if we can change that to be Matter-Thread + WiFi-AWS combo. So it's still matter, but running over Thread, and Wi-Fi is only used to communicate with AWS, not for Matter. 

    Is that doable? Is it possible to do this with just modifying the necessary Kconfig, project config, and board config / overlay (using either the nRF7002DK which also has a 5340 on it, or the 5340DK with 7002EK). 

  • Hi nabeela,

    The reason the Thread-Wi-Fi switching feature is brought up is because the memory requirement for it is going to reflect Matter over Thread + Wi-Fi.

    As mentioned, that alone consumes almost all of the nRF5340's flash memory. You will then have to add AWS on top of that,.

    nabeela said:
    Is that doable? Is it possible to do this with just modifying the necessary Kconfig, project config, and board config / overlay (using either the nRF7002DK which also has a 5340 on it, or the 5340DK with 7002EK). 

    Without external flash, and without DFU: It is difficult and recommended against, because no DFU support doesn't make for a good product.

    With external flash, with DFU: It is even more difficult, because the bootloader takes ~32kB or more. Furthermore, the memory required is so large that even if you can fit AWS in today, debug builds for development purposes will most likely be not possible, and future updates will be challenging. While not recommended against, still not recommended. 

    Without external flash, with DFU: No, that is entirely not possible.

  • got it thank you -- one last question that is related but a different strategy:

    Would I be able to store 2 firmware images - one for a Matter only firmware (either wifi or thread, not switchable), and a separate image that is wifi only (for AWS integration - such as AWS IoT example). 

    if default image (matter firmware) is in the internal flash, and the secondary image (AWS IoT Wifi) is in the external flash, and a user can switch the working image. Maybe external flash can keep both image, but only one is loaded to nRF5340 at any one time - like a DFU operation, but 2 images are pre-loaded to external flash and user can switch between them. 

    There is a product in the market that does this (I don't think it's using Nordic chipset, but it's an example)

    https://www.kwikset.com/products/detail/halo-select-touchscreen-wi-fi-and-matter-enabled-smart-lock

    If that's not at all possible, no problem. 

Related