# esp-hal
- There are quite a few drivers that need serious help, IMO:
- ADC
- https://github.com/esp-rs/esp-hal/issues/326
- https://github.com/esp-rs/esp-hal/issues/449
- https://github.com/esp-rs/esp-hal/issues/902
- https://github.com/esp-rs/esp-hal/issues/1203
- DMA
- https://github.com/esp-rs/esp-hal/issues/489
- https://github.com/esp-rs/esp-hal/issues/954
- https://github.com/esp-rs/esp-hal/issues/1235
- https://github.com/esp-rs/esp-hal/issues/1245
- GPIO
- https://github.com/esp-rs/esp-hal/issues/561
- https://github.com/esp-rs/esp-hal/issues/740
- https://github.com/esp-rs/esp-hal/issues/745
- Interrupts
- https://github.com/esp-rs/esp-hal/issues/1063
- https://github.com/esp-rs/esp-hal/issues/1162
- Some others probably need less help, but should still be improved as much as possible:
- UART
- https://github.com/esp-rs/esp-hal/issues/944
- https://github.com/esp-rs/esp-hal/issues/989
- https://github.com/esp-rs/esp-hal/issues/1181
- https://github.com/esp-rs/esp-hal/issues/1216
- I2C
- https://github.com/esp-rs/esp-hal/issues/910
- https://github.com/esp-rs/esp-hal/issues/1271
- https://github.com/esp-rs/esp-hal/issues/1306
- SPI
- https://github.com/esp-rs/esp-hal/issues/469
- https://github.com/esp-rs/esp-hal/issues/489
- https://github.com/esp-rs/esp-hal/issues/954
- All of the above peripherals need to have their public APIs reviewed and improved:
- APIs should NOT be reliant on third-party trait packages
- APIs should be consistent (moslty with regards to conventions)
- APIs should be simple, easy to use, hard to screw up, and well documented
- We need to start addressing other technical debt as well (boo, no fun, I know)
- https://github.com/esp-rs/esp-hal/issues/1082
- https://github.com/esp-rs/esp-hal/issues/1123
- https://github.com/esp-rs/esp-hal/issues/1166
- https://github.com/esp-rs/esp-hal/issues/1194
- https://github.com/esp-rs/esp-hal/issues/1203 (isn't this an ADC issue? ... ah yeah it is and it's listed there ... probably we can remove it from this section)