Bernd M. schrieb:
Ich habe ein Arduino Nicla Sense ME Board. Unter Windows 10 wird es
erkannt, ich kann es mit der Arduino-IDE programmieren und mir die
Sensordaten über den virtuellen COM-Port liefern lassen. Auch auf einem
anderen Windows 10 PC ohne installierte Arduino-IDE wird das Board
erkannt, ein virtueller COM-Port erzeugt und ich kann mir die
Sensordaten über PuTTY ansehen.
Nun möchte ich die Sensordaten auch über einen alten Windows 7 Laptop
einlesen. Allerdings wird das Board hier nicht selbständig erkannt. Gibt
es einen Treiber dafür? Die VID des virtuellen COM-Ports ist 2341 und
die PID 0060. Seltsamerweise gibt es auch auf den beiden PCs, auf denen
das Board erkannt wird, keine *.inf-Datei mit dieser VID und PID. Oder
ist Windwos 7 schlicht und ergreifend zu alt?
Naja, es hatte halt noch keine Klassentreiber für USB-CDC. Warum auch immer, der vorhandene Treiber kann die Klasse ja schließlich handhaben. Es fehlt also nur ein bissel Logik bei der Geräteerkennung.
Aber sie fehlt halt. Man muß selber einen passenden "Treiber" bauen. Eigentlich nur eine passende *.inf. Wenn man eine Vorlage hat, dann erkennt man schnell, wo welche Strings zu ändern sind. Die passenden Strings für das noch nicht unterstützte Gerät kann man aus dem Gerätemanager fischen und dann halt dort reinschreiben. Zwingend geändert werden müssen nur die Sachen mit VID/PID. Oft ist es aber nützlich, auch noch ein paar andere zu ändern, damit die Anzeige im Gerätemanager etwas schicker und passender ist.
Dieser "Treiber" ist dann allerdings nicht signiert. Muss er für Windows7 aber auch nicht unbedingt sein. Da hat man noch die Wahl, auch unsignierte Treiber zu benutzen.
Ich hänge mal ein Teil an, das selber offensichtlich auch schon nach diesem Verfahren entstanden ist. Das kannst du deinerseits auch wieder als Vorlage für dein konkretes Gerät verwenden.