Multiple connections with iso timer synchronization

I am using the sample code from Nordic SDK v2.6.99-cs2 Bluetooth: ISO time synchronization.

I am trying to use the sample in broadcast isochronous streams mode by placing 2 development kits simulating sensors in beacon mode by typing either b in the terminal emulator. and another one as receivers of the broadcast isochronous stream.type r in the terminal.

I made the following changes:

definition #define CONFIG_BT_ISO_MAX_CHAN 1 to 4

#define CONFIG_BT_ISO_SYNC_RECEIVER 1 to 2
but I still do not receive the two sensor information from the beacon on the receiver. the receiver connects to only one of the beacons and does not try to connect to another.

Here are the questions:

1) analyzing the code, the receiver connects only with one address of bis_channels. Does this mean that the receiver can only synchronize one connection channel?

When I create a new bt_iso_big_sync(sync, &big_sync_param, &big); with another address, the error code appears. Why does this happen?

2) I want to create a network with two sensors sending temperature information (each with its own temperature), one on each channel but both synchronized. Is this possible using iso timer synchronization?

Parents Reply Children
  • Could you try this with NCS 2.7.0 as well? The .99 part is what I am trying to avoid, just because of the chance that there is some bug in the main branches.

    Regards,

    Elfving

  • I changed the NCS version to 2.7.0 but it didn't work. The receiver code structure remains the same. My problem is that I want to activate two reception channels on the receiver so that each one can receive data from a sensor. However, from what I saw in the code, the receiver is limited to receiving only one channel. I'm having difficulty implementing this part. I would like to know if the hardware or the SDK has any limitations that prevent this implementation.

    when I try to start two channels on the receiver, it only connects with the first index and the second index gives an initialization error

  • Hi again,

    I just had a talk with the team responsible, and the sample doesn't really support this by default. You would unfortunately have to change more than this to get it working. I will get more details for you on this next week.

    Just to mention it, if you want this done in a more simple way you can also just send all the data on one channel. 

    Regards,

    Elfving

  • Hello again,

    jvmreis said:
    I'm having difficulty implementing this part. I would like to know if the hardware or the SDK has any limitations that prevent this implementation.

    So synchronization with two different broadcasters isn't something the sample does by default. The stack and hardware does support this, but it isn't something the sample does, nor any of our other samples unfortunately. And getting the sample to do this does require a lot of changes. 

    Eg. https://github.com/nrfconnect/sdk-nrf/blob/main/samples/bluetooth/iso_time_sync/src/bis_receiver.c assumes that one goes through the steps to sync to one broadcaster only once. You would need to create two state machines to get this working.

    I have talked to your local FAE about this, he will try to contact you this week.

    Regards,

    Elfving

Related