You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by an...@apache.org on 2023/03/13 23:38:27 UTC

[mynewt-nimble] branch master updated: nimble/phy/nrf5x: Fix tx-tx timing

This is an automated email from the ASF dual-hosted git repository.

andk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-nimble.git


The following commit(s) were added to refs/heads/master by this push:
     new 1a5d0bf1 nimble/phy/nrf5x: Fix tx-tx timing
1a5d0bf1 is described below

commit 1a5d0bf1c3437361b3e698d9edb0cd102cb672e5
Author: Andrzej Kaczmarek <an...@codecoup.pl>
AuthorDate: Mon Mar 13 15:58:06 2023 +0100

    nimble/phy/nrf5x: Fix tx-tx timing
    
    When scheduling relative to TX start time we should also adjust for
    delay between radio event and actual TX time.
---
 nimble/drivers/nrf5x/src/ble_phy.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/nimble/drivers/nrf5x/src/ble_phy.c b/nimble/drivers/nrf5x/src/ble_phy.c
index bf989e88..d0f74185 100644
--- a/nimble/drivers/nrf5x/src/ble_phy.c
+++ b/nimble/drivers/nrf5x/src/ble_phy.c
@@ -1113,6 +1113,10 @@ ble_phy_tx_end_isr(void)
              */
             tx_time = NRF_TIMER0->CC[1] - ble_ll_pdu_syncword_us(tx_phy_mode) +
                       g_ble_phy_data.txtx_time_us;
+            /* Adjust for delay between EVENT_ADDRESS and actual address TX time */
+            /* FIXME assume this is the same as EVENT_END to end, but we should
+             *       measure this to be sure */
+            tx_time += g_ble_phy_t_txenddelay[tx_phy_mode];
         }
 
         /* Adjust for delay between EVENT_END and actual TX end time */