linux-embedded-hal
Implementation of the `embedded-hal` traits for Linux devices
0.4.1
5.9M downloads/mo
#4201 most downloaded on crates.io
rust-embedded/linux-embedded-hal
What this package is like to depend on
Last release 9 months ago
10 Nov 2025
Release timing varies
gaps range from 8 days to 1.8 years
Nearly every release is documented
notes for 9 of 9 stable releases
1 version withdrawn
withdrawn after publishing
9 years old
15 releases · first in 2018
1 release in the last 12 months
see the full history below
Release timeline
15 releases · Jan 2018 to Nov 2025Releases
latest 15-
0.4.110 Nov 2025Release notes
Open source →Fixed
- Fix UB (and remove unsafe block) in handling of
SpiOperation::TransferInPlace
Release notes
Open source →Fixed
- Fix UB (and remove unsafe block) in handling of SpiOperation::TransferInPlace
- Fix UB (and remove unsafe block) in handling of
-
0.4.012 Jan 2024Release notes
Open source →Changes since 0.4.0-alpha.4
Changed
- Updated to
embedded-hal1.0.0release (API changes) - Updated to
embedded-hal-nb1.0.0release (API changes)
Changes since 0.3.2
Changed
- Updated to
embedded-hal1.0.0release (API changes) - Updated to
embedded-hal-nb1.0.0release (API changes) - [breaking-change] Replace serial-rs with the serialport-rs crate.
Serial::opennow needs a baud-rate argument as well. - [breaking-change] Split
SpidevintoSpidevDeviceandSpidevBus, implementing the respectiveSpiDeviceandSpiBustraits (#100) - Modified
OutputPinbehavior for active-low pins to matchInputPinbehavior. - Set default features to build both sysfs and cdev pin types.
- Removed
Pinexport, useCdevPinorSysfsPin. - Updated to
spidev0.6.0release(API changes) - Updated to
i2cdev0.6.0release(API changes) - Updated to
gpio_cdev0.6.0release(API changes) sysfs_gpioto version0.6.1- Updated to
nix0.27.1 - Updated
nbto version1. - MSRV is now 1.65.0.
Fixed
Added
- Added feature flag for
spiandi2c - Mappings for
embedded-halerror kinds - Implement
embedded_hal::digital::blocking::IoPinforCdevPinandSysfsPin CountDownimplementation forSysTimer.Defaultimplementation forSysTimer.
Release notes
Open source →Changed
- Updated to
embedded-hal1.0.0release (API changes) - Updated to
embedded-hal-nb1.0.0release (API changes)
- Updated to
-
0.4.0-alpha.404 Jan 2024 pre-releaseRelease notes
Open source →Changed
- [breaking-change] Replace serial-rs with the serialport-rs crate.
Serial::opennow needs a baud-rate argument as well. - [breaking-change] Split
SpidevintoSpidevDeviceandSpidevBus, implementing the respectiveSpiDeviceandSpiBustraits (#100) - Updated to
embedded-hal1.0.0-rc.3release (API changes) - Updated to
embedded-hal-nb1.0.0-rc.3release (API changes) - Updated to
spidev0.6.0release(API changes) - Updated to
i2cdev0.6.0release(API changes) - Updated to
gpio_cdev0.6.0release(API changes) - Updated to
nix0.27.1 - MSRV is now 1.65.0.
Fixed
- Fix using SPI transfer with unequal buffer sizes (#97, #98).
- [breaking-change] Replace serial-rs with the serialport-rs crate.
-
0.4.0-alpha.305 Aug 2022 pre-releaseRelease notes
Open source →Added
- Added feature flag for
spiandi2c
Changed
- Updated to
embedded-hal1.0.0-alpha.8release (API changes)
Release notes
Open source →Added
- Added feature flag for
spiandi2c
Changed
- Updated to
embedded-hal1.0.0-alpha.8release (API changes)
- Added feature flag for
-
0.4.0-alpha.214 Feb 2022 pre-releaseRelease notes
Open source →Added
- Mappings for
embedded-halerror kinds
Changed
- Updated to
embedded-hal1.0.0-alpha.7release (significant API changes) - Updated dependencies to force use of newer nix version
spidevto version0.5.1i2cdevto version0.5.1gpio-cdevto version0.5.1sysfs_gpioto version0.6.1
Release notes
Open source →Added
- Mappings for
embedded-halerror kinds
Changed
- Updated to
embedded-hal1.0.0-alpha.7release (significant API changes) - Updated dependencies to force use of newer nix version
spidevto version0.5.1i2cdevto version0.5.1gpio-cdevto version0.5.1sysfs_gpioto version0.6.1
- Mappings for
-
0.4.0-alpha.107 Oct 2021 pre-releaseRelease notes
Open source →Added
- Implement
embedded_hal::digital::blocking::IoPinforCdevPinandSysfsPin CountDownimplementation forSysTimer.Defaultimplementation forSysTimer.
Changed
- Modified
OutputPinbehavior for active-low pins to matchInputPinbehavior. - Set default features to build both sysfs and cdev pin types.
- Removed
Pinexport, useCdevPinorSysfsPin. - Adapted to
embedded-hal1.0.0-alpha.5release. - Increased the Minimum Supported Rust Version to
1.46.0due to an update ofbitflags. - Updated
spidevto version0.5. - Updated
i2cdevto version0.5. - Updated
gpio-cdevto version0.5. - Updated
sysfs_gpioto version0.6. - Updated
nbto version1.
- Implement
-
0.4.0-alpha.029 Nov 2020 pre-releaseNothing published for this version
-
0.3.225 Oct 2021Release notes
Open source →Fixed
- Readd Pin type export as an alias to SysfsPin for compatibility with the 0.3.0 version.
Release notes
Open source →Fixed
- Readd
Pintype export as an alias toSysfsPinfor compatibility with the0.3.0version.
-
0.3.127 Sep 2021 withdrawnRelease notes
Open source →Added
- Added implementation of transactional SPI and I2C traits.
CountDownimplementation forSysTimer.Defaultimplementation forSysTimer.
Changed
- Set default features to build both sysfs and cdev pin types.
- Removed
Pinexport, useCdevPinorSysfsPin. - Updated
embedded-halto version0.2.6. - Updated
nbto version0.1.3. - Updated
gpio-cdevto version0.5. - Updated
i2cdevto version0.5. - Updated
spidevto version0.5. - Updated
sysfs-gpioto version0.6. - Updated
castto version0.3.
Fixed
- Modified
OutputPinbehavior for active-low pins to matchInputPinbehavior.
Release notes
Open source →Added
- Added implementation of transactional SPI and I2C traits.
CountDownimplementation forSysTimer.Defaultimplementation forSysTimer.
Changed
- Set default features to build both sysfs and cdev pin types.
- Removed
Pinexport, useCdevPinorSysfsPin. - Updated
embedded-halto version0.2.6. - Updated
nbto version0.1.3. - Updated
gpio-cdevto version0.5. - Updated
i2cdevto version0.5. - Updated
spidevto version0.5. - Updated
sysfs-gpioto version0.6. - Updated
castto version0.3.
Fixed
- Modified
OutputPinbehavior for active-low pins to matchInputPinbehavior.
-
0.3.003 Dec 2019Release notes
Open source →Added
- Added serial::Read/Write implementation.
- Added feature flag for Chardev GPIO
Fixed
- Do write and read in one transaction in WriteRead implementation.
- Removed #[deny(warnings)]
Changed
- Use embedded-hal::digital::v2 traits.
- Updated to i2cdev 0.4.3 (necessary for trasactional write-read).
- Updated to spidev 0.4
- Added feature flag for Sysfs GPIO
-
0.2.221 Dec 2018 -
0.2.129 Oct 2018Release notes
Open source →Added
- implementation of the unproven
embedded_hal::::digital::InputPintrait.
- implementation of the unproven
-
0.2.014 May 2018 -
0.1.113 Feb 2018Release notes
Open source →Added
-
implementation of
embedded_hal::blocking::Delay*traits in the form of theDelayzero sized type. -
implementation of the
embedded_hal::blocking::i2ctraits in the form of theI2cdevnewtype.
-
-
0.1.017 Jan 2018