Arduino 2040 als USB-Host oder Alternative?

OP #7245678
Lesenswert?

Moin,

Ich habe folgende Herausforderung: ich habe hier ein System mit einem 
Mikrocontroller, mit dem ich über den USB Port kommunizieren kann. Nun 
würde ich aber gerne daraus eine Funkstrecke machen, ohne etwas an dem 
System zu ändern. Am schönsten wäre es, einen Dongle zu bauen, der einen 
USB-Host fähigen kleinen Mikrocontroller beinhaltet und der dann die 
Daten über Bluetooth sendet. Allerdings gibt es hier wohl wenig 
Auswahlmöglichkeiten. Ich habe gesehen, dass der RP2040 USB-Host 
unterstützen soll, als „Nano RP2040 Connect“ würde der sogar alles 
mitbringen. Allerdings habe ich bisher wenig im Netz zu einer Umsetzung 
gesehen. Hat sich von Euch schon einmal jemand (erfolgreich) damit 
beschäftigt?
Oder kennt jemand ICs die man sonst zwischen die beiden USB Buchsen 
schalten könnte die eine Kommunikation ermöglichen?

Vielen Dank für Eure Hilfe!!!
#7245776
Lesenswert?

Ein schnurloses USB kannst du vergessen, das Timing gibt das nicht her.

Eine einigermaßen funktionierende Lösung ist ein Linux-Dings mit dem 
USB-Host, der das USB via IP auf einen PC bringt für den man dann einen 
Treiber braucht, der daraus einen virtuellen Hub macht.
Mit einem WLAN-"RPi" (kann auch was anderes sein, Hauptsache WLAN und 
USB und Linux) und auf der Hostseite z.B. virtualhere (siehe 
https://www.virtualhere.com/) klappt das einigermaßen. Ist instabil und 
langsamer, funktioniert aber.

Wenn jemand eine Alternative kennt: bitte, gern, ich suchte auch mal 
sowas.
#7245915
Lesenswert?

Dann wird das eine sehr spezifische Lösung, bei der der Adapter am Gerät 
Host ist und "der Gerät" auslesen und verstehen kann, die Daten dann via 
Funk an das andere Ende sendet und dort wieder ein USB-Device ist, das 
lügt das es "der Gerät" sei.
Das ist so besonders das es nicht kaufbar ist, und es ist sehr latent, 
d.h. der Device-Lüger muss nicht nur so tun als sei er der Gerät, 
sondern auch noch ab und an den echten Host hinhalten weil die Daten 
erst via Funk angefordert werden müssen.
OP #7245924
Lesenswert?

Jein, nicht ganz. Bei sehr individuell stimme ich Dir zu! Aber die Daten 
sollen einfach per Bluetooth an eine App geschickt werden, und da 
einfach angezeigt werden. Der jetzige Controller ist nur nicht 
Bluetooth-fähig. Und die einzige erreichbare Schnittstelle ist nun 
einmal die USB-Schnittstelle. Letzten Endes brauche ich ja “nur” einen 
Chip, der mir aus dem USB wieder eine Uart macht. Da könnte ich ja mit 
einem kleinen Arduino BLE die Daten dann weiterverarbeiten.
#7246167
Lesenswert?

Oz z. schrieb:
> Letzten Endes brauche ich ja “nur” einen
> Chip, der mir aus dem USB wieder eine Uart macht.

Aber der muss mit deinem Gerät reden können, also USB-Host sein und 
"einen Treiber" haben, also mit dem USB-Chip kommunizieren und die 
entsprechende Geräteklasse bedienen können.
Dann kann er die Daten da rausholen wie ein PC und dann nach Gusto 
weiterverarbeiten.

Das Ding was stefanus da gefunden hat ist ein Teil der Lösung: es 
übersetzt USB nach UART.
Aber doof: da kommen 400kBit/s roher Datenstrom raus, d.h. den Treiber 
für dein USB-Gerät musst du noch schreiben, und dann halt noch den 
Sender.

Evtl. geht auch was mt einem FTDI Vinculum, wenn man den noch bekommt.
Aber man muss halt immer noch das ent-USB-te Ende bedienen (Treiber) und 
die Daten übertragen.
Gast #7273462
Lesenswert?

Oz. schrieb:
>> Die Idee scheitert meistens daran, dass andere Übertragungswege ein
>> anderes Timing haben.

> Aha, und weiter?

Ich habe dir ein Produkt vorgeschlagen. Eine allumfassende Lösung ohne 
Haken kann ich dir nicht bieten. Die gibt es vermutlich auch nicht.

> 
https://www.tindie.com/products/matzelectronics/ch559-usb-host-to-uart-bridge-module/
> Ja, habe ich mehrfach. War aber witzlos.

Witzig muss es auch nicht sein. Warum taugt dieses Produkt nicht für 
deinen Fall? Wenn du uns das verrätst, kann jemand anderes vielleicht 
ein geeigneteres empfehlen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren