Forum: Compiler & IDEs Windows - CP2012 USB to UART Bridge Controller


von Michael (oti)


Lesenswert?

Stehe nun auf dem Schlauch. Habe wieder begonnen ein ESP-Projekt 
umzusetzen, um mich mit der Hausautomatisierung zu beschäftigen. Auf 
meiner Synology läuft HomeAssistent, das erste Dashboard ist mit den 
AVM-Geräten gelungen und nun soll es weitergehen.
Mein letztes Projekt, seit 2019 nichts mehr angefasst, war eine 
Kellerentlüftung mit einem ESP8266 browsergesteuert. Da ich einen neuen 
Rechner habe, habe ich heute die Arduino IDE installiert, die Boardlinks 
für den ESP8266 und den ESP32 sowie den Treiber CP2012 USB to UART 
Bridge Controller von Silicon Labs. Das funktioniert auch soweit alles, 
auch der Comport wird zugewiesen und kann auch ausgewählt werden. Die 
IDE gibt mir für die ESP8266 und die verschiedenen ESP32 immer 
unbekanntes Board aus mit folgenden Fehlermeldungen aus.
VID 0x10C4 PID 0xEA60
VID 0x1a86 PID 0x55d4
VID 0x1a86 PID 0x7523
Bei Silicon Labs gibt es den Tipp die Windows Dienste „Remote Procedure 
Call (RPC)“ und „DCOM Server Process Launcher“ zu kontrollieren und 
gegeben Falls zu aktivieren. Beide liefen Bei mir.
Schließe ich einen Arduino UNO (Kumatech) an, wird ein neuer Treiber 
installiert und das Board auch über die DIE erkannt und seine Infos 
ausgegeben.

Habe auf 2 Rechner das gleiche Ergebnis. 1 Rechner Windows 10-64bit, der 
andere Windows 11-64bit. Soweit ich mich erinnere, gab es früher einen 
CH340-Treiber, den ich aber nirgendwo mehr finde. Das währe nun mein 
nächster Versuch.
Hat jemand von Euch eine Idee oder einen Link?
Danke und schönes WE.

Nachtrag: Habe nun Blink-Sketch hochgeladen, das funktioniert auch. D,h. 
das Board kann gehändelt werden. Wird aber nicht erkannt. VID 1034 
unbekanntes Board.

: Bearbeitet durch User
von C-hater (c-hater)


Lesenswert?

Michael schrieb:

> Die
> IDE gibt mir für die ESP8266 und die verschiedenen ESP32 immer
> unbekanntes Board aus mit folgenden Fehlermeldungen aus
> VID 0x10C4 PID 0xEA60
> VID 0x1a86 PID 0x55d4
> VID 0x1a86 PID 0x7523

Schwachsinnige IDE! Zumindest schwachsinnig formulierte Fehlermeldung. 
Vermutlich will sie irgendeinen der duch VID/PID definierten Chips 
sehen, findet aber keinen davon. Was sie sehen will, ist entweder ein 
CP210x oder ein CH9102F oder ein CH340.

Was du von diesen dreien tatsächlich dran hast, kann dir der 
Gerätemanager verraten (auch ohne vorhandenen Treiber). Damit weisst du 
dann, welchen Treiber du brauchst.

So einfach ist das.

von Michael (oti)


Lesenswert?

Danke für die Antwort, so einfach ist es nun doch nicht.
Mein Nachtrag war: Habe nun Blink-Sketch hochgeladen, das funktioniert 
auch. D,h. das Board kann gehändelt werden. Wird aber nicht erkannt. VID 
1034
unbekanntes Board.
Schlußfolgerung: Treiber muss installiert sein, zeigt ja auch der 
Gerätemanager.
Auf die Idee mit dem Sketch kam ich, da die alte ArduinoIDE mir bei der 
Fehlermeldung in der letzten Zeile anzeigte: Laden Sie einen Sketch 
hoch.
Den benötigten Treiber hatte ich ja installiert, genau den CP210x.
Zumindest habe ich Erkenntnisgewinn, dass die Angabe VID/PID 
offensichtlich einen Chip definiert.
Könnte mich ja damit zufrieden geben, dass ich auf die MCU nun zugreifen 
kann. Trotzdem nervt die Fehlermeldung, denn ich hätte natürlich gern 
gewußt, welches Board.

Naja, schade, dass Dein Beitrag nicht weiterhalf.

von Michael U. (amiga)


Lesenswert?

Hallo,

Michael schrieb:
> Könnte mich ja damit zufrieden geben, dass ich auf die MCU nun zugreifen
> kann. Trotzdem nervt die Fehlermeldung, denn ich hätte natürlich gern
> gewußt, welches Board.
Dann mußt Du wohl auf das Board schauen...
Die IDE kann nur anzeigen, was sie erkennt. Eine USB-Bridge ist erstmal 
kein ESP8266/ESp32 o.ä. Wenn sie einen ESP32 mit nativem USB erkennt, 
wird sie das auch verraten. War bei den AVR auch schon so, nur die 
USB-AVR konnten identifiziert werden.

Gruß aus Berlin
Michael

von Harald K. (kirnbichler)


Lesenswert?

Michael schrieb:
> Zumindest habe ich Erkenntnisgewinn, dass die Angabe VID/PID
> offensichtlich einen Chip definiert.

Würdest Du die VID/PID-Kombination zeigen, die der Gerätemanager für 
Dein Board anzeigt, könnte man Dir auch sagen, was exakt für eine 
USB-Seriell-Bridge auf Deinem Board verbaut ist.

Daß der Versuch, Deiner Software, trotz installiertem Treiber noch im 
VID/PID-Gestrüpp herumzuwurschteln, recht sinnlos ist, steht auf einem 
anderen Blatt, aber das rührt daher, daß deren Entwickler versuchen, es 
dem Anwender möglichst leicht zu machen (womit sie offenkundig oft das 
Gegenteil erreichen) ...

von C-hater (c-hater)


Lesenswert?

Harald K. schrieb:

> Würdest Du die VID/PID-Kombination zeigen, die der Gerätemanager für
> Dein Board anzeigt, könnte man Dir auch sagen, was exakt für eine
> USB-Seriell-Bridge auf Deinem Board verbaut ist.
>
> Daß der Versuch, Deiner Software, trotz installiertem Treiber noch im
> VID/PID-Gestrüpp herumzuwurschteln, recht sinnlos ist, steht auf einem
> anderen Blatt, aber das rührt daher, daß deren Entwickler versuchen, es
> dem Anwender möglichst leicht zu machen (womit sie offenkundig oft das
> Gegenteil erreichen) ...

Nunja, die genaue Formulierung der Meldung hat der TO ja nicht geposted, 
sondern nur das, was er glaubte davon verstanden zu haben...

Inzwischen sagt er garnix mehr, scheint also doch nach den Hinweisen zu 
einer Lösung gekommen zu sein. Will aber nicht zugeben, daß er einfach 
vollkommen inkompetent war...

von Michael (oti)


Lesenswert?

Michael U. schrieb:
> Hallo,
>
> Michael schrieb:
>> Könnte mich ja damit zufrieden geben, dass ich auf die MCU nun zugreifen
>> kann. Trotzdem nervt die Fehlermeldung, denn ich hätte natürlich gern
>> gewußt, welches Board.
> Dann mußt Du wohl auf das Board schauen...
> Die IDE kann nur anzeigen, was sie erkennt. Eine USB-Bridge ist erstmal
> kein ESP8266/ESp32 o.ä. Wenn sie einen ESP32 mit nativem USB erkennt,
> wird sie das auch verraten. War bei den AVR auch schon so, nur die
> USB-AVR konnten identifiziert werden.
>
> Gruß aus Berlin
> Michael

thx, die Boards habe ich identifiziert (nur mit Lupe mir möglic). 
Gemeint habe ich, dass die IDE mir das Board ausgibt. Daran scheitert es 
aber. Gucke ich nächste Woche mal, ob es bei Silicon Support gibt. Ist 
hier (bei unseren Bienen ein bisschen schwierig mit dem Internet, sind 
in der Wildnis, Wasser aus der Quelle mit Eimer, Plumpsklo ....).
schönen Sonntag
Michael

von Michael (oti)


Angehängte Dateien:

Lesenswert?

Harald K. schrieb:
> Michael schrieb:
>> Zumindest habe ich Erkenntnisgewinn, dass die Angabe VID/PID
>> offensichtlich einen Chip definiert.
>
> Würdest Du die VID/PID-Kombination zeigen, die der Gerätemanager für
> Dein Board anzeigt, könnte man Dir auch sagen, was exakt für eine
> USB-Seriell-Bridge auf Deinem Board verbaut ist.
>
> Daß der Versuch, Deiner Software, trotz installiertem Treiber noch im
> VID/PID-Gestrüpp herumzuwurschteln, recht sinnlos ist, steht auf einem
> anderen Blatt, aber das rührt daher, daß deren Entwickler versuchen, es
> dem Anwender möglichst leicht zu machen (womit sie offenkundig oft das
> Gegenteil erreichen) ...

thx. Der Gerätemanager zeigt Silicon Labs CP210x USB to UART Bridge: 
Treiber silabser.sys Version 11.3.0.176 auf COM3. Board ist ein 
ESP8266MOD.

Habe nun mal Screenshot angehangen.
schönen Sonntag
Gruß

übrigens auf dem Board ist auch ein CP2102 DCL00X 1806+ verbaut.

: Bearbeitet durch User
von C-hater (c-hater)


Lesenswert?

Michael schrieb:

> Habe nun mal Screenshot angehangen.

Immer noch keinen von der Anzeige im Gerätemanager...

von Harald K. (kirnbichler)


Lesenswert?

Nun, die VID/PID-Kombination ist eine USB-UART-Bridge von SiLabs, nur 
steht die halt nicht in der Boardverwaltung des Arduino-Krams drin, und 
deswegen weiß der nicht, was das für ein Board ist.
Dazu muss man wohl die boards.txt anpassen und die Arduino-Umgebung dazu 
bringen, die Änderungen auch zu übernehmen.
Das geht wohl durch Löschen von 
%USERPROFILE%\AppData\Roaming\arduino-ide\
und einem Neustart der Arduino-IDE.

Was in der boards.txt stehen muss, steht hier:

https://arduino.github.io/arduino-cli/0.27/platform-specification/#boardstxt

von Michael (oti)


Lesenswert?

Danke Harald
das ist mir nun verständlich. Habe mir die boards.txt angesehen. Ist ja 
alles Klartext und dieses Board steht überhaupt nicht drin. Damuss ich 
auch nicht weiter suchen. Das Editieren ist mir zu aufwendig, aber auf 
den ersten Blick ausreichend auf der Arduinoseite erklärt.
Wünsche Dir gute Woche
Gruß

Thread kann geschlossen werden.

von Michael (oti)


Lesenswert?

C-hater schrieb:
> Michael schrieb:
>
>> Habe nun mal Screenshot angehangen.
>
> Immer noch keinen von der Anzeige im Gerätemanager...

wusste nicht, dass Du nicht lesen kannst und Bilder brauchst. Wer lesen 
kann ist halt im Vorteil.

Thrad kann geschlossen werden.

von Harald K. (kirnbichler)


Lesenswert?

Michael schrieb:
> Ist ja
> alles Klartext und dieses Board steht überhaupt nicht drin.

Ist denn das Board --bis auf die verwendete USB-Seriell-Bridge-- nicht 
eines der üblichen Standardboards?

von Michael (oti)


Angehängte Dateien:

Lesenswert?

Harald K. schrieb:
> Michael schrieb:
>> Ist ja
>> alles Klartext und dieses Board steht überhaupt nicht drin.
>
> Ist denn das Board --bis auf die verwendete USB-Seriell-Bridge-- nicht
> eines der üblichen Standardboards?

ja ist ein standard board. ESP8266MOD. Generic ESP8266 Module in IDE 
ausgewählt. Dieser String ist in der board.txt nicht vorhanden. Wenn ich 
das richtig sehe, sieht die Struktur für diese Bridge so aus:

############ (neue Boarddefinition
XIAO_ESP32C3.name=XIAO_ESP32C3
XIAO_ESP32C3.vid.0=0x2886
XIAO_ESP32C3.pid.0=0x0046

d.h. die erste Zeile definiert den Boardnamen, die beiden anderen die 
Parameter für die Bridge. Danach folgen die techn. Details und 
Programmierumgebung des Boards.

Hier noch ein Beispiel
########################
esp32s3.name=ESP32S3 Dev Module
esp32s3.vid.0=0x303a
esp32s3.pid.0=0x1001

Zum Schluss noch ein Arduino Uno WEMOS
############
d1_uno32.name=WEMOS D1 R32
d1_uno32.bootloader.tool=esptool_py

IDE compiliert auch vernünftig, wählt das richtige Board, erkennbart an 
der Statusanzeige (s. Screenshot).

Bin nun dabei das mit Visual Studio Code nachzuvollziehen. Damit hatte 
ich früher gearbeitet. Arduino ging nur schneller, da ich eine alte 
portable Installation hatte und war auch nur dazu gedacht, wieder 
einzukommen.

Gruß M.

von Michael (oti)


Angehängte Dateien:

Lesenswert?

Harald K. schrieb:
> Nun, die VID/PID-Kombination ist eine USB-UART-Bridge von SiLabs, nur
> steht die halt nicht in der Boardverwaltung des Arduino-Krams drin, und
> deswegen weiß der nicht, was das für ein Board ist.
> Dazu muss man wohl die boards.txt anpassen und die Arduino-Umgebung dazu
> bringen, die Änderungen auch zu übernehmen.
> Das geht wohl durch Löschen von
> %USERPROFILE%\AppData\Roaming\arduino-ide\
> und einem Neustart der Arduino-IDE.
>
> Was in der boards.txt stehen muss, steht hier:
>
> https://arduino.github.io/arduino-cli/0.27/platform-specification/#boardstxt

hi Harald
nun zum Schluss VSC kennt Schnittstelle
lg

von Alexander (alecxs)


Lesenswert?

Soweit ich mich erinnere hast Du das Problem mit Arduino 1.8.19 nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.