Connecting Devices via I²C



Hola amigos de los sistemas embebidos,

Our next social is scheduled for Tuesday the 28th of November 2023, at the usual place and time (7pm to 10pm). As before, we will be meeting at HackerGarage, with an open invitation for everyone to join us for some snacks and beers afterwards.

HackerGarage Calle Marsella 155-Int 105 A Colonia Americana, Lafayette 44160 Guadalajara, Jalisco

Before you read one: please join our WhatsApp channel via:

as well as our public GitHub Repository:

if you have not done so yet. Community-relevant information will be predominately distributed and discussed on the WhatsApp channel, and the repository is for everyone to upload and share projects and collaborate on ideas. (You'll also find slides and examples from previous ESG socials there.)

The topic/theme of this meetup is Connecting Devices via I²C. I²C is a bus standard and protocol that is extremely common in embedded systems and hardware engineering. It is used to connect, for instance, mini displays, analog-to-digital converters (ADCs), sensors of all kinds, memories, and much more. During this social, we will take a closer look at I²C and how the protocol is supported by common microcontrollers such as Arduino AVR and Raspberry Pico (RP2040). We will also go into a little more detail on implementing a driver for an I²C-controlled OLED display while outlining some of the typical design constraints, principles and challenges. So the social ought be interesting from both a hardware and software angle.

The following talks are planned: • Arduino: I²C Basics (30 mins + 15 mins Q&A) • Arduino: I²C Driver Implementation and Use (45 mins + 15 mins Q&A) • Mini-Workshop: Connecting an 128x64 OLED display (45 mins)

Juan Carlos Aries will help to facilitate the talks and workshop this time, together with the organizer (Frank Zeyda). In particular, showing us how to drive a mini display using CircuitPython on a Raspberry Pico board. Jose (Pepe) Ruiz may do a quick guest demonstration again using a logic analyzer to give us some insight into physical data transmission.

To participate in the mini-workshop, please bring your favorite prototyping MCU board to the social. Most platforms will have some support or library for I²C and we are glad to help you getting started.

Hope to see you there! Frank Zeyda

Microcontrollers Knowledge Sharing