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

Gazell - Bidirectional Comms with encrypted pipe

Hello,

I am currently working on a project that involves the host device to send configurations parameters over to the device. I was hoping the connection between in device and host to be encrypted as there could be multiple hosts/devices in the vicinity.

Based on another thread https://devzone.nordicsemi.com/f/nordic-q-a/32865/gazell-bi-directional-communication-between-paired-devices, I wanted to make sure that I am interpreting the solution correctly: since encrypted pipe's ACK payload is used for AES counter updates, the encrypted pipe should not be used to piggyback ack payloads.

  • Hi Mmak,

    Our expert in Gazell is current on holiday and will be back on 2nd week of January. I will try to help you in the mean time. 
    As you can find in gzp_process_encrypted_user_data() function in nrf_gzp_host.c, the ACK packet is automatically built with only the encrypted validation ID and session counter number. 

    You would need to use non encrypted pipe for piggy packing data back from host to device.


    However, I do think that it's possible to modify the function gzp_process_encrypted_user_data() to add your custom data in. And you need to modify the gzp_crypt_tx_transaction() function in nrf_gzp_device.c to extract the user data out on the device side. I haven't tested this though. 

  • Alright thanks for the confirmation and advice!

Related