idf-external-hw-drivers

An assortment of drivers compatible with ESP IDF developed, tried, and qualified as working

https://github.com/adithya-187326/idf-external-hw-drivers

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.0%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

An assortment of drivers compatible with ESP IDF developed, tried, and qualified as working

Basic Info
  • Host: GitHub
  • Owner: Adithya-187326
  • License: mit
  • Language: C
  • Default Branch: main
  • Size: 54.7 KB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created about 1 year ago · Last pushed 11 months ago
Metadata Files
Readme License Citation

README.md

idf-external-hw-drivers

A curated and standards-compliant collection of external hardware driver libraries for ESP32 microcontrollers, written using the ESP-IDF framework.

Developed and maintained by Adithya Venkata Narayanan


🎯 Purpose

This repository aims to serve as a high-quality reference for drivers interfacing with common I2C, SPI, UART, and USB-based peripherals using ESP-IDF. These drivers are not added all at once — they are developed organically, as I encounter and work with these devices during the course of my job or personal technical pursuits.

My goal is to ensure that others do not need to repeat the same low-level integration efforts when working with the same devices.


✅ Code Quality and Standards

  • ✳️ SEI CERT-C compliant: Code adheres to secure and portable C standards.
  • 🚫 No deprecated APIs: All code uses current, supported ESP-IDF APIs.
  • 📚 Modular design: Each device is isolated and easily pluggable.
  • 🧪 Strict build checks: Compiler warnings are treated as errors using -Werror.

📦 Device Support

Devices are added only when I work with them, ensuring that each integration is real-world tested and meaningful.

| Device | Protocol | Status | Notes | | ------- | ---------- | -------------- | -------------------- | | BME280 | I2C | ✅ Available | Environmental sensor | | MCP3008 | SPI | ⚙️ In progress | ADC | | TBD | UART / USB | ⏳ Planned | Future drivers |

If you use a supported device, you can be confident it has been tested in an actual use case.


🛠️ Getting Started

📋 Requirements

  • ESP-IDF v5.x
  • ESP32-series microcontroller board
  • Familiarity with ESP-IDF and embedded development workflows

📂 Repository Structure

idf-external-hw-drivers/ ├── <device_name_1>/ │ ├── include/ │ ├── src/ │ └── example/ ├── <device_name_2>/ ├── <device_name_3>/ ├── <device_name_4>/ ├── LICENSE ├── NOTICE ├── README.md └── CITATION.cff

🚀 Example Usage

For devices including a self-contained example project in its example/ directory.

bash cd devices/bme280/example idf.py set-target esp32 idf.py build idf.py -p /dev/ttyUSB0 flash monitor


📄 License

This project is licensed under the MIT License.

Please see the NOTICE file for attribution and citation guidelines.

📖 Citation

If this repository contributes to your work, please cite it as:

```kotlin Adithya Venkata Narayanan. idf-external-hw-drivers: Modular ESP-IDF drivers for external devices. GitHub, 2024. https://github.com/Adithya-187326/idf-external-hw-drivers

```

You may also use the CITATION.cff file or GitHub’s "Cite this repository" feature.


📬 Contact

For questions, feedback, or collaboration opportunities, please open an issue or contact me via GitHub.

Owner

  • Name: Adithya Venkata Narayanan
  • Login: Adithya-187326
  • Kind: user
  • Location: India
  • Company: Robotics and Machine Intelligence Club, NIT Trichy

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it using the following metadata."
title: "idf-external-hw-drivers"
authors:
  - family-names: Venkata Narayanan
    given-names: Adithya
date-released: 2024-01-01
version: 1.0.0
license: MIT
url: https://github.com/Adithya-187326/idf-external-hw-drivers
repository-code: https://github.com/Adithya-187326/idf-external-hw-drivers
# doi: 10.5281/zenodo.

GitHub Events

Total
  • Member event: 1
Last Year
  • Member event: 1