CP2102

Aus FHEMWiki
CP2102
CP2102 USB-Seriell-Wandler
Allgemein
Protokoll USB
Typ USB-Seriell-Wandler
Kategorie Other Components
Technische Details
Kommunikation USB
Kanäle unknown
Betriebsspannung 3,3V oder 5V DC
Leistungsaufnahme unknown
Versorgung USB
Abmessungen mehrere Varianten
Sonstiges
Modulname Diverse
Hersteller Silabs

Auf gängigen Marktplätzen werden eine Vielzahl von Geräten[1] angeboten, die als USB-Seriell-Wandler einen Baustein der Fa. Silabs anbieten. Sehr weit verbreitet sind insbesondere Modelle des Typs CP2102, der teilweise auch in Community-Projekten eingesetzt wird. Im Auslieferungszustand verwenden diese lediglich die Standard-Vendor- und Product-IDs, und werden daher im USB-System alle als 'usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0' eingebunden, so dass die Unterscheidung zwischen mehrerer solcher Devices nur über den physischen Anschluß erfolgen kann.

Einbindung in FHEM

Verwendet man neben einem solchen Gerät weitere USB-Schnittstellen anderer Hersteller, kann die Zuordnung wie in Tipp der Woche mit "by-id" beschrieben erfolgen. Kommen mehrere dieser Schnittstellen zum Einsatz, sollte man entweder auf "by-path" ausweichen, oder man nutzt den auf den Chips vorhandenen EEPROM, um z.B. eine eigene Herstellerkennung und/oder eine Seriennummer zu vergeben. Damit kann dann eine eindeutige Kennung vergeben werden.

Info blue.png
Dabei sollte nicht die VID oder PID verändert werden, Änderungen der Seriennummer oder der Produktkennung (product-string) sind jedoch gefahrlos möglich, ebenso die der Herstellerkennung (vendor-string), die allerdings ein --force-eeprom erfordert (Linux).


Windows

CP2102-Modul mit angelötetem HM-MOD-RPI-PCB

Der Hersteller Silabs bietet dazu als Teil des Treiberpakets ein Tool für Windows an[2].

Linux

Für Linux ist hier ein Tool beschrieben, mit dem sich die USB-Kennung verändern läßt. Leider ist die dort verwendete Python-Version nicht auf allen aktuellen Linuxen verfügbar; eine in C geschriebene (untetestete!) Alternative ist hier verfügbar[3].

Bekannte Probleme

3.3V werden überschritten

Es sind immer wieder Exemplare mit CP2102 im Umlauf, die nicht wie angegeben 3.3V an der Spannungsversorgung sowie den Signalpegeln liefern, sondern ca. 4.3V! Vor dem Verbinden mit Geräten wie dem HomeMatic Funkmodul für Raspberry Pi sollte daher geprüft werden, ob der interne Spannungswandler ordnungsgemäß funktioniert und wirklich nur 3.3V liefert.

Betroffen scheinen vor allem Micro-Module zu sein, wie das auf dem Bild rechts mit einer blauen Platine. Bei diesen kann man den Fehler nach dieser Anleitung beheben: Beitrag von PBudmark vom 08.07.2017.

Mod zur Herstellung der korrekten Spannung

Links