Content-Length: 292780 | pFad | https://github.com/micropython/micropython/commit/26b1d31eda292d9cd5cfc68f14ce8055256fade8

EC Revert "stm32/rfcore: Intercept addr-resolution HCI cmd to work arou..." · micropython/micropython@26b1d31 · GitHub
Skip to content

Commit 26b1d31

Browse files
committed
Revert "stm32/rfcore: Intercept addr-resolution HCI cmd to work arou..."
This reverts commit 2668337. The issue with potential breaking of the BLE RX path in the radio is fixed since WS v1.12.0. Signed-off-by: Damien George <damien@micropython.org>
1 parent edf41d2 commit 26b1d31

File tree

1 file changed

+0
-18
lines changed

1 file changed

+0
-18
lines changed

Diff for: ports/stm32/rfcore.c

-18
Original file line numberDiff line numberDiff line change
@@ -611,24 +611,6 @@ void rfcore_ble_hci_cmd(size_t len, const uint8_t *src) {
611611
tl_list_node_t *n;
612612
uint32_t ch;
613613
if (src[0] == HCI_KIND_BT_CMD) {
614-
// The STM32WB has a problem when address resolution is enabled: under certain
615-
// conditions the MCU can get into a state where it draws an additional 10mA
616-
// or so and eventually ends up with a broken BLE RX path in the silicon. A
617-
// simple way to reproduce this is to enable address resolution (which is the
618-
// default for NimBLE) and start the device advertising. If there is enough
619-
// BLE activity in the vicinity then the device will at some point enter the
620-
// bad state and, if left long enough, will have permanent BLE RX damage.
621-
//
622-
// STMicroelectronics are aware of this issue. The only known workaround at
623-
// this stage is to not enable address resolution. We do that here by
624-
// intercepting any command that enables address resolution and convert it
625-
// into a command that disables address resolution.
626-
//
627-
// OGF=0x08 OCF=0x002d HCI_LE_Set_Address_Resolution_Enable
628-
if (len == 5 && memcmp(src + 1, "\x2d\x20\x01\x01", 4) == 0) {
629-
src = (const uint8_t *)"\x01\x2d\x20\x01\x00";
630-
}
631-
632614
n = (tl_list_node_t *)&ipcc_membuf_ble_cmd_buf[0];
633615
ch = IPCC_CH_BLE;
634616
} else if (src[0] == HCI_KIND_BT_ACL) {

0 commit comments

Comments
 (0)








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: https://github.com/micropython/micropython/commit/26b1d31eda292d9cd5cfc68f14ce8055256fade8

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy