Probleme mit USB-Erkennung bei Arudino Nano

Hallo alle miteinander,

momentan lasse ich eine GUI mit automatischer Erkennung schreiben, ob der Arduino angeschlossen ist. Mit einem original Arduino Uno funktioniert das einwandfrei, mit einem China-Nano natürlich nicht wegen dem komischen CH340 USB Chip. Nun habe ich mir zur Umgehung des Problems einen original Nano gekauft, da dieser dieses Problem ja nicht haben sollte, wegen dem FTDI-Chip.

Das Problem war nun, als ich den Original Arduino Nano eingesteckt habe, wurde dieser nur als FTDI-Irgendwas im Gerätemanager erkannt und nach Installation der Treiber ist dieser nun als USB Serial Port (COM12) deklariert. Das Hochladen der Sketches usw funktioniert auch einwandfrei, allerdings das brennen des bootloaders und die USB-Erkennung nicht. Kann mich vielleicht jemand unter seine Fetische nehmen und beim Lösen des Problems behilflich sein?

Edit: avrdude sagt mir folgendes Problem beim Brennen des Bootloaders:
avrdude: usbdev_open(): did not find any USB device "usb" (0x03eb:0x2104)

Vielen Dank im Voraus!

Du kannst nicht über USB den Bootloader brennen das geht nur über ISP mit einem ISP Programmierer oder einem Arduino mit dem ISP-Sketch.

Es ist richtig daß der PC den NANO als FTDI-irgendwas erkennt da der FTDI die USB Komunikation macht und deswegen seine Kennung am PC aufscheint. Das gleich müßte mit dem CH340 sein.

Jetzt weiß ich nicht was Du unter USB-Erkennung meinst.

Grüße Uwe

wurde dieser nur als FTDI-Irgendwas im Gerätemanager erkannt und nach Installation der Treiber ist dieser nun als USB Serial Port (COM12) deklariert

So ist es!

Wenn du den FTDI individualisieren möchtest, der hat dafür ein EEPROM an Board, wo du deine eigene PID VID und Seriennummer ablegen kannst.
Das gibts aber nicht geschenkt.

Hallo uwefed! Vielen Dank ersteinmal für deine Antwort. Mein GUI-Programmierer hat beim Start meines GUIs eine Abfrage eingebaut, ob der Arduino auch angeschlossen ist. Wie bereits berichtet, funktioniert es mit einem Uno ohne Probleme, mit einem Nano allerdings nicht. Hast du vielleicht eine Idee, wie ich auf des Rätsels Lösung komme?

LG cr4nkz

Wenns der GUI-Programmierer nicht vorgesehen hat dann gehts nicht.
Was sagt der Programmierer / Hersteller / Vertreiber der GUI dazu?
grüße Uwe

ps auch combie hat Dir geantwortet.

Kann man nicht z.B. über AVRdude die Controller-Signatur auslesen. Bei ISP geht es, bei USB-Seriell weiß ich es nicht.
Das Problem ist, dass die FTDI und Co.-Chips in allem möglichen eingebaut wird, wie z.B. USB-RS232-Adptern für alte Messgeräte. Du kannst nicht aus der Anwesenheit eines solchen Chips am USB-port auf das Vorhandensein eines Arduinos schließen.

Die PID und VID sind bekannt. Über diese erkennt der PC welches Device am USB hängt.

Grüße Uwe

Kann man nicht z.B. über AVRdude die Controller-Signatur auslesen.

Ja, das geht!

Aber dazu muss Avrdude den Bootloader über die Serielle ansprechen.
Und weiter helfen tut einem das dann immer noch nicht.

Ein Programm auf dem Nano, könnte allerdings sowas wie eine ID liefern.
Aber die COM Ports werden weiter gewürfelt.
Denn Windows kann die FTDI von hause aus nicht unterscheiden.

Die Alternative für den PC Anwendungs Programmierer

combie:
Ja, das geht!

Aber dazu muss Avrdude den Bootloader über die Serielle ansprechen.
Und weiter helfen tut einem das dann immer noch nicht.

Das doch schon. Man löst einen Reset aus, der Controller führt den Bootloader aus und meldet, hier ist ein 328 am seriellen Port->also hat man Uno, Nano und Co. Bei ID eines 2560 hätte man einen Mega vor sich. Es kommt nichts zurück, also kein Arduino angeschlossen. Es darf beim Auslesen nur nicht der aktuelle Sketch auf dem Controller gelöscht werden.

Es darf beim Auslesen nur nicht der aktuelle Sketch auf dem Controller gelöscht werden.

Das macht Avrdude sowieso nur mit Auftrag.

Aus eigener Erfahrung kann ich sagen, dass Programme, welche beim Aufruf auf allen angeschlossenen Arduinos einen Reset auslösen, echt nervig sein können.

Aber mir solls recht sein, jeder so wie er/sie/es mag...