-
Notifications
You must be signed in to change notification settings - Fork 42
Description
Checklist
- Checked the issue tracker for similar issues to ensure this is not a duplicate.
- Described the feature in detail and justified the reason for the request.
- Provided specific use cases and examples.
Feature description
I would like to use esp-thread-br with external 802.15.4 radio chips, such as Texas Instruments CC2652 series. TI's current Thread 1.3 certified firmware however is missing some required capabilities as below:
E(672) OPENTHREAD:[C] P-RadioSpinel-: RCP is missing required capabilities:
E(672) OPENTHREAD:[C] P-RadioSpinel-: sleep-to-tx
E(672) OPENTHREAD:[C] P-RadioSpinel-: rx-timing
E(682) OPENTHREAD:[C] P-RadioSpinel-: rx-on-when-idle
The last one can be disabled at compile time, but the other two cant. Notes in the TI source code show these two features are disabled due to a mix of hardware/software limitations.
https://github.com/TexasInstruments/ot-ti/blob/e7fbbcc60c25d1dec3ed4d02cff9acd866091ce7/src/radio.c#L1677
The TI firmware works fine in the POSIX OTBR container, which implements receive timing in Software within the OTBR. However it cannot work with esp-thread-br implemenation.
It would be great to have support for CC2652 as 802.15.4 radio when using esp-thread-br. This would require implementing software timing within the otbr and a way to disable sleep-to-tx.
Use cases
To run OTBR directly on ESP32 when attached to third party radios, of which CC2652 series are one of the most popular options for 802.15.4 radios. This would work in conjunction with Home Assistant or other open smart home platforms, allowing to easily add multiple OTBR instances to ones network.
Home Assistant itself works great with esp-thread-br running esp32-c6 or EFR32 radios.
Alternatives
The only alternative is to run a serial bridge in the esp32 and tunnel traffic from OTBR container over a network socket. While this works in some cases, any network issues quickly lead to instabilities. It would be much more preferable to run otbr directly on the esp32.
Additional context
No response