Open luojia65 opened 3 years ago
I'd be interested in working on BLE, using the binary blob. I wish I was good enough at reversing to be useful for that, but unfortunately not.
The only set of HCI traits I can find are in bluetooth-hci. I'm not sure how usable or complete this crate is, but it'll be a good starting point.
@Benjamin-L That's very nice! You can try in your fork, and, feel free to design APIs and functions. Thank you for contribution! :)
I will try to implement SPI master mode - probably not more than what the STM32F1xx hal offers for the start
I will implement I2C functionality
I will implement basic timer functionality including support for interrupts (but not watchdog - should be it's own PR IMHO)
I started looking into using the wifi blobs from Rust. I can already do a wifi scan but it is really going to be a mess so I guess I should keep it in a separate repo/crate.
Problem with the blobs is we need ilp32f abi but none of the built-in targets support that (but we can use a target spec json and nightly build-std). Then we need ilp32f support in riscv and riscv-rt and certainly some support in the hal (probably the easiest thing).
As soon as it looks like something I can show, I will push the code to github. But it will probably take quite some time unfortunately.
I will be working to implement generic time support for the timers per this issue: https://github.com/sipeed/bl602-hal/issues/36
I will implement the Watchdog timer.
Gonna take a stab at PWM
There are many modules unfinished in this project.
To avoid conflicts, please claim your work before contributions. You may reply to this issue like:
After your work is verified for peripheral function and code style, the corresponding to-do list entry is marked as finished. Please read this project's open-source license and BL602's reference manual before your work. Have fun!
If you need to cancel your work claim: thank you for concern on BL602-hal project! Please push (or pull request) your finished partial work, then modify your issue reply with
~delete line~
.