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

Using NFC for Provisioning nRF Mesh Application

Hi Nordic Team,

I am new to Bluetooth mesh and NFC. I am working with the device nRF5340 and SDK NCS v1.5.0 .

I have used the sample Bluetooth: Mesh light as a starting point for mesh , and Bluetooth: NFC pairing to realize NFC as a pairing method for BLE, using nRF Connect for Mobile application in android phone as central device. 

I am trying to implement the provisioning process through NFC in the Bluetooth mesh application, for instance the Mesh Light application. I have some doubts in this regards.

Is it possible to use NFC for provisioning in mesh applications?, if possible, does the nRF Mesh mobile application from Nordic support provisioning through NFC?

Are there any mesh samples that uses NFC for provisioning?

I kindly request you to support me in this regard.

Thanks,

S Mohan

  • Hi Mohan, 


    The best way is still to modify the nRF Mesh app to access NFC directly. I don't know how you can integrate NRF Tools and nRF Mesh app. 
    Why do you need to send the number of LED Blink when you already use NFC , why don't you just send NFC OOB authentication data via NFC ? 

  • Hi Mr.  . Thanks for replying.

    I don't know how you can integrate NRF Tools and nRF Mesh app

    Actually is was meaning the NFC Tools app and not the nRF tools app from Nordic. I thought of using this NFC tools app temporarily, to read the NFC record from the unprovisioned device into the provisioner(android mobile), until I find a way to modify the nRF Mesh app.

    Why do you need to send the number of LED Blink when you already use NFC

    From the mesh profile, i could not find a separate OOB authentication method to use NFC (only methods I found were static OOB , no OOB , output OOB, input OOB) . So I planned to use the Output OOB method and pass the Authvalue (random number that is generated in the unprovisioned device) through NFC record  and read it on the provisioner using the a generic NFC reader app. Then enter this Authvalue in the nRF Mesh app. I found that this random value (Authvalue) is generated in unprovisioned device side in Output OOB authentication method.

    , why don't you just send NFC OOB authentication data via NFC ? 

    I could not find the exact details that must be sent through NFC. Does the mesh profile explains what exact data needs to be passed as OOB in NFC authentication?. Could you please give me some reference of NFC OOB data, if the method I mentioned above(passing the Authvalue ) does not suffice. 

  • Hi Mohan, 

    You can do what you suggested, to configure the provisionee to use OOB output of NRF_MESH_PROV_OOB_OUTPUT_ACTION_BLINK or NRF_MESH_PROV_OOB_OUTPUT_ACTION_BEEP but you don't actually blink or beep. Instead you output the numeric value of number blink or beep into NFC and then read NFC by NFC Tool then provide that value into nRF Mesh app. 

    But if you can modify the nRF Mesh app to read NFC directly you can use static OOB here, instead of using BLINK/BEEP. By default static OOB is supported by the mesh example. You can find the STATIC_AUTH_DATA inside example_common.h 
    This array can be randomized generated on each device/provisioning. When you provision the device using nRF Mesh app , instead of selecting No OOB or BLINK or BEEP, you select Static OOB. A window will pop up to input the Auth data (should input same data as STATIC_AUTH_DATA ) 
    So in this case you can just read NFC and input the data you read from NFC as the Auth data. See the screenshots here: 

    This is more secured than using BEEP or BLINK. You can modify the nrf Mesh app to make it run transparently. In stead of popup for input , it can say "Please scan NFC to get the Authentication data"

  • Hi Mr. Hung Bui. Thankyou so much for the Reply.

    You can do what you suggested, to configure the provisionee to use OOB output of NRF_MESH_PROV_OOB_OUTPUT_ACTION_BLINK

    Now I passed the Authvalue through NFC and I am able to provision it. 

Related