ESP32 support#29
Conversation
|
Quick question is the ESP32 support targeting a certain variant? Cool to see the project moving forward. |
|
This is targeting the C6 for now because of the built-in radio but the radio backend is intentionally very generic, you could totally split it up between two chips like we do for the host. I'd have to double check what chips Espressif actually supports with their Rust crates. The C6 is RISC-V so I think anything else with that architecture should work identically? |
|
Got it, thanks. I was wondering if it was a split as you described or all in one radio stack so you answered my question. |
|
C6(X) and H2(X) is RISC-V with 15.4 radios that is compatible in there IDF. I have the Zigbee/Thread GW with ETH HAT if need testing in the future then its very standard but is having one very hotted S3 module (16M flash) but all modules used on it is original so have good PCB antennas and not like the clones mini board that have lost all RF tuning on the way from the factory (compared with the reference design). If you need help testing of ESP32 or EFR32 MG1 or MG21 devices give my one sign Puddly !! |
This comment was marked as off-topic.
This comment was marked as off-topic.
Great work Puddly !!!For the radio performance i think it can being good documentation what is devices is good and bad. The Seeed XIAO ESP32-C6 is having internal ceramic (with very narrow components) and one external connection and both shall working OK but must setting the GPIO right in the firmware for selecting witch RF path shall being used (if selected external without external antenna its being one big mess and can destroying the chip RF part). Other ESP32 original or good made clones with PCB antennas shall working OK and is (shall) being FCC/CE certed so must have OK RF filtering implemented (but no 100% grantee its in-place and working). |
|
@puddly Is the radio in the ESP32-C6-DevKitM-1 working better the Seeed XIAO ESP32-C6 with internal antenna or still bad RF performance ? PM: The Zigbee / OTBR dev kits with OTBR firmwaare is using its ESP32-H2 with max TX output and i think its bad then getting more one star network and also the radio links is being asymmetrical and not getting good bidirectional paths for routing traffic. |
|
@MattWestb It does look better! The Seeed XIAO board let you switch between the on-board antenna and a U.FL connector via GPIO but neither one of those seemed to work well. The dev kit is working a lot better.
At this point the ESP32-C6 performance is pretty good, I'm able to run it just fine at home without any noticeable slowdown compare to the host stack. I think the weak antenna and some strange behavior with the ESP32's low-level IEEE 802.15.4 API (it's very prone to CCA failures) make it perform slightly worse but I think as an experiment this is practically done and ready to merge. Porting to the EFR32MG24 is very much possible at this point. Zigpy side is here: zigpy/zigpy-ziggurat#3, since this change modifies the wire protocol. |
|
If have using high power setting and transmitting and have the external antenna selected but no antenna connected the RF signal is reflected 100% back and doing it longer time the RF part is destroyed of overheating in the chip = one bricked chip. Great work done and next MG24 !!! |
This is
an experimentala functional branch to add support for ESP32 via Embassy.The majority of the changes are restructuring the stack to be
no_std(simple) and rewriting all fire-and-forget background task spawns to instead be persistent, reactive tasks that have defined lifetimes (hard). ESP32 support seems very feasible, I want to try and tunnel the provisional JSON wire format over serial. The only feature missing so far is an energy scanning API in the ESP32 crates.This PR depends on:
no_stdsupport