Skip to content

Commit cc92673

Browse files
maje-embrlubos
authored andcommitted
esb: Set 16-bit preamble for 2 Mbit and 4 Mbit bitrate
Configured the ESB to use a 16-bit preamble for Nrf_2Mbit, Ble_2Mbit and Nrf_4Mbit modes. Ref: NCSDK-29163 Signed-off-by: Marcin Jelinski <[email protected]>
1 parent 32bd0b9 commit cc92673

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

subsys/esb/esb.c

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -546,6 +546,24 @@ static void update_rf_payload_format_esb_dpl(uint32_t payload_length)
546546
packet_config.balen = (esb_addr.addr_length - 1);
547547
packet_config.statlen = 0;
548548
packet_config.maxlen = CONFIG_ESB_MAX_PAYLOAD_LENGTH;
549+
#if defined(RADIO_PCNF0_PLEN_Msk)
550+
if (esb_cfg.bitrate == ESB_BITRATE_2MBPS) {
551+
packet_config.plen = NRF_RADIO_PREAMBLE_LENGTH_16BIT;
552+
}
553+
554+
#if defined(RADIO_MODE_MODE_Ble_2Mbit)
555+
if (esb_cfg.bitrate == ESB_BITRATE_2MBPS_BLE) {
556+
packet_config.plen = NRF_RADIO_PREAMBLE_LENGTH_16BIT;
557+
}
558+
#endif /* defined(RADIO_MODE_MODE_Ble_2Mbit) */
559+
560+
#if defined(RADIO_MODE_MODE_Nrf_4Mbit0_5) || defined(RADIO_MODE_MODE_Nrf_4Mbit_0BT6)
561+
if (esb_cfg.bitrate == ESB_BITRATE_4MBPS) {
562+
packet_config.plen = NRF_RADIO_PREAMBLE_LENGTH_16BIT;
563+
}
564+
#endif /* defined(RADIO_MODE_MODE_Nrf_4Mbit0_5) || defined(RADIO_MODE_MODE_Nrf_4Mbit_0BT6) */
565+
566+
#endif /* defined(RADIO_PCNF0_PLEN_Msk) */
549567

550568
nrf_radio_packet_configure(NRF_RADIO, &packet_config);
551569
}

0 commit comments

Comments
 (0)