The weekly driver initiative 路 Issue #39 路 rust-embedded/wg (original) (raw)
There's now a HAL published on crates.io: embedded-hal (Introduction blog post). 馃帀
To put it to test and to expand the crates.io ecosystem I'm starting the weekly driver initiative.
The goal is to release a new no_std, generic, embedded-hal
based driver crate every one or two
weeks. Driver crate here means a library crate that lets you interface an external component like a
digital sensor or a wireless transceiver. A driver release consists of (a) publishing a library
crate on crates.io (*) and (b) presenting your driver to the community via any means: a blog post,
a tweet, a reddit post, a u.r-l.o https://users.rust-lang.org post, etc.
(*) Make sure you tag your crate with the embedded-hal-driver
keyword!
If you'd like to participate leave a comment here stating the driver you'll be working on. If you
can post a link to the repo where the (WIP) driver code is or will be, even better! If you don't
have a personal blog to present your driver to the community you can do a guest post on my blog.
For a list of released and WIP drivers check the awesome-embedded-rust list. If you'd like your crate to be added to that list simply send a PR to that repo!
TODO (potentially):
These are components that @japaric has at hand:
- DHT22 - temperature + humidity sensor (1-wire)
ENC28J60 - ethernet controller (SPI)- HC-06 - bluetooth (AT)
- HC-12 - wireless transceiver (AT)
- HC-SR04 - ultrasonic sensor
L298N - Motor driver- NEO-6M - GPS (USART)
- NEO-M8N - GPS (USART)
- PCA9685 - 16 channel Servo driver (I2C)
- PCF8574 (+ 16x2 LCD) - 8-bit I/O expander (I2C)
- PN532 - NFC (SPI)
- RA-02 - Long-range Radio (SPI)
- SN65HVD230 - CAN
- SSD1306 - 128x64 OLED (I2C)
- Servomotor (?)
- WS2812B - smart LED
- nRF24L01 - wireless transceiver (SPI)