74 lines
4.3 KiB
Markdown
74 lines
4.3 KiB
Markdown
# Changelog
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [Unreleased]
|
|
|
|
## [0.6.0] - March 21st, 2025
|
|
- [breaking] The driver now uses v0.9 of embedded-nal [@reitermarkus](https://github.com/reitermarkus) ([#66](https://github.com/kellerkindt/w5500/pull/66))
|
|
- `DeviceState` is now publicly re-exported [@22dd5e2bdd](https://github.com/22dd5e2bdd) ([#65](https://github.com/reitermarkus))
|
|
|
|
## [0.5.0] - July 8th, 2024
|
|
|
|
### Changed
|
|
- [breaking] The driver now uses the v1.0 of the `embedded-hal` traits.
|
|
- [breaking] The `FourWireRef` bus and `DeviceRefMut` have been removed in favor of using
|
|
`embedded-hal-bus` to facilitate SPI bus sharing.
|
|
- [breaking] Updated to `embedded-nal` v0.8
|
|
|
|
### Added
|
|
|
|
- Add `defmt` features for enabling `defmt::Format` to most structs and errors by [@elpiel](https://github.com/elpiel) ([#39](https://github.com/kellerkindt/w5500/issues/39))
|
|
- Fixed an issue where internal function names were conflicting with trait names by [@ryan-summers](https://github.com/ryan-summers) ([#36](https://github.com/kellerkindt/w5500/issues/36))
|
|
- Add `RetryTime` and `RetryCount` common register methods to `Device` and `UninitializedDevice` by [@elpiel](https://github.com/elpiel) ([#54][PR54])
|
|
- Add `Udp::get_port` and `Udp::set_port` by [@elpiel](https://github.com/elpiel) ([#57](https://github.com/kellerkindt/w5500/pull/57))
|
|
- Add `RawDevice::enable_interrupts` (and `clear_interrupts`, `disable_interrupts`) for interrupt-driven MACRAW mode by [@pdh11](https://github.com/pdh11) ([#60](https://github.com/kellerkindt/w5000/pull/60))
|
|
|
|
### Fixed
|
|
|
|
- Fixed an issue that caused corruption when reading partial MACRAW frames by [@Felix-El](https://github.com/Felix-El) ([#47](https://github.com/kellerkindt/w5500/pull/47))
|
|
- Fixes `Udp` implementation to use the socket's ring buffers and include more `UdpSocketError` by [@elpiel](https://github.com/elpiel) ([#57](https://github.com/kellerkindt/w5500/pull/57))
|
|
|
|
## [0.4.1] - January 2nd, 2023
|
|
|
|
### Added
|
|
|
|
- Fix indexing for phy configuration register by [@Wassasin](https://github.com/Wassasin) ([#32](https://github.com/kellerkindt/w5500/issues/32))
|
|
- Add support for MACRAW operation mode by [@ryan-summers](https://github.com/ryan-summers) ([#33](https://github.com/kellerkindt/w5500/issues/33))
|
|
|
|
## [0.4.0] - January 22nd, 2022
|
|
|
|
### Added
|
|
- Add support for 3-wire SPI bus ([#15](https://github.com/kellerkindt/w5500/issues/15))
|
|
- Add constructors for network types ([#21](https://github.com/kellerkindt/w5500/issues/21))
|
|
- Add method to change PHY configuration ([#23](https://github.com/kellerkindt/w5500/issues/23))
|
|
- Add feature `no-chip-version-assertion` for compatible chips with unexpected version information
|
|
- Add `MacAddress::octets()`
|
|
- Add `impl From<[u8; 6]> for MacAddress`
|
|
- Add `Device::deactivate` and `InactiveDevice::activate`
|
|
- Add re-export of `FourWireError` and `ThreeWireError`
|
|
- Add `FourWireRef` to be able to use `Device` with borrowed SPI and CS
|
|
- Add `DeviceRefMut` to be able to use `Device` without moving ownership
|
|
- Add getter: `Device::{gateway,subnet_mask,mac,ip,version}`
|
|
- Restructure and implement embedded-nal UDP trais ([#26](https://github.com/kellerkindt/w5500/issues/26)) - big thanks to [@jonahd-g](https://github.com/jonahd-g)
|
|
- Add TCP client support ([#24](https://github.com/kellerkindt/w5500/issues/24)) - big thanks to [@ryan-summers](https://github.com/ryan-summers)
|
|
|
|
### Changed
|
|
- Updated dependencies ([#22](https://github.com/kellerkindt/w5500/issues/22))
|
|
- `Mode` fields are now publicly acessible
|
|
|
|
### Removed
|
|
- Cargo.lock ([#20](https://github.com/kellerkindt/w5500/issues/20))
|
|
- Replace `net::Ipv4Addr` with `embedded_nal::Ipv4Addr`
|
|
|
|
## [0.3.0] - June 10, 2020
|
|
|
|
### Breaking changes
|
|
- Require [`v2::OutputPins`](https://github.com/rust-embedded/embedded-hal/blob/9e6ab5a1ee8900830bd4fe56f0a84ddb0bccda3f/src/digital/v2.rs)
|
|
- [`OutputPin` is now taken by ownership](https://github.com/kellerkindt/w5500/blob/d02bbf7e5cc837e658671d1467305523136376cc/src/lib.rs#L131) instead of mut refs [#13](https://github.com/kellerkindt/w5500/issues/13)
|
|
|
|
### Changes
|
|
- Upgrade to Rust 2018 Edition
|
|
- Many doc updates, thanks @jonahbron
|