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 2024Releases
latest 12-
0.7.223 May 2024Release notes
Open source →Added
- Add feature
defmt-03to derive "defmt::Format" fromdefmt = "0.3"for public types.
Release notes
Open source →Added
- Add feature
defmt-03to derive "defmt::Format" fromdefmt = "0.3"for public types.
- Add feature
-
0.7.102 May 2024Release notes
Open source →Added
- Add support for 24AA02xE48/E64 devices.
- Add
Debugderive to markers.
Release notes
Open source →Added
- Add support for 24AA02xE48/E64 devices.
- Add
Debugderive to markers.
-
0.7.018 Jan 2024Release notes
Open source →Changed
- [breaking-change] Transitioned the
embedded-storageinterface to
use the newembedded-halDelayNstrait instead of the oldCountDown - [breaking-change] Transitioned
embedded-halto version 1.0 - Updated
embedded-storageto version 0.3.1
Release notes
Open source →Changed
- [breaking-change] Transitioned the
embedded-storageinterface to use the newembedded-halDelayNstrait instead of the oldCountDown - [breaking-change] Transitioned
embedded-halto version 1.0 - Updated
embedded-storageto version 0.3.1
- [breaking-change] Transitioned the
-
0.6.127 Dec 2023Release notes
Open source →Added
- Add support for 24CSx devices.
- Implement
read_unique_serialfor 24CSx devices.
Release notes
Open source →Added
- Add support for 24CSx devices.
- Implement
read_unique_serialfor 24CSx devices.
-
0.6.010 Jul 2023Release notes
Open source →Added
- Trait
Eeprom24xTraitproviding the device interface.
Changed
- Updated
embedded-storagedependency to version 0.3. - Updated
nbdependency to version 1.1. - Increase MSRV to version 1.60.0.
Release notes
Open source →Added
- Trait
Eeprom24xTraitproviding the device interface.
Changed
- Updated
embedded-storagedependency to version 0.3. - Updated
nbdependency to version 1.1. - Increase MSRV to version 1.60.0.
- Trait
-
0.5.020 Jan 2022Release notes
Open source →Added
- Add support for STM M24C01 and M24C02.
- Implement
embedded_storage::ReadStorageandembedded_storage::Storagetraits.
Changed
- [breaking-change] Increase MSRV to version 1.51.0.
Release notes
Open source →Added
- Add support for STM M24C01 and M24C02.
- Implement
embedded_storage::ReadStorageandembedded_storage::Storagetraits.
Changed
- [breaking-change] Increase MSRV to version 1.51.0.
-
0.4.004 Sep 2021Release notes
Open source →Added
PartialEqimplementation forSlaveAddr.
Changed
- [breaking-change] Remove
Defaultderive forEeprom24x.
Technically a breaking change but it should not affect anybody.
Release notes
Open source →Added
PartialEqimplementation forSlaveAddr.
Changed
- [breaking-change] Remove
Defaultderive forEeprom24x. Technically a breaking change but it should not affect anybody.
-
0.3.020 Jan 2019Release notes
Open source →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.
Release notes
Open source →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.
- [breaking-change] The addresses are now passed as a single
-
0.2.120 Jan 2019Release notes
Open source →Removed
- [breaking-change] Removed support for devices that use some device address
bits for memory addressing:24x04,24x08,24x16,24xM01,24xM02as
the addressing was erroneous. Please upgrade to version0.3.0to use them.
Release notes
Open source →Removed
- [breaking-change] Removed support for devices that use some device address
bits for memory addressing:
24x04,24x08,24x16,24xM01,24xM02as the addressing was erroneous. Please upgrade to version0.3.0to use them.
- [breaking-change] Removed support for devices that use some device address
-
0.2.022 Nov 2018Release notes
Open source →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 becomeaddress: [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
Eeprom24xstruct. Now it
is a marker type for the page size instead of the device name.
Release notes
Open source →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 becomeaddress: [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
Eeprom24xstruct. Now it is a marker type for the page size instead of the device name.
-
0.1.122 Aug 2018Release notes
Open source →Fixed
- Disallow setting a different slave address through
SlaveAddr::Default.
- Disallow setting a different slave address through
-
0.1.018 Aug 2018Release notes
Open source →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