Hi.
I am currently studying BLE using FRDM-KW36.
I have a few questions about the features KW36 supports.
1. Just like the picture below, can KW36 exchange multiple packets between a master and a slave in one connection interval? (ex. M->S and S->M)
I have changed the example wireless uart to check the channel. (WriteCharacteristicValueWithoutReponse for master and ValueNotification for slave)
The test result shows that each, master and slave, has different channel at the callback function. (client callback, server callback, notification callback)
I hope to exchange data in the same channel.
2. If possible, could you tell me few proper examples or codes to look for?
I don't work for KW36 R&D, so my answers may not be 100% correct.
(1) Yes, I think all BLE implementations (i.e. not only NXP but from other vendors too) should do multiple pairs of packets per interval. Else the data throughput will be limited.
E.g. set the connection interval to 1s or above, if only 1 pair of packet is exchanged per sec, you can calculate the throughput and compare with the actual measurements.
(2) In KW36, try to see if you can find example projects called private profile client/server. And see the printf on the serial terminal.
(3) The hopping sequence should be standard as defined in BLE spec published by Bluetooth SIG. Else the product cannot be certified by the SIG.
(4) Not the way I know of. In the very low level driver for internal debugging, there maybe a way to set the BLE Rx/Tx frequency. But at the application level, it is not possible to control hopping frequency during a BLE connection.
If you need to run some RF tests, try to see if you can get access to the Direct Test Mode (DTM). If DTM is available, there you can send packets on a specified channel.
(5) I don't know XCVR_GetFreq. Another advice is to find a BLE sniffer.
(6) KW36 is currently not BLE v5.1 certified, meaning it won't have 5.1 features. Will there be upgrade in the future? I don't know.
A small tip: check official website and looks for ics details. But probably a SIG account is needed.