PackageTrack
Sign in Get early access

eeprom24x

Platform-agnostic Rust driver for the 24x series serial EEPROMs.

0.7.2 4.6M downloads/mo #4704 most downloaded on crates.io eldruin/eeprom24x-rs

What this package is like to depend on

Last release 2 years ago

no release in 18 months

Ships unpredictably

gaps range from 3 weeks to 2.6 years

Nearly every release is documented

notes for 12 of 12 stable releases

Nothing withdrawn

no release was ever pulled

8 years old

12 releases · first in 2018

0 releases in the last 12 months

see the full history below

Release timeline

12 releases · Aug 2018 to May 2024
2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 12
  1. 0.7.2 23 May 2024
    Release notes

    Added

    • Add feature defmt-03 to derive "defmt::Format" from defmt = "0.3" for public types.
    Open source →
    Release notes

    Added

    • Add feature defmt-03 to derive "defmt::Format" from defmt = "0.3" for public types.
    Open source →
  2. 0.7.1 02 May 2024
    Release notes

    Added

    • Add support for 24AA02xE48/E64 devices.
    • Add Debug derive to markers.
    Open source →
    Release notes

    Added

    • Add support for 24AA02xE48/E64 devices.
    • Add Debug derive to markers.
    Open source →
  3. 0.7.0 18 Jan 2024
    Release notes

    Changed

    • [breaking-change] Transitioned the embedded-storage interface to
      use the new embedded-hal DelayNs trait instead of the old CountDown
    • [breaking-change] Transitioned embedded-hal to version 1.0
    • Updated embedded-storage to version 0.3.1
    Open source →
    Release notes

    Changed

    • [breaking-change] Transitioned the embedded-storage interface to use the new embedded-hal DelayNs trait instead of the old CountDown
    • [breaking-change] Transitioned embedded-hal to version 1.0
    • Updated embedded-storage to version 0.3.1
    Open source →
  4. 0.6.1 27 Dec 2023
    Release notes

    Added

    • Add support for 24CSx devices.
    • Implement read_unique_serial for 24CSx devices.
    Open source →
    Release notes

    Added

    • Add support for 24CSx devices.
    • Implement read_unique_serial for 24CSx devices.
    Open source →
  5. 0.6.0 10 Jul 2023
    Release notes

    Added

    • Trait Eeprom24xTrait providing the device interface.

    Changed

    • Updated embedded-storage dependency to version 0.3.
    • Updated nb dependency to version 1.1.
    • Increase MSRV to version 1.60.0.
    Open source →
    Release notes

    Added

    • Trait Eeprom24xTrait providing the device interface.

    Changed

    • Updated embedded-storage dependency to version 0.3.
    • Updated nb dependency to version 1.1.
    • Increase MSRV to version 1.60.0.
    Open source →
  6. 0.5.0 20 Jan 2022
    Release notes

    Added

    • Add support for STM M24C01 and M24C02.
    • Implement embedded_storage::ReadStorage and embedded_storage::Storage traits.

    Changed

    • [breaking-change] Increase MSRV to version 1.51.0.
    Open source →
    Release notes

    Added

    • Add support for STM M24C01 and M24C02.
    • Implement embedded_storage::ReadStorage and embedded_storage::Storage traits.

    Changed

    • [breaking-change] Increase MSRV to version 1.51.0.
    Open source →
  7. 0.4.0 04 Sep 2021
    Release notes

    Added

    • PartialEq implementation for SlaveAddr.

    Changed

    • [breaking-change] Remove Default derive for Eeprom24x.
      Technically a breaking change but it should not affect anybody.
    Open source →
    Release notes

    Added

    • PartialEq implementation for SlaveAddr.

    Changed

    • [breaking-change] Remove Default derive for Eeprom24x. Technically a breaking change but it should not affect anybody.
    Open source →
  8. 0.3.0 20 Jan 2019
    Release notes

    Changed

    • [breaking-change] The addresses are now passed as a single u32.
      User code should be easy to adapt:
      eeprom.read_byte([0x12, 0x34]) now becomes: eeprom.read_byte(0x1234).

    Fixed

    • High memory addressing in devices using some device address bits for memory
      addressing: 24x04, 24x08, 24x16, 24xM01, 24xM02.
    • Protect against memory address rollover.
    • Protect against page address rollover.
    Open source →
    Release notes

    Changed

    • [breaking-change] The addresses are now passed as a single u32. User code should be easy to adapt: eeprom.read_byte([0x12, 0x34]) now becomes: eeprom.read_byte(0x1234).

    Fixed

    • High memory addressing in devices using some device address bits for memory addressing: 24x04, 24x08, 24x16, 24xM01, 24xM02.
    • Protect against memory address rollover.
    • Protect against page address rollover.
    Open source →
  9. 0.2.1 20 Jan 2019
    Release notes

    Removed

    • [breaking-change] Removed support for devices that use some device address
      bits for memory addressing: 24x04, 24x08, 24x16, 24xM01, 24xM02 as
      the addressing was erroneous. Please upgrade to version 0.3.0 to use them.
    Open source →
    Release notes

    Removed

    • [breaking-change] Removed support for devices that use some device address bits for memory addressing: 24x04, 24x08, 24x16, 24xM01, 24xM02 as the addressing was erroneous. Please upgrade to version 0.3.0 to use them.
    Open source →
  10. 0.2.0 22 Nov 2018
    Release notes

    Added

    • Add support for many more devices.

    Changed

    • [breaking-change] The addresses are now passed to the methods per value for
      efficiency reasons. i.e. address: &[u8; 2] has now become address: [u8; 2]
      in all methods. User code should be easy to adapt:
      eeprom.read_byte(&[0x12, 0x34]) now becomes: eeprom.read_byte([0x12, 0x34]).

    • [breaking-change] Changed type of parameter of the Eeprom24x struct. Now it
      is a marker type for the page size instead of the device name.

    Open source →
    Release notes

    Added

    • Add support for many more devices.

    Changed

    • [breaking-change] The addresses are now passed to the methods per value for efficiency reasons. i.e. address: &[u8; 2] has now become address: [u8; 2] in all methods. User code should be easy to adapt: eeprom.read_byte(&[0x12, 0x34]) now becomes: eeprom.read_byte([0x12, 0x34]).

    • [breaking-change] Changed type of parameter of the Eeprom24x struct. Now it is a marker type for the page size instead of the device name.

    Open source →
  11. 0.1.1 22 Aug 2018
    Release notes

    Fixed

    • Disallow setting a different slave address through SlaveAddr::Default.
    Open source →
  12. 0.1.0 18 Aug 2018
    Release notes

    This is the initial release to crates.io of the feature-complete driver. There may be some API changes in the future, in case I decide that something can be further improved. All changes will be documented in this CHANGELOG.

    <!-- next-url --> [Unreleased]: https://github.com/eldruin/eeprom24x-rs/compare/v0.7.2...HEAD [0.7.2]: https://github.com/eldruin/eeprom24x-rs/compare/v0.7.1...v0.7.2 [0.7.1]: https://github.com/eldruin/eeprom24x-rs/compare/v0.7.0...v0.7.1 [0.7.0]: https://github.com/eldruin/eeprom24x-rs/compare/v0.6.1...v0.7.0 [0.6.1]: https://github.com/eldruin/eeprom24x-rs/compare/v0.6.0...v0.6.1 [0.6.0]: https://github.com/eldruin/eeprom24x-rs/compare/v0.5.0...v0.6.0 [0.5.0]: https://github.com/eldruin/eeprom24x-rs/compare/v0.4.0...v0.5.0 [0.4.0]: https://github.com/eldruin/eeprom24x-rs/compare/v0.3.0...v0.4.0 [0.3.0]: https://github.com/eldruin/eeprom24x-rs/compare/v0.2.0...v0.3.0 [0.2.1]: https://github.com/eldruin/eeprom24x-rs/compare/v0.2.0...v0.2.1 [0.2.0]: https://github.com/eldruin/eeprom24x-rs/compare/v0.1.1...v0.2.0 [0.1.1]: https://github.com/eldruin/eeprom24x-rs/compare/v0.1.0...v0.1.1

    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive