Timestamp difference

Need help.
Code:
uint32_t final_tx_time = (pollack_rx_ts + (RESP_RX_TO_FINAL_TX_DLY_UUS * UUS_TO_DWT_TIME)) >> 8;
dwt_setdelayedtrxtime(final_tx_time);
range_tx_ts = (((uint64_t)(final_tx_time & 0xFFFFFFFEUL)) << 8) + TX_ANT_DLY;

                if (transmit(tx_buffer, size_package*KC_IDX+2, DWT_START_TX_DELAYED) == false)
                {
                    dwt_forcetrxoff();
                    dwt_rxreset();
                }
          uint64_t      ttt = get_tx_timestamp_u64(); 

Supposed, that (range_tx_ts) - (ttt) = 0, but difference is about 144093184. What’s wrong?

Your ttt is “now” after you instructed to transmit(), but actual TX did not yet happen, because your set it to transmit in the future at “range_tx_ts”.

if you transmit returning you an error, that means it cannot transmit, because the delay from the previous R-Marker (pollack_rx_ts ) + RESP_RX_TO_FINAL_TX_DLY is too short, or this time has already passed.

This is the basic principle of how DW IC operates, please check a relevant chapter of the User Manual.