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

change secured gzll standard pipes

To the kind attention of Nordic support team,

Is it possible to change pipes' numbers used by secured gazell library? It seems to be using pipe0 for pairing infos and pipe1 it is the encrypted pipe.

May I select another pipe as the encrypted one? Is it safe / possible to use pipe0 for custom transmission when using secured gazell libraries?

Thank you for all your kindness,

Best regard

Parents
  • Hi,

     

    GZP uses Pipe0 for pairing, and pipes 1 to 5 for communicating with paired devices.

    Its setup like this due to the hardware restrictions on pipes 1 to 5, as they inherit the base address from pipe 1 and only the LSByte of the address is configurable.

    Pipe0 can be configured uniquely compared to the other pipes. GZP relies on using pipe0 for pairing.

    Is it safe / possible to use pipe0 for custom transmission when using secured gazell libraries?

    I haven't tried this myself. It is possible to "re-use" the pairing pipe, by expanding the nrf_gzp.h::gzp_cmd_t enum to include your own data. However, this pipe should be commonly known from all your devices, and to be able to determine "which device is which", you'll have to add some sort of information if you need to distinguish your devices from each other.

    If safe; I cannot determine that without knowing the scenario in detail.

    Note: During secure transmission, the encrypted device link will consume the ACK payload completely once a encrypted payload has been received (see nrf_gzp_host.c::gzp_preload_ack()).

    May I select another pipe as the encrypted one?

     I suppose that is possible, as long as its between pipes 1 to 5. I do not understand why? The pipes are just a local definition. Its the actual on-air address that makes the difference.

      

    Kind regards,

    Håkon

Reply
  • Hi,

     

    GZP uses Pipe0 for pairing, and pipes 1 to 5 for communicating with paired devices.

    Its setup like this due to the hardware restrictions on pipes 1 to 5, as they inherit the base address from pipe 1 and only the LSByte of the address is configurable.

    Pipe0 can be configured uniquely compared to the other pipes. GZP relies on using pipe0 for pairing.

    Is it safe / possible to use pipe0 for custom transmission when using secured gazell libraries?

    I haven't tried this myself. It is possible to "re-use" the pairing pipe, by expanding the nrf_gzp.h::gzp_cmd_t enum to include your own data. However, this pipe should be commonly known from all your devices, and to be able to determine "which device is which", you'll have to add some sort of information if you need to distinguish your devices from each other.

    If safe; I cannot determine that without knowing the scenario in detail.

    Note: During secure transmission, the encrypted device link will consume the ACK payload completely once a encrypted payload has been received (see nrf_gzp_host.c::gzp_preload_ack()).

    May I select another pipe as the encrypted one?

     I suppose that is possible, as long as its between pipes 1 to 5. I do not understand why? The pipes are just a local definition. Its the actual on-air address that makes the difference.

      

    Kind regards,

    Håkon

Children
No Data
Related