C I2c

Open-source C projects categorized as I2c

Top 19 C I2c Projects

  • esp8266-oled-ssd1306

    Driver for the SSD1306 and SH1106 based 128x64, 128x32, 64x48 pixel OLED display running on ESP8266/ESP32

  • hidapi

    A Simple cross-platform library for communicating with HID devices

    Project mention: Trying to get raw HID working to get vim modes to trigger qmk events and layers. | /r/olkb | 2023-05-20

    On the computer, write a program (the "host" or "server") that talks over the raw HID protocol. It is open ended how you do this, but IME both the Python pyhidapi and C hidapi were simple enough to get something started. The trickiest part might be getting the program to run with the permissions to talk the raw HID protocol (at least on Linux, there was some udev rule to set up). Read the documentation for these libraries for details about how to get set up.

  • Onboard AI

    ChatGPT with full context of any GitHub repo. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at app.getonboardai.com.

  • ssd1306

    Driver for SSD1306, SSD1331, SSD1351, IL9163, ILI9341, ST7735, PCD8544, Nokia 5110 displays running on Arduino/ESP32/Linux (Rasperry) platforms

  • buck50

    STM32F103 logic analyzer and more

    Project mention: STM32F103C8T6 USART. HELP PLEASE IDK WHATS GOING ON | /r/embedded | 2023-07-11

    From my experience, always check the hardware first. Are you wiring correctly, maybe your wire is too long. You should have a logic analyzer to debug these protocols. You can use another stm32 board as logic analyzer https://github.com/thanks4opensource/buck50 (there are lots of open source logic analyzers out there). If it shows dots, I guess your uart config is correct. Maybe your clock is wrong. Making a logic analyzer and watching the pulse will make it easier to debug further.

  • hydrafw

    HydraBus HydraFW official firmware for open source multi-tool for anyone interested in learning/developping/debugging/hacking/Penetration Testing for basic or advanced embedded hardware

    Project mention: Recommendations for general-purpose bus debuggers | /r/embedded | 2023-04-03
  • nf-interpreter

    :gear: nanoFramework Interpreter, CLR, HAL, PAL and reference target boards

  • AttinyStreamGfxApi

    Fast Graphics Library for Attiny85 and SSD1306 over I2c

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • USBMidiKliK4x4

    UMK4x4 - 4-16 in/out and 3-15 IN/3OUT USB MIDI interface for STM32F103 series board

    Project mention: Midi hub suggesyions | /r/synthesizers | 2023-06-29
  • Time-Circuits-Display

    Fully Featured Time Circuits Display

  • embedded-sht

    Embedded SHT Drivers for Sensirion Temperature and Humidity Sensors - Download the Zip Package from the Release Page

  • gfx_demo

    GFX Demo for Arduino and the ESP-IDF

  • embedded-sgp

    Embedded SGP Drivers for Sensirion Gas Sensors - Download the Zip Package from the Release Page


    C library to manage the GPIO header of the Nvidia Jetson boards

  • STM32-HAL-HD44780-16x2LCD

    A simple library for STM32 microcontrollers to drive 16x2 LCD displays based on the HD44780 controller

    Project mention: How can I effectively write, document and publish libraries for STM32 on Github? | /r/embedded | 2023-04-27

    I would also appreciate it if someone could check out my library and give some specific points I could work on and improve. Link to the library: https://github.com/Aditya-A-garwal/STM32-HAL-HD44780-16x2LCD

  • rpi-openwrt-packages

    This repo contains packages for wiringpi and i2ctools / python-smbus for use in OpenWRT / Raspberry Pi

  • bm8563

    Platform agnostic I2C driver for BM8563 RTC

  • TSL2561_STM32_Library

    TSL2561 library for STM32 microcontrollers.

  • AT24CX

    C library for AT24CX EEPROM I2C interface. Sample implementations for esp32 (esp-idf) and raspberry pi pico (PICO-SDK) included (by kimsniper)

    Project mention: Unable to write to AT24C32 I2C EEPROM with the C SDK | /r/raspberrypipico | 2023-04-16

    I am having issues writing to an AT24C32 EEPROM that I have using the C SDK and this library https://github.com/kimsniper/AT24CX. After digging a bit, I think it might be due to the fact that the code in at24cx_i2c_hal.c is written for the ESP32 (for example the import #include "driver/i2c.h", which doesnt exist in the Pico SDK) this makes most of the functions used in said file not exist. can anyone help translate this to the pi pico?

  • AVR-AtmegaXX-I2C-library-Old-

    I2C library used for most the sensors on my github.

  • WorkOS

    The modern API for authentication & user identity. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-07-11.

C I2c related posts


What are some of the best open-source I2c projects in C? This list will help you:

Project Stars
1 esp8266-oled-ssd1306 1,929
2 hidapi 1,421
3 ssd1306 609
4 buck50 538
5 hydrafw 326
6 nf-interpreter 288
7 AttinyStreamGfxApi 142
8 USBMidiKliK4x4 118
9 Time-Circuits-Display 94
10 embedded-sht 82
11 gfx_demo 70
12 embedded-sgp 56
14 STM32-HAL-HD44780-16x2LCD 11
15 rpi-openwrt-packages 7
16 bm8563 7
17 TSL2561_STM32_Library 1
18 AT24CX 0
19 AVR-AtmegaXX-I2C-library-Old- 0
The modern API for authentication & user identity.
The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.