Hallo,
ich suche einen Link Informationen sachdienliche Hinweise zu
folgendem Vorhaben:
ich würde gern – so denn möglich – mit einer µC-Schaltung (Atmel Mega)
eine USB 2 Verbindung belauschen (vielleicht mit einer Art Y-Kabel? Oder
auch in dem man den µC „in die Leitung” schaltet) um zu reagieren, wenn
eine bestimmte Impulsfolge auftritt (keine Aufzeichnung von Daten
erforderlich). Mich interessiert dabei nur eine Richtung, beispielsweise
Computer -> Drucker.
Ich bin mir nichtmal sicher, ob man dazu die Impulsfolge dekodieren
müsste, vielleicht nichtmal das? Kenne mich nicht genug mit USB aus um
das zu beurteilen.
Vielleicht könnte ich auch einen extra Tiny vorsehen, nur um diese
Aufgabe zu übernehmen und dann einem großen Bruder Signale zu senden ...
Kenn jemand Fundstellen, wo schon mal etwas in diese Richtung
unternommen wurde?
Viele Grüße
Timm
USB auf nem AVR ist absoluter Frickelkram und dann auch nur für
Lowspeed. Für alles andere haben diese Tiere zu wenig Leistung. Ich
würde es gar nicht erst versuchen..
Hallo,
ja, das habe ich schon fast befürchtet.
Alternativ wäre ich auch interessiert: Was wäre denn die eleganteste
oder einfachste Möglichkeit, die euch einfallen würde, sowas zu machen?
Im Endeffekt wäre die Sequenz auf die ich gern triggern würde vielleicht
so 4 Byte lang.
Viele Grüße
Timm
troll schrieb:> USB auf nem AVR ist absoluter Frickelkram und dann auch nur für> Lowspeed.
Schau dir doch mal die atmega8u2, ATMEGA32U4 und AT90USB162 Familie
genauer an: Hardware-Unterstützung für Full Speed USB (12 mbit/s). Mit
einem kleinen Board wie dem teensy bist du mit wenig $$$ dabei.
treinisch schrieb:> Im Endeffekt wäre die Sequenz auf die ich gern triggern würde vielleicht> so 4 Byte lang.
Was willst du erreichen?
Es gibt Programme, die die USB-Pakete direkt an der Quelle (am PC)
aufzeichnen.
USB Lowspeed könnte klappen, wenn du mit ASM fit bist, ich würde es aber
nichtmal versuchen, da ein AVR dafür definitiv die falsche Plattform
ist.
@Programmierer: ein µC mit usb wird einem bei der Aufgabenstellung des
TO nur wenig nützen, er will vorhandenen USB-Datenverkehr
aufzeichnen/analysieren.
So, nochmal. Du möchtest also eine 480MBit/s-Verbindung, wo also die
Datenbytes im 60MHz-Takt rein- und rauspurzeln, mit einem 16MHz AVR
verarbeiten?
Wovon träumst Du nachts?
PS: Um ein USB2-Signal als Kurvenform auf dem Bildschirm darstellen zu
können, brauchst Du so ein Gerät:
http://www.home.agilent.com/agilent/product.jspx?cc=DE&lc=ger&nid=-34748.749308
Schau mal auf den Preis...
fchk
Hallo,
Lukas K. schrieb:> Was willst du erreichen?> Es gibt Programme, die die USB-Pakete direkt an der Quelle (am PC)> aufzeichnen.
ja, das ist ein berechtigter Punkt! Was ich erreichen will ist eine
Funktionalität,
die einfach funktioniert. Um das direkt am PC abzufangen müsste man
wissen,
an welchen USB Port die Daten gehen, man müsste vermutlich auch wissen,
welche
Art von Treiber da werkelt, und man wäre natürlich massiv abhängig von
der Betriebssystem Version. Gibt es überhaupt schon funktionierende USB
Sniffer Software für Windows 7, 64 Bit für wenig Geld? Und was ist mit
Linux, Mac OS X?
Da wäre unterlassen sicherlich die bessere Alternative!
Vlg
Timm
treinisch schrieb:> Was ich erreichen will ist eine> Funktionalität,> die einfach funktioniert.
Ja, was denn nun genau? Netiquette>Gerade am Anfang ist es immer gut zu sagen, was man erreichen will ...
Lukas K. schrieb:> treinisch schrieb:>> Was ich erreichen will ist eine>> Funktionalität,>> die einfach funktioniert.> Ja, was denn nun genau? Netiquette>>Gerade am Anfang ist es immer gut zu sagen, was man erreichen will ...
Das habe ich schon getan, musst nur lesen, das verstößt ja wohl nicht
gegen die Netiquette. Ich möchte, nach Möglichkeit unter Einsatz von
Atmel µC, auch wenn sich wohl herausgestellt hat, dass das nicht geht,
auf eine Sequenz von 4 Datenbytes auf einem USB 2 Bus triggern und zwar
nur in eine Richtung.
Ich möchte nicht loggen, nicht dekodieren, auch keine Fehler von Clients
oder Hosts detektieren, nichts dergleichen.
Und wie ich in dem von Dir monierten Beitrag klargestellt habe, kommt
eine
PC-Seitige Softwarelösung nicht in Frage.
Diese Angaben sind ja wohl mehr als genau genug um der Netiquette
gerecht zu werden.
Wenn das für eine Frage in diesem erlauchten Forum nicht genügt, bitte
ich hiermit einen der Mods, den Thread einfach zu löschen oder zu
schließen, ich bereue schon gefragt zu haben.
Grüße
Timm
Timm Reinisch schrieb:> Ich möchte, nach Möglichkeit unter Einsatz von> Atmel µC, auch wenn sich wohl herausgestellt hat, dass das nicht geht,> auf eine Sequenz von 4 Datenbytes auf einem USB 2 Bus triggern und zwar> nur in eine Richtung.
Das ganze hat doch sicherlich einen tieferen Sinn, oder machst du das
nur aus Spaß? Wozu willst du auf diese 4 Bytes triggern?
Timm Reinisch schrieb:> Das habe ich schon getan, musst nur lesen, das verstößt ja wohl nicht> gegen die Netiquette. Ich möchte, nach Möglichkeit unter Einsatz von> Atmel µC, auch wenn sich wohl herausgestellt hat, dass das nicht geht,> auf eine Sequenz von 4 Datenbytes auf einem USB 2 Bus triggern und zwar> nur in eine Richtung.>> Ich möchte nicht loggen, nicht dekodieren, auch keine Fehler von Clients> oder Hosts detektieren, nichts dergleichen.
Wenn Du unbedingt basteln willst: Nimm einen UTMI-konformen USB2-PHY wie
diesen hier
www.smsc.com/index.php?tid=143&pid=25
und ein hinreichend schnelles FPGA. Ein kleiner Spartan XC6LX4 oder
XC6LX9 sollte reichen. Viel Spaß mit VHDL.
fchk
Timm Reinisch schrieb:>>>Gerade am Anfang ist es immer gut zu sagen, was man erreichen will ...>> Das habe ich schon getan, musst nur lesen, das verstößt ja wohl nicht> gegen die Netiquette. Ich möchte, nach Möglichkeit unter Einsatz von> Atmel µC, auch wenn sich wohl herausgestellt hat, dass das nicht geht,> auf eine Sequenz von 4 Datenbytes auf einem USB 2 Bus triggern und zwar> nur in eine Richtung.
Nein das hast du eben nicht getan. Du beschreibst nur die Lösung die du
verfolgst und wir sollen dabei helfen. Ob die Lösung überhaupt sinnvoll
ist, oder ob es viel klüger wäre z.B. am PC die Daten abzugreifen können
wir so nicht beurteilen. So eine Vorgehensweise kommt immer ziemlich
arrogant rüber, weil du quasi behauptest dass du voll den Durchblick
hast wie dein Problem zu lösen ist (was offensichtlich nicht der Fall
ist) und wir sollen gefälligst nichts hinterfragen sonder einfach nur
helfen.
Johannes G. schrieb:> Nein das hast du eben nicht getan. Du beschreibst nur die Lösung die du> verfolgst und wir sollen dabei helfen.
Ganz genau. Und wenn keiner dazu Lust hat, möchte ich bitte dadurch
bestraft werden, dass mein Thread leer und unbeantwortet bleibt.
> Ob die Lösung überhaupt sinnvoll> ist, oder ob es viel klüger wäre z.B. am PC die Daten abzugreifen können> wir so nicht beurteilen.
Ganz genau. Eine solche Beurteilung zu erhalten ist nicht mein Anliegen.
Ich wusste auch leider als ich die Frage gestellt habe nicht, dass es
hier nicht erlaubt ist um technische Hinweise für eine konkrete
technische Lösung zu bitten, sondern, dass es vorrangig um Sinnfragen
geht.
> So eine Vorgehensweise kommt immer ziemlich> arrogant rüber, weil du quasi behauptest dass du voll den Durchblick> hast wie dein Problem zu lösen ist
Ganz genau. Ich habe den vollen Durchblick. Entweder so ein
Sniffer-Trigger ist für mich in unter 25 Manntagen und unter 300,00 €
Kosten zu bewältigen, oder der komplette Projektzweig ist obsolet.
Soweit habe ich den vollen Durchblick.
> (was offensichtlich nicht der Fall ist)
Da hast Du ein Problem mit der gedanklichen Klarheit. Ganz
offensichtlich habe ich in der Tat zu wenig Durchblick um diesen
Lösungsansatz aus eigener Kraft zu evaluieren. Stimmt.
Darum habe ich ja auch Leute die Lust haben um Ideen und Hinweise
gebeten.
> und wir sollen gefälligst nichts hinterfragen sonder einfach nur helfen.
Das wäre prima gewesen. Ich weiss auch aus erster Hand, dass es Menschen
gibt, die das so halten beim Helfen.
Und, naja, ehrlich gesagt, habe ich die Informationen, die ich gesucht
habe, auch schon von netten Helfern bekommen, euch vielen lieben Dank!
High-Speed geht nicht. Fertig.
@Programmierer
Vielen Dank. Könnte eine interessante Option sein, wenn ich mich auf
Full-Speed beschränken kann, was ich untersuchen werde!
@Frank K.
Vielen Dank. Ich habe zwar den Verdacht, dass der Hinweis eher
sarkastisch gemeint sein könnte, dennoch ein lehrreicher Hinweis.
Sprengt definitiv das Zeit- und Kosten-Budget, ist aber so interessant,
dass ich das vielleicht in 2013 noch mal verfolge.
@Rufus T. Firefly
Vielen Dank! Ein sehr interessanter Ansatz, falls ich auf Full-Speed
gehen kann.
Viele Grüße
Timm
Timm Reinisch schrieb:> Ich möchte, nach Möglichkeit unter Einsatz von Atmel µC, auch wenn sich> wohl herausgestellt hat, dass das nicht geht, auf eine Sequenz von 4> Datenbytes auf einem USB 2 Bus triggern und zwar nur in eine Richtung.> Ich möchte nicht loggen, nicht dekodieren, auch keine Fehler von Clients> oder Hosts detektieren, nichts dergleichen.
Ist dir dabei egal, ob diese 4 Datenbytes in den eigentlichen Nutzdaten
oder irgendwelchen Protokoll-Headern enthalten ist? Oder wie willst du
die ohne jegliche Dekodierung unterscheiden?
Sich einfach parallel zu hängen, wird nicht gehen, da du dann ohne
Protokoll-Dekodierung keine Richtung erkennen kannst. USB hat keine
separaten Datenleitungen pro Richtung.
Timm Reinisch schrieb:>> Ob die Lösung überhaupt sinnvoll>> ist, oder ob es viel klüger wäre z.B. am PC die Daten abzugreifen können>> wir so nicht beurteilen.>> Ganz genau. Eine solche Beurteilung zu erhalten ist nicht mein Anliegen.
Also möchstest du keine Vorschläge zu besseren Lösungen, sondern hast
dich bereits für eine entschieden, ohne dabei überhaupt zu wissen, ob
und mit welchem Aufwand sie realisierbar ist. Und wenn es so nicht geht,
läßt du es lieber gleich ganz bleiben.
> Ich wusste auch leider als ich die Frage gestellt habe nicht, dass es> hier nicht erlaubt ist um technische Hinweise für eine konkrete> technische Lösung zu bitten, sondern, dass es vorrangig um Sinnfragen> geht.
Nicht vorrangig, aber da dein Anliegen irgendwie merkwürdig und wenig
sinnvoll erscheint und keiner eine Vorstellung davon hat, wozu um alles
in der Welt sowas gut sein könnte, werden die Antworter eben das Gefühl
nicht los, daß deine Lösung nicht die beste sein kann. Dann kommen eben
solche Rückfragen.
Timm Reinisch schrieb:> falls ich auf Full-Speed gehen kann.
Was magst Du damit meinen? Die Geschwindigkeit gibt der käufliche
USB-Drucker-Adapter vor, und das wird bestenfalls 12 MBit/sec sein.
Welcher Drucker wäre auch schneller?
Hallo Magnus,
Rrolf Magnus schrieb:> Also möchstest du keine Vorschläge zu besseren Lösungen, sondern hast> dich bereits für eine entschieden, ohne dabei überhaupt zu wissen, ob> und mit welchem Aufwand sie realisierbar ist. Und wenn es so nicht geht,> läßt du es lieber gleich ganz bleiben.
ja, so kann man das zutreffend zusammenfassen!
>> Ich wusste auch leider als ich die Frage gestellt habe nicht, dass es>> hier nicht erlaubt ist um technische Hinweise für eine konkrete>> technische Lösung zu bitten, sondern, dass es vorrangig um Sinnfragen>> geht.>> Nicht vorrangig, aber da dein Anliegen irgendwie merkwürdig und wenig> sinnvoll erscheint und keiner eine Vorstellung davon hat, wozu um alles> in der Welt sowas gut sein könnte
jetzt beginne ich zu verstehen, worum es bei der Sinn-Schiene geht. Kann
ich
nachvollziehen. Vielleicht hätte ich diese Wahrnehmung mit wenigen
Sätzen abmildern können.
Schau, bei diesen Sinn-Themen geht es hier immer furchtbar von Von
Hölzken auf Stöcksken, weil eine weit verbreitete Attitüde in diesem
Forum ist, dass jemand der eine Frage stellt eigentlich keine Ahnung von
nix haben kann.
Würde ich sagen, dass die Daten auch vom iPad kommen können, käme der
Vorschlag doch ein Android Tablett zu verwenden, denn iGeräte seien eh
nur Spielzeug. Sagte ich dann, dass es die App aber nicht für Android
gebe, käme der Vorwurf ich sei unbelehrbar und wisse eh alles besser,
oder ein wertvoller Hinweis, das könne man ja auch leicht selber
programmieren, wenn man etwas Ahnung habe und so fort und so fort.
Sag nicht, dass Du Dich nicht auch schon oft gewundert hast!
Viele Grüße
Timm
Hallo Rufus,
Rufus Τ. Firefly schrieb:> Timm Reinisch schrieb:>> falls ich auf Full-Speed gehen kann.>> Was magst Du damit meinen? Die Geschwindigkeit gibt der käufliche> USB-Drucker-Adapter vor, und das wird bestenfalls 12 MBit/sec sein.> Welcher Drucker wäre auch schneller?
Jaja! Ein erheblicher Teil der „Unmöglichkeit“ kommt ja durch den
USB-High-Speed Modus. Dein Vorschlag ist zwar sehr gut und praktisch,
aber nur, wenn Full-Speed, also 12 Mbit/s reichen.
Das ist, war ich damit meinte: Ich muss einfach schauen, ob die Geräte
die ich einsetzen möchte vielleicht sogar sowieso nur Full-Speed
unterstützen.
Viele Grüße
Timm
Ich denke "das ganze mit dem Sinn" kommt eher daher, das man den
Eindruck bekommt, du willst eigentlich nur prüfen, ob Daten in eine
Richtung gehen und dann darauf reagieren (Also z.B. das Licht
einschalten, wenn gedruckt wird). Und das ginge eben PC-Seitig evt. viel
einfacher...
Timm Reinisch schrieb:> Ich muss einfach schauen, ob die Geräte> die ich einsetzen möchte vielleicht sogar sowieso nur Full-Speed> unterstützen.
Du willst einen Drucker benutzen. Daß es einen Drucker geben sollte,
der nicht an "Full-Speed" funktioniert, kann ich mir beim besten
Willen nicht vorstellen, ebenso bezweifle ich, daß es welche gibt, die
überhaupt mehr als "Full-Speed" beherrschen.
Mal am Rande gefragt: Was ist das genaue Ziel der Übung?
Hallo,
dfgh schrieb:> Und das ginge eben PC-Seitig evt. viel> einfacher...
schau, als „Sender“ kommen Windows-PC mit allen Windows-Versionen,
insbesondere 7 mit 64 Bit, Mac OS X >10.5, iOS ab 3.0 in Frage.
Damit hat sich dieser Ansatz (wie ich schon mal, wenn auch sehr
schwefelig und umkonkret, ausführte) natürlich komplett erledigt.
Viele Grüße
Timm
Rufus Τ. Firefly schrieb:> Timm Reinisch schrieb:> Mal am Rande gefragt: Was ist das genaue Ziel der Übung?
Drucker kommt von Dir! Es geht nicht um einen Drucker!
Es geht um DSLRs die vom Computer aus mit Live View bedient werden. Es
soll beim Auslösen das Licht ausgeschaltet werden, ein Blitz ausgelöst
werden, das Licht wieder eingeschaltet werden. Damit das Ganze Sinn
macht muss das ziemlich zackig von statten gehen. Vielleicht so 4
Vorgänge pro Sekunde. Das Licht ist eh µC kontrolliert.
Auf dem USB Kabel liegt dabei kameraseitig natürlich der Datenstrom der
Vorschau. Das ist das Problem.
Die Alternative ist, dass der µC sich einfach als Maus am Computer
anmeldet und man den Klick zum Auslösen mit einem Fußpedal macht, statt
mit der Computermaus. Die Software kriegt ja den Klick mit, und in
meiner Steuerung kann ich einfach eine kleine Verzögerung einbauen.
Viele Grüße
Timm
Timm Reinisch schrieb:> Drucker kommt von Dir! Es geht nicht um einen Drucker!
Ach?
treinisch schrieb:> Mich interessiert dabei nur eine Richtung, beispielsweise> Computer -> Drucker.
Zurück zu Deinem Problem, das Du ja jetzt wenigstens erfreulicherweise
geschildert hast.
Um den USB-Traffic abzufangen, könntest Du einen
Ethernet-USB-Device-Server verwenden, brauchst dann aber natürlich
einen, der von den jeweiligen Betriebssystemen unterstützt wird. Dann
musst Du "nur" noch den Netzwerktraffic mit diesem Gerät abhören und
auswerten.
Hat die Kamera keinen Blitzschuh?
Bedingt durch das recht grobe Zeitraster von USB wird das mit der
Blitzsynchronisation via USB ohnehin nicht funktionieren.
Lukas K. schrieb:> Hat die Kamera keinen Blitzschuh?
Wenn sie den nicht hat, hat sie einen Synchronkontakt. Nur ist zu
befürchten, daß das Licht nicht schnell genug ausgeht.
Warum eigentlich das Licht ausschalten?
Wenn der Blitz hell genug ist, gibt es kein Mischlicht.
Hallo,
Lukas K. schrieb:> Hat die Kamera keinen Blitzschuh?> Bedingt durch das recht grobe Zeitraster von USB wird das mit der> Blitzsynchronisation via USB ohnehin nicht funktionieren.
och, das funktioniert schon: wenn das „Licht“ aus ist, kann man ja ohne
Probleme recht lange Belichtungszeiten wählen (zB 250 ms). Die wirkliche
Belichtungszeit wird durch die Blitzdauer bestimmt, da es kein anderes
Licht gibt.
An den Blitzschuh habe ich nicht gedacht, aber der Blitzschuh geht
nicht, denn wenn da ein Signal kommt, läuft der Verschluss schon. Dann
muss das Licht aber bereits aus sein!
Licht aus -> Verschluss auf -> Blitz -> Verschluss zu -> Licht an
Viele Grüße
Timm
Hallo,
> Warum eigentlich das Licht ausschalten?> Wenn der Blitz hell genug ist, gibt es kein Mischlicht.
das ist simpel: Das entscheidende Kriterium ist Geschwindigkeit. Je
dunkler man den Blitz einstellen kann, um so schneller ist er.
Viele Grüße
Timm
Frank K. schrieb:> PS: Um ein USB2-Signal als Kurvenform auf dem Bildschirm darstellen zu> können, brauchst Du so ein Gerät:>> http://www.home.agilent.com/agilent/product.jspx?c...
Und wovon träumst du so? Jedes Billiggerät für 2 EUR kann USB, wofür
sollte man also so ein Oszilloskop brauchen? Es hat übrigens kein Mensch
von "Kurvenform" darstellen gesprochen. Und selbst dafür wäre dieses
Oszilloskop ziemlicher Overkill.
Timm Reinisch schrieb:> An den Blitzschuh habe ich nicht gedacht, aber der Blitzschuh geht> nicht, denn wenn da ein Signal kommt, läuft der Verschluss schon. Dann> muss das Licht aber bereits aus sein!>> Licht aus -> Verschluss auf -> Blitz -> Verschluss zu -> Licht an
Wie wäre es denn damit, den Verschluß über den Anschluß für den
Fernauslöser zu öffnen? Dann kann dein µC auf Druck eines Tasters oder
Pedals das Licht ausschalten und kurz danach auslösen. Der Live-View
dürfte es doch egal sein, ob die Auslösung von dort kommt, oder von wo
anders.
Rrolf Magnus schrieb:> Timm Reinisch schrieb:>> An den Blitzschuh habe ich nicht gedacht, aber der Blitzschuh geht>> nicht, denn wenn da ein Signal kommt, läuft der Verschluss schon. Dann>> muss das Licht aber bereits aus sein!>>>> Licht aus -> Verschluss auf -> Blitz -> Verschluss zu -> Licht an>> Wie wäre es denn damit, den Verschluß über den Anschluß für den> Fernauslöser zu öffnen? Dann kann dein µC auf Druck eines Tasters oder> Pedals das Licht ausschalten und kurz danach auslösen. Der Live-View> dürfte es doch egal sein, ob die Auslösung von dort kommt, oder von wo> anders.
so mache ich das ja schon. Über ein Pedal, dass an die Steuerung
angeschlossen ist, wird der Licht-Blitz-Kamera Prozess gestartet.
Klar ist der Software das „egal”, aber genau darum geht es. Für manche
Funktionen wäre es nett, wenn die Software wüsste, das geschossen wurde.
Die Glückseligkeit hängt aber in der Tat nicht davon ab.
Viele Grüße
Timm
Timm Reinisch schrieb:> Klar ist der Software das „egal”, aber genau darum geht es. Für manche> Funktionen wäre es nett, wenn die Software wüsste, das geschossen wurde.
Das meinte ich eigentlich mit "egal". Ich war jetzt davon ausgegangen,
daß die Software sich bei Auslösung der Kamera immer gleich verhält,
unabhängig davon, wodurch sie ausgelöst wurde. Damit "wüsste" sie doch
dann auch, daß geschossen wurde.