Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

efr32mg1p RAIL library doesn't transmit IEEE 802.15.4 frames? #21

Open
osresearch opened this issue Mar 7, 2020 · 1 comment
Open

Comments

@osresearch
Copy link

image

The EFM32 MicroPython port recently switched to using efm32-base for its headers and libraries; before it had its own import of the gecko_sdk and rail. However, after this change the device doesn't seem to be able to transmit -- everything else with the 802.15.4 radio mode works fine, but packets just don't seem to reach the other side.

I bisected the patches and found that this change in the library from rail/TARGET_EFR32_1/librail_efr32xg1_release.a to efm32-base/protocol/bluetooth/lib/EFR32MG1P/GCC/librail.a is the one that broke it: osresearch/micropython@8b375bd#diff-d4c7b5c5d3162a974a48093ebb03c72fR45

Linking the new image against the old library also works and restores TX functionality. One thing I noted is that the library in efm32-base has bluetooth in the name, so I'm curious if there was a different RAIL library that has the 802.15.4 support or if we're picking up the wrong library? The part is an EFR32MG1P132G1 (shown in the above photo), so I'm hoping that means the EFR32MG1P librail.a is the correct one.

@osresearch osresearch changed the title RAIL library doesn't transmit IEEE 802.15.4 frames? efr32mg1p RAIL library doesn't transmit IEEE 802.15.4 frames? Mar 7, 2020
@osresearch
Copy link
Author

Adding calls to RAIL_GetVersion():

  • Working TX: rail=2.3-1 build 1 flags 0 (350face7)
  • Not working: rail=2.7-0 build 24 flags 0 (0797443f)

And when I say "working", some of bits in the events are different between rail libraries, so TX completion events are not correctly delivered with 2.3, although the remote packet sniffer sees the bytes on the air. 2.7 claims that the packet have been transmitted, but nothing is seen on the remote end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant