Releases: Rahix/port-expander
Releases · Rahix/port-expander
Version 0.6.2
Bugfix Version 0.5.1
Fixed
- Fixed non-totem-pole devices not having
embedded_hal::{InputPin, OutputPin}
implementations due to a superfluous trait bound. This fix was backported from 0.6.2.
Version 0.6.1
Version 0.6.0
Version 0.5.0
Added
- Support for
PI4IOE5V6408
(#17 by @t-moe). - Added support for enabling pull-up/down resistors for port expander input pins (#22 by @t-moe).
- Added public API to access the underlying port-expander of a pin (
pin.access_port_driver()
) and the register mask for the pin (pin.pin_mask()
) (#23 by @t-moe).
Changed
- BREAKING Moved to
embedded-hal
1.0 (#16 by @PixmaHestiia). - BREAKING Replaced
shared_bus::BusMutex
with our own customport_expander::PortMutex
trait (#26). If you need support for custom mutex types, you now need to implement the latter one for your mutex.
Version 0.4.1
Added
- Added support for
TCA6408A
(#12 by @PixmaHestiia). - Added support for
PCAL6408A
andPCAL6416A
(#13 by @Sympatron).
Version 0.4.0
Changed
- BREAKING Upgraded to
shared-bus
0.3.
Version 0.3.1
Version 0.3.0
Added
- Added support for
PCF8575
(#1 by @eivindbergem). - Added support for
PCA9538
. - Added
into_output_high()
for totem-pole output drivers. In contrast tointo_output()
this will immediately put the pin into a HIGH state, thus preventing a short glitch between setting direction and pin value (#3). - Added support for setting the polarity inversion of pins.
Changed
into_output()
for totem-pole output drivers now puts the pin into a LOW state without a glitch. Previously, it would leave the pin in whatever state it was last in (= most often the HIGH state) (#3).
Fixed
- Fixed
read_multiple()
andwrite_multiple()
not ensuring that all passed pins actually belong to the same port-expander chip (#4).
Version 0.2.1
Added
- Added the
write_multiple()
andread_multiple()
functions to set/get multiple pin-states in a single bus transaction.
Changed
- The internal
PortDriver
trait was redesigned to better fit its requirements.