esp-rs / esp-idf-hal

embedded-hal implementation for Rust on ESP32 and ESP-IDF
https://docs.esp-rs.org/esp-idf-hal/
Apache License 2.0
459 stars 171 forks source link

Problem with CHANGELOG.md in v0.43.0 release: Unable to find valid link for esp-ulp-riscv-hal crate. #398

Open deepak1824 opened 7 months ago

deepak1824 commented 7 months ago

I've been trying to use the latest release v0.43.1 for my ULP application. However, there seems to be an issue with the CHANGELOG.md file. The change logs for the release tag v0.43.0 mention a breaking change related to the removal of the riscv-ulp-hal feature. It suggests using the esp-ulp-riscv-hal crate instead. However, when I try to access the crate through the provided link, I receive a 404 error.

Screenshot 2024-04-01 at 3 59 56 PM

Is there a valid link or crate for the esp-ulp-riscv-hal or an alternative method to use the esp-idf-hal crate in my ULP application?

Additionally, if there are any examples available showcasing how to use ULP with Rust, it would be greatly appreciated. This would help in understanding how to integrate ULP functionality into Rust applications effectively with the updated code.

Additional Information

Vollbrecht commented 7 months ago

The ulp repository is here. What you are basically doing is building this specifc riscv-unknown-unknown target as a standalone elf, and then loading it into your normal main like you did previously. For how to program the ulp itself you should find minimal examples there.

The methods for loading and running the ulp are still found inside the ulp.rs of this project, though not sure how tested they are now with the "new" approach. There is no example for it but nothing changed here from before.

deepak1824 commented 7 months ago

After doing some internal digging, we figured out where the rust crate for the low-power RISC-V coprocessors is present https://github.com/esp-rs/esp-hal/tree/main/esp-lp-hal. It appears that multiple times refactoring was done to the Low processor code. Following are the few commits where it helped us track it down.

However, the link is still incorrect in the change logs and would be beneficial if it got updated.