Hallo Leute, ich hab vor einiger Zeit ein kleines USB-basiertes Messinterface (für Temperatur, Impulszähler o.ä.) gebaut, das auch sehr gut funktioniert. Die VCP-USB-Implementierung hab ich von Stefan F.s Webseite, und hab die auch mit eurer Hilfe erfolgreich zum Laufen gebracht. Danke dafür!!! (Beitrag "STM32 USB init problem mit Kompaktcode von W.S." ). In einer Anwendung hab ich jetzt mehrere (gerne 10+) von diesen kleinen Boards an einem PC laufen. Jedes Modul schickt etwa im Sekundentakt ein Datum mit ca. 40 Bytes. Die Stromaufnahme der einzelnen Module ist minimal, grad was der STM32F042 benötigt. Wenn ich mehr als 5 Module an einem USB Port (via aktivem oder passivem Hub) anschließe, hab ich Probleme: - manche Module melden sich nicht am PC an, - wenn ich sie der Reihe nach einstecke geht z.B. das 6te Modul gelegentlich nicht mehr. - im Betrieb fällt die Kommunikation mit manchen Modulen aus (kein Datentransfer am VCP mehr. - manchmal gehen auch 6 Module über längere Zeit gut.. Hat jemand eine Ahnung, an was das liegen könnte? Meine Möglichkeiten tief in das USB-Geschehen einzutauchen sind (wegen unzureichendem USB-Knowhow) beschränkt, ich hab daher keine große Ahnung wo ich da zu Suchen anfangen sollte...
ne Gegenfrage: hast du deinen vielen Devices auch unterschiedliche Seriennummern gegeben? Das macht man in den Strings, die beim Enumerieren vom Host helesen werden. W.S.
Hallo W.S. Asche auf mein Haupt, natürlich nicht !! :-0 Ich nehme an du meinst den [c] const byte StringSerial[26] = { [\c] ... in usb.c, oder? Da ist es ja fast verwunderlich, dass es überhaupt mit 2 Devices funktioniert...
nun Seriennummern sind bei CDC nicht unbedingt notwendig aber hilfreich. Ohne diese wird jedes mal beim Enumerieren ein neuer Comport angelegt. Das ist bei so vielen Devices schon mal ein Problem. Ich will gar nicht wissen wie deine Registry inzwischen aussieht. Wie viele Comports kann win überhaupt? 255? Ohne SN am besten abgeleitet von einer Chip UUID wirst du Probleme bekommen. Die Registry bzw PNF Dateien wirst du aufräumen müssen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.