Skip to content

Releases: flipperzero-rs/flipperzero

0.12.0

12 Sep 19:37
Compare
Choose a tag to compare

Added

  • flipperzero::gpio::i2c, providing a Rust interface to the external 3.3V I2C
    bus over GPIO pins C0 and C1, as well as the internal (power) I2C bus.
  • flipperzero::furi::string::FuriString::into_raw, allowing ownership
    of the string to be able to be handed over to C code.

Changed

  • Updated to SDK 73 (firmware 1.0.1🥳).
  • Switched to nightly-2024-09-10 compiler
  • flipperzero_rt::entry macro now requires a function with type signature
    fn(Option<&CStr>) -> i32 instead of fn(*mut u8) -> i32.
  • flipperzero::furi::string::FuriString::as_mut_ptr is now public to allow for
    it to be used with low-level C APIs (e.g. furi_string_printf).

Removed

  • flipperzero::toolbox::{Md5, Sha256} (due to their removal from the Flipper
    Zero SDK API).
  • flipperzero_sys::c_string!, since CStr literals are stable now
    and the macro did not provide any validations.

0.11.0

31 Aug 05:52
Compare
Choose a tag to compare

See flipperzero v0.11.0 on crates.io.

Added

  • flipperzero::furi::time::{Duration, Instant} implementations
  • impl Default for flipperzero::dialogs::DialogMessage
  • impl Default for flipperzero::toolbox::Crc32
  • Support for generating .fast.rel sections so binaries load faster

Changed

  • Migrated to SDK API 35.0 (firmware 0.89.0).
  • flipperzero_test::tests now allows #[cfg(..)] attributes on test methods.

Documentation

  • Feature flags are now documented and the items guarded by them are now annotated.

Acknowledgements

Big shout out to @str4d and @JarvisCraft for a bunch of work right across the board. Everything from new features, to documentation/tooling improvements and for being highly active in code reviewing PRs.

Thanks to @agarof for their fixes to the GPIO example and making sure the docs build event when the alloc feature is disabled.

Thanks to @mogenson for implementing a wrapper for the file browser dialog.

Full list of changes can be found here: v0.10.0..v0.11.0