You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit fixes the following:
* Fix a bug in the initialization of `init_val` in the GPIOTE task
used for the LED, where it would always be initialized to
`NRF_GPIOTE_INITIAL_VALUE_HIGH` and not take the dt_flags into
account. This made the LED toggle with inverted polarity on
platforms where the LEDs are active high.
* Change the LED used when
`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE` is enabled to not
conflict with the LED used to display synchronized toggling.
* Update references to LED numbers in the README to match the actual
sample behavior.
Signed-off-by: Ludvig Jordet <[email protected]>
Copy file name to clipboardExpand all lines: samples/bluetooth/iso_time_sync/README.rst
+19-19Lines changed: 19 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -40,15 +40,15 @@ The sample demonstrates the following features:
40
40
.. group-tab:: nRF52 and nRF53 DKs
41
41
42
42
This sample configures a single device as a transmitter of its **Button 1** state.
43
-
The transmitting and receiving devices toggle **LED 1** synchronously with the accuracy of a few microseconds.
44
-
When the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 2** is toggled upon sending or receiving data.
43
+
The transmitting and receiving devices toggle **LED 2** synchronously with the accuracy of a few microseconds.
44
+
When the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 1** is toggled upon sending or receiving data.
45
45
This allows you to measure the minimal end-to-end latency.
46
46
47
47
.. group-tab:: nRF54 DKs
48
48
49
49
This sample configures a single device as a transmitter of its **Button 0** state.
50
-
The transmitting and receiving devices toggle **LED 0** synchronously with the accuracy of a few microseconds.
51
-
When the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 1** is toggled upon sending or receiving data.
50
+
The transmitting and receiving devices toggle **LED 1** synchronously with the accuracy of a few microseconds.
51
+
When the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 0** is toggled upon sending or receiving data.
52
52
This allows you to measure the minimal end-to-end latency.
53
53
54
54
.. note::
@@ -69,7 +69,7 @@ Check and configure the following Kconfig options:
This configuration option enables immediate toggling of **LED 2** (nRF52 and nRF53 DKs) or **LED 1** (nRF54 DKs) when isochronous data is sent or received.
72
+
This configuration option enables immediate toggling of **LED 1** (nRF52 and nRF53 DKs) or **LED 0** (nRF54 DKs) when isochronous data is sent or received.
73
73
It allows for measurement of the minimum end-to-end latency.
74
74
75
75
.. _CONFIG_SDU_INTERVAL_US:
@@ -180,9 +180,9 @@ The sample code is divided into multiple source files, which makes it easier to
180
180
181
181
When a valid SDU is received, the following operations are performed:
182
182
183
-
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 2** is toggled immediately.
183
+
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 1** is toggled immediately.
184
184
You can use this to observe that different receivers may receive the SDU at different points in time.
185
-
* A timer trigger is configured to toggle **LED 1** :ref:`CONFIG_TIMED_LED_PRESENTATION_DELAY_US <CONFIG_TIMED_LED_PRESENTATION_DELAY_US>` after the received timestamp.
185
+
* A timer trigger is configured to toggle **LED 2** :ref:`CONFIG_TIMED_LED_PRESENTATION_DELAY_US <CONFIG_TIMED_LED_PRESENTATION_DELAY_US>` after the received timestamp.
186
186
This ensures that all receivers and the transmitter toggle it at the same time.
187
187
188
188
``iso_tx.c``
@@ -195,9 +195,9 @@ The sample code is divided into multiple source files, which makes it easier to
195
195
* The SDU is transmitted on all the established isochronous channels with the same timestamp.
196
196
This ensures that all the receivers can toggle their corresponding LEDs at the same time.
197
197
The very first SDU is provided without a timestamp, because the timestamp is not known at this point in time.
198
-
* **LED 1** is configured to toggle synchronously with the **LED 1** on all the receivers.
198
+
* **LED 2** is configured to toggle synchronously with the **LED 2** on all the receivers.
199
199
The toggle time is determined by the TX timestamp and defined relative to the synchronization reference on the receiver.
200
-
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 2** is toggled right before sending the SDU.
200
+
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 1** is toggled right before sending the SDU.
201
201
You can use this to observe the end-to-end latency.
202
202
203
203
``timed_led_toggle.c``
@@ -257,9 +257,9 @@ The sample code is divided into multiple source files, which makes it easier to
257
257
258
258
When a valid SDU is received, the following operations are performed:
259
259
260
-
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 1** is toggled immediately.
260
+
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 0** is toggled immediately.
261
261
You can use this to observe that different receivers may receive the SDU at different points in time.
262
-
* A timer trigger is configured to toggle **LED 0** :ref:`CONFIG_TIMED_LED_PRESENTATION_DELAY_US <CONFIG_TIMED_LED_PRESENTATION_DELAY_US>` after the received timestamp.
262
+
* A timer trigger is configured to toggle **LED 1** :ref:`CONFIG_TIMED_LED_PRESENTATION_DELAY_US <CONFIG_TIMED_LED_PRESENTATION_DELAY_US>` after the received timestamp.
263
263
This ensures that all receivers and the transmitter toggle it at the same time.
264
264
265
265
``iso_tx.c``
@@ -272,9 +272,9 @@ The sample code is divided into multiple source files, which makes it easier to
272
272
* The SDU is transmitted on all the established isochronous channels with the same timestamp.
273
273
This ensures that all the receivers can toggle their corresponding LEDs at the same time.
274
274
The very first SDU is provided without a timestamp, because the timestamp is not known at this point in time.
275
-
* **LED 0** is configured to toggle synchronously with the **LED 0** on all the receivers.
275
+
* **LED 1** is configured to toggle synchronously with the **LED 1** on all the receivers.
276
276
The toggle time is determined by the TX timestamp and defined relative to the synchronization reference on the receiver.
277
-
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 1** is toggled right before sending the SDU.
277
+
* If the :ref:`CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE <CONFIG_LED_TOGGLE_IMMEDIATELY_ON_SEND_OR_RECEIVE>` Kconfig option is enabled, **LED 0** is toggled right before sending the SDU.
278
278
You can use this to observe the end-to-end latency.
279
279
280
280
``timed_led_toggle.c``
@@ -318,7 +318,7 @@ After programming the sample to the development kits, perform the following step
318
318
#. Select which BIS the receiver should synchronize to.
319
319
#. Observe that the device(s) synchronize to the broadcaster and start receiving isochronous data.
320
320
#. Press **Button 1** on the broadcaster.
321
-
#. Observe that **LED 1** toggles on both the broadcaster and the receivers.
321
+
#. Observe that **LED 2** toggles on both the broadcaster and the receivers.
322
322
323
323
.. group-tab:: nRF54 DKs
324
324
@@ -331,7 +331,7 @@ After programming the sample to the development kits, perform the following step
331
331
#. Select which BIS the receiver should synchronize to.
332
332
#. Observe that the device(s) synchronize to the broadcaster and start receiving isochronous data.
333
333
#. Press **Button 0** on the broadcaster.
334
-
#. Observe that **LED 0** toggles on both the broadcaster and the receivers.
334
+
#. Observe that **LED 1** toggles on both the broadcaster and the receivers.
335
335
336
336
Testing connected isochronous streams
337
337
=====================================
@@ -353,7 +353,7 @@ After programming the sample to the development kits, perform the following step
353
353
#. Select data direction.
354
354
#. Observe that the peripheral(s) connect to the central and start receiving isochronous data.
355
355
#. Press **Button 1** on the central device.
356
-
#. Observe that **LED 1** toggles on both the central and peripheral devices.
356
+
#. Observe that **LED 2** toggles on both the central and peripheral devices.
357
357
358
358
.. group-tab:: nRF54 DKs
359
359
@@ -368,7 +368,7 @@ After programming the sample to the development kits, perform the following step
368
368
#. Select data direction.
369
369
#. Observe that the peripheral(s) connect to the central and start receiving isochronous data.
370
370
#. Press **Button 0** on the central device.
371
-
#. Observe that **LED 0** toggles on both the central and peripheral devices.
371
+
#. Observe that **LED 1** toggles on both the central and peripheral devices.
372
372
373
373
374
374
Observe time-synchronized ISO data processing
@@ -378,12 +378,12 @@ Observe time-synchronized ISO data processing
378
378
379
379
.. group-tab:: nRF52 and nRF53 DKs
380
380
381
-
When you press **Button 1** on the transmitting device, you can observe that **LED 1** toggles simultaneously on all devices.
381
+
When you press **Button 1** on the transmitting device, you can observe that **LED 2** toggles simultaneously on all devices.
382
382
To observe the accurate toggling, use a logic analyzer or an oscilloscope.
383
383
384
384
.. group-tab:: nRF54 DKs
385
385
386
-
When you press **Button 0** on the transmitting device, you can observe that **LED 0** toggles simultaneously on all devices.
386
+
When you press **Button 0** on the transmitting device, you can observe that **LED 1** toggles simultaneously on all devices.
387
387
To observe the accurate toggling, use a logic analyzer or an oscilloscope.
0 commit comments