NCS: Setting MAC address to static for Mesh; UUID last bytes are zeroes

1. Is it possible to set MAC address from random to static for Mesh in nRF Connect SDK? 

CONFIG_BT_PRIVACY=n and CONFIG_BT_SETTINGS=y seems does not change the behavior.

2. We have an issue with UUID, last bytes are zeroes in default configuration. Is it a bug or how to configure SDK to avoid this?

  • Hi,

    Thank you for elaborating.

    mesh777 said:
    Your suggested way of achieving static MAC also requires Logging to be enabled. Previously I justified our need to have static MAC, is there any other way to do so, or maybe it will be added in the future (that we could use for produced devices)?

    Unfortunately no. There are no other way of doing so without changing the Mesh stack, which in turn will require you to go through all qualification procedures on your own. As far as future plans goes, you will need to contact the Regional Sales Director for your region to get a proper answer. If you don't have their contact information, please send me a PM on Devzone and I will send it to you! 

    mesh777 said:
    And regarding UUID I did not find time yet to double check if issue appears on the sample project I mentioned above, however we derived our project from the sample and as far as I remember UUID was always with trailing zeroes.

    Noted. Could you update me on this if you find the time to double check? As far as I can see this is not the case in the mesh/light sample we provide. If we're to be able to answer this question we need more details such as a minimal sample including the trailing zeroes UUID or minimum some code snippets/screen shots showing that this is the case

    Kind regards,
    Andreas 

  • I double checked the bluetooth/mesh/light sample from v1.8.0 SDK.

    I programmed sample to nRF52840-DK board and opened nRF Mesh App on iPad. If I press plus symbol in the top right corner to show unprovisioned devices, I see Mesh Light device in the list with the following UUID: DD959590-E8BA-41DB-8000-000000000000. What does it mean and how to get rid of these zeroes?

  • Hi,

    Apologies for the late response. I've been out of office on business travel for the past few days and will be for the two next weeks as well. I will do my best to find a colleague to handle your case for that duration. 

    Kind regards,
    Andreas

  • Hi,

    I have looked into why UUIDs end in 8000-000000000000.

    In short the UUID is generated from the device ID, which for nRF SoCs is 8 bytes long. The resulting UUID is therefore the device ID with byte 6 modified to comply with the UUID specification, followed by the 8000-000000000000 sequence.

    I have notified the mesh team and am awaiting their feedback.

    Regards,
    Terje

  • Hi,

    The resulting UUID is not necessarily "wrong", even though it looks a bit strange because of the way it is generated. Do you have a hard requirement on the UUID not ending in the 8000-000000000000 sequence? I assume the rest of the UUID should be enough for identifying the device, as it is based on the device ID of the SoC.

    Regards,
    Terje

Related