# CP2112 USB-C zu I2C SMBus Bridge Modul

**SKU:** SER572
**Brand:** CJMCU
**Price:** 10,00 EUR
**Availability:** in stock
**URL:** https://electronics.semaf.at/CP2112-USB-C-zu-I2C-SMBus-Bridge-Modul

## Specifications

| Attribute | Value |
|---|---|
| Weight (kg) | 0.2 |

Treiberloses USB-C zu I2C SMBus Debugmodul auf Basis des Silicon Labs CP2112, 3,3 V, 8 GPIOs.

## Description

### CP2112 USB-C zu I2C SMBus Brückenmodul – treiberfrei, 8 GPIOs, 1,8 bis 3,3 V I/O

Wer einen I2C Sensor direkt vom Laptop aus ansprechen, ein SMBus Gerät debuggen oder schnell einen Prototypen ohne Mikrocontroller Firmware in Betrieb nehmen will, greift zum CP2112. Das Modul basiert auf dem **Silicon Labs CP2112** – einem Single Chip HID USB to SMBus Bridge Controller im 4 × 4 mm QFN 24 Gehäuse – und macht ihn per USB-C Anschluss für jeden Rechner zugänglich. Das Betriebssystem erkennt das Board als Standard HID Gerät: kein Kernel Treiber, kein INF File, kein Neustart nötig.

### Hardware und Architektur

Der `CP2112` integriert USB 2.0 Full Speed Controller, USB Transceiver, 48 MHz Oszillator und Spannungsregler auf einem einzigen Die. Externe Quarz oder Abschlusswiderstände für die USB Leitungen entfallen vollständig. Der interne Regler liefert 3,45 V am VDD Ausgang und kann externe Schaltungsteile mit bis zu 100 mA versorgen – genug für typische Sensor Breakouts.

- **USB 2.0 Full Speed (12 Mbit/s)** mit integriertem Transceiver – keine externen Widerstände an D+ und D−, das Board ist sofort einsatzbereit.
- **I2C und SMBus Master** mit konfigurierter Taktfrequenz von 10 kHz bis 400 kHz – deckt Standard Mode, Fast Mode und die meisten SMBus Geräte ab.
- **512 Byte SMBus Lesepuffer** – Lesetransaktionen bis 512 Byte am Stück möglich; Schreibtransaktionen sind durch das HID Protokoll auf 61 Byte pro Übertragung begrenzt.
- **8 GPIOs** konfigurierbar als Eingang, Open Drain oder Push Pull Ausgang, I/O Spannung per VIO Pin einstellbar von 1,8 V bis VDD – direkte Verbindung zu 1,8 V Systemen ohne Level Shifter möglich.
- **Konfigurierbarer Taktausgang** an `GPIO.7` von 94 kHz bis 48 MHz (Teiler 1–255 nach Formel 48 MHz / (2 × Teiler)) – nützlich als Taktquelle für externe ICs im Laboraufbau.
- **194 Byte OTP ROM** zur einmaligen Anpassung von USB Vendor ID, Product ID und Gerätebezeichnung – für OEM Integrationen ohne eigene VID/PID Lizenz direkt nutzbar.

### Anschlüsse und Workbench Einsatz

Die Platine führt die I2C Signale `SDA`, `SCL`, `GND` sowie 3,3 V und 5 V Versorgung über einen 2,54 mm Stiftleisten Header heraus – standardkompatibel mit Dupont Kabeln und Breadboard. Der USB-C Anschluss übernimmt sowohl Datenübertragung als auch Stromversorgung aus dem Host; ein separates Netzteil ist im USB Bus Betrieb nicht erforderlich. Onboard sind 4,7 kΩ Pull Up Widerstände auf SDA und SCL gegen 3,3 V verbaut, sodass externe Pull Ups in den meisten Setups entfallen.

Die I/O Logikpegel werden über den `VIO` Pin gesetzt. Wird VIO direkt mit VDD verbunden (Jumper oder Lötbrücke), arbeiten alle GPIOs und I2C Leitungen auf 3,3 V – kompatibel zu Raspberry Pi, STM32 und den meisten modernen Sensoren. Für 1,8 V Systeme legt man VIO an die externe 1,8 V Schiene; die GPIO Pins sind laut Datenblatt bis 5,8 V tolerant im Open Drain Modus, sodass auch 5 V Peripherie über externe Pull Ups angebunden werden kann. Stromversorgung im USB Bus Betrieb: 4,0 bis 5,25 V an REGIN; im selbstversorgten Betrieb 3,0 bis 3,6 V direkt an VDD.

### Praxis Tipps und Stolperfallen

Der größte Stolperstein im Alltag ist das **61 Byte Schreiblimit** pro HID Transaktion. Wer ein EEPROM seitenweise beschreiben oder ein Display mit langen Befehlen initialisieren will, muss die Nutzdaten in Blöcke von maximal 61 Byte aufteilen. Lesevorgänge sind davon nicht betroffen – bis zu 512 Byte in einem Zug. Zero Length Transfers werden vom Treiber nicht unterstützt und erzeugen einen Fehler.

Ein weiterer Punkt: Die GPIO Konfiguration liegt nicht im OTP ROM, sondern im flüchtigen RAM des Chips. Nach jedem USB Reset oder Reconnect sind alle acht GPIO Pins wieder als Eingang konfiguriert und müssen per API neu gesetzt werden. Wer GPIO Zustände beim Start braucht, muss die Initialisierungssequenz im Host Software Startup fest einbauen. Auf Linux ist der Treiber `hid-cp2112` im Kernel enthalten (seit 3.13); auf Windows und macOS genügt das HID Class Framework des Betriebssystems, kein Treiber Download notwendig.

Zur Konfiguration von VID, PID und Gerätebeschreibung im OTP ROM dient der Xpress Configurator in Simplicity Studio. Achtung: Der VPP Pin benötigt für die ROM Programmierung einen 4,7 µF Kondensator gegen GND – auf diesem Breakout in der Regel bereits bestückt. Wird während einer Programmiersession VIO unter 3,3 V abgesenkt, schlägt der Schreibvorgang still fehl. Den Betriebstemperaturbereich gibt Silicon Labs mit −40 bis +85 °C an.

Weiterführende Dokumentation: [CP2112 Datenblatt (Silicon Labs)](https://www.silabs.com/documents/public/data-sheets/cp2112-datasheet.pdf) · [AN495 – CP2112 Interface Specification (HID Protokoll)](https://www.silabs.com/documents/public/application-notes/an495-cp2112-interface-specification.pdf) · [AN496 – HID zu SMBus API Spezifikation](https://www.silabs.com/documents/public/application-notes/AN496.pdf)
