Hallo alle zusammen,
ist es möglich, einen USB-Hub, welcher mit mehreren Arduinos verbunden ist, angeschlossen an den einem USB-Typ A des Arduino Mega's, über seriell mit den Clients zu kommunizieren.
Vielen Dank im Voraus!
Hallo alle zusammen,
ist es möglich, einen USB-Hub, welcher mit mehreren Arduinos verbunden ist, angeschlossen an den einem USB-Typ A des Arduino Mega's, über seriell mit den Clients zu kommunizieren.
Vielen Dank im Voraus!
Hat schon seinen Grund, warum UNO und Mega einen USB-B Stecker haben: Sie sind kein USB-Host.
Auch mit Kabel-Tricks kann man keine zwei einfach zusammenkoppeln.
(Falls es das ist, was du willst. Ist mir aber nicht ganz klar ...)
vielen Dank für deine Antwort, dann hat sich das wohl erledigt
michael_x:
Hat schon seinen Grund, warum UNO und Mega einen USB-B Stecker haben: Sie sind kein USB-Host.
Auch mit Kabel-Tricks kann man keine zwei einfach zusammenkoppeln.
(Falls es das ist, was du willst. Ist mir aber nicht ganz klar ...)
Du hast recht, dafür muss ein USB-Host her.
Wäre es dann machbar?
Was ist dir da aber nicht ganz klar?
Ich werkle zurzeit an einem Projekt, bei dem ich mit 3 Arduino minis, welche unterschiedliche Daten erfassen (wie z.B. Temperatur, ...) an einem Arduino Mega zentrall gesammelt werden. Beim Mega werden dann alle Daten über einem GSM-Modul weiter versendet.
Nimm doch I2C, das sollte funktionieren.
ja, an sowas habe ich auch schon gedacht, es ist aber für mein projekt nicht so richtig geeignet.
XandreasX0010:
ja, an sowas habe ich auch schon gedacht, es ist aber für mein projekt nicht so richtig geeignet.
Wieso ist I2C nicht geeignet ?
Ich kann mir nicht vorstellen, dass I2C nicht auch das erfüllt, was du mit USB machen willst.
Weil die einzelnen Arduino minis teils schon i2c bei den pins 4 und 5 belegen. Die maximale Adressen-Anzahl ist auch schon bei 2^3 begretzt. Die Möglichkeit der scalierung sollte vorhanden sein.
Wenn I2C tatsächlich nicht geht, was ich mir nicht vorstellen kann, dann nimm RS485.
mir bleiben aber für RS485 nur 2 serielle Schnittstellen übrig. Man kann es glaub ich auch als Bus betreiben.
SoftwareSeriell selber möchte ich nicht verwenden.
Was die Anzahl betrifft, an welchen USB Hub lassen sich 2^7 Geräte gleichzeitig anschließen? :-]
XandreasX0010:
.... Man kann es glaub ich auch als Bus betreiben....
Deswegen habe ich es vorgeschlagen.
Bei einem RS485 Bus muß man sich um die Arbitrierung kümmern, die bei I2C schon integriert ist. Hast Du Kontrolle darüber, wer senden soll? Falls nicht, käme Ethernet oder irgendeine Drahtlos-Verbinung in Frage, welche ebenfalls die Arbitrierung schon eingebaut hat.
Aber ich verstehe, daß I2C nicht sinnvoll benutzbar ist, wenn darüber schon die einzelnen Controller mit ihren eigenen Slaves kommunizieren, die dann alle an einem großen Bus hängen würden.
Ja, die Arbitrierung könne ein problem bei RS485 werden.
Habt ihr schon erfahrungen mit der Library ICSC (GitHub - MajenkoLibraries/ICSC: Inter-Chip Serial Communications) gemacht.
Bibliotheken für Software-I2C implementieren meist keine Arbitrierung und andere Feinheiten von I2C.