eeprom24x-rs

Platform agnostic Rust driver for 24x series serial EEPROM devices using embedded-hal

APACHE-2.0 License

Downloads
45.1K
Stars
33
Committers
7
eeprom24x-rs - Release 0.7.1 Latest Release

Published by eldruin 6 months ago

Added

  • Add support for 24AA02xE48/E64 devices.
  • Add Debug derive to markers.
eeprom24x-rs - v0.7.0

Published by eldruin 9 months ago

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
eeprom24x-rs - Release 0.6.1

Published by eldruin 10 months ago

Added

  • Add support for 24CSx devices.
  • Implement read_unique_serial for 24CSx devices.
eeprom24x-rs - Release 0.6.0

Published by eldruin over 1 year ago

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.
eeprom24x-rs - Release 0.5.0

Published by eldruin almost 3 years ago

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.
eeprom24x-rs - Release 0.4.0

Published by eldruin about 3 years ago

Added

  • PartialEq implementation for SlaveAddr.

Changed

  • [breaking-change] Remove Default derive for Eeprom24x.
    Technically a breaking change but it should not affect anybody.
eeprom24x-rs - 0.3.0

Published by eldruin almost 6 years ago

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.
eeprom24x-rs - 0.2.1

Published by eldruin almost 6 years ago

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.
eeprom24x-rs - 0.2.0

Published by eldruin almost 6 years ago

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.

eeprom24x-rs - 0.1.1

Published by eldruin almost 6 years ago

Fixed

  • Disallow setting a different slave address through SlaveAddr::Default.
eeprom24x-rs - 0.1.0

Published by eldruin almost 6 years ago

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.

Package Rankings
Top 11.55% on Crates.io
Badges
Extracted from project README
crates.io Docs Build Status Coverage Status
Related Projects