-
Notifications
You must be signed in to change notification settings - Fork 744
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
nrf: add initial support for CLOCK and RADIO #463
Conversation
Thanks for the PR! Configuring clocks is already supported in About RADIO: As I said in #432, I'm concerned that adding async at such a low layer might prevent implementing protocols because it's too slow or not flexible enough. For example, Nordic's SoftDevice (proprietary BLE stack) makes extensive use of interrupts, peripheral shortcuts, PPI, one RTC and one TIMER. Do you have any protocol in mind that you want to implement? It would be nice to have some PoC to verify that this approach is viable for implementing higher level protocols on top. |
About the clock configuration: Agreed, there should be only one API to configure the clocks. Using About the radio: my current use case is sending short messages from battery powered sensors. For this, I am using my proprietary protocol. I have had a look at the protocols you suggested: IEEE 802.15.4 seems like a good protocol for what I am doing, but the only chip I have access to (nrf52810) does not support it; ESB and BLE are supported by the nrf52810. I have yet to investigate, if there is a PoC I can do in a reasonable time. Do you already have an idea of your preferred architecture for the protocol implementation? I understand that building it up layer by layer might not work due to overhead (see you comment in #432). Do you see the protocol implementation outside of the scope of embassy? Or do you see different APIs (radio_ble, radio_generic, radio_esb, etc) placed behind feature flags as needed? |
Hey @hannes-hochreiner are you on matrix? Id love to see everyone talking |
As things stand, I don´t have the bandwidth to implement one of the requested protocols. In the current state of the implementation, the pull request will not be accepted. Hence, I am closing this pull-request. |
I added support for basic transmission and reception of packets using the RADIO peripheral. In order to use the radio, the high-frequency clock needs to be running using the external oscillator (XO). Therefore, also added support for configuring the low- and high-frequency clocks.
fixes #432