All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Unreleased - ReleaseDate
0.7.2 - 2024-05-23
- Add feature
defmt-03
to derive "defmt::Format
" fromdefmt = "0.3"
for public types.
0.7.1 - 2024-05-02
- Add support for 24AA02xE48/E64 devices.
- Add
Debug
derive to markers.
0.7.0 - 2024-01-18
- [breaking-change] Transitioned the
embedded-storage
interface to use the newembedded-hal
DelayNs
trait instead of the oldCountDown
- [breaking-change] Transitioned
embedded-hal
to version 1.0 - Updated
embedded-storage
to version 0.3.1
0.6.1 - 2023-12-27
- Add support for 24CSx devices.
- Implement
read_unique_serial
for 24CSx devices.
0.6.0 - 2023-07-10
- Trait
Eeprom24xTrait
providing the device interface.
- Updated
embedded-storage
dependency to version 0.3. - Updated
nb
dependency to version 1.1. - Increase MSRV to version 1.60.0.
0.5.0 - 2022-01-20
- Add support for STM M24C01 and M24C02.
- Implement
embedded_storage::ReadStorage
andembedded_storage::Storage
traits.
- [breaking-change] Increase MSRV to version 1.51.0.
0.4.0 - 2021-09-04
PartialEq
implementation forSlaveAddr
.
- [breaking-change] Remove
Default
derive forEeprom24x
. Technically a breaking change but it should not affect anybody.
0.3.0 - 2019-01-20
- [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)
.
- 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.
0.2.1 - 2019-01-20
- [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 version0.3.0
to use them.
0.2.0 - 2018-11-22
- Add support for many more devices.
-
[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
Eeprom24x
struct. Now it is a marker type for the page size instead of the device name.
0.1.1 - 2018-08-22
- Disallow setting a different slave address through
SlaveAddr::Default
.
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.