JW24F14 per HID ansprechen

Dies ist das deutsche Forum für alle Themen um den JoyWarrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Antworten
dummzeuch
Beiträge: 5
Registriert: Mi Feb 23, 2011 1:50 pm

JW24F14 per HID ansprechen

Beitrag von dummzeuch » Mi Feb 23, 2011 4:34 pm

Hi,

ich habe da einen JoyWarrior JW24F14 mit QC-Kit. Zusammengebaut ist er und mit den Tools, die ich heruntergeladen habe, funktioniert auch alles. Jetzt muss ich allerdings fuer den Anwendungsfall selbst ein Tool schreiben, welches Beschleunigungen der Z-Achse aufzeichnet und ein paar Einstellungen erlaubt.

Ich kann, wenn ich das Geraet mit z.B. Seismograph.exe oder dem JoyWarrior24 F14 Programmer korrekt einstelle, ueber die Joystick-Schnittstelle Daten empfanten und die sind auch plausibel. Zum Datenempfang benutze ich ein modifiziertes SimpleHIDWrite, welches als Demo der HID-Komponente von Robert Marquardt beilag (Unterordner Demos\delphi\ReadWriteDemo).

Was mir jedoch bisher nicht gelungen ist, ist die Einstellung der Base Settings, insbesondere Bandwidth und Range.

Der Anleitung entnehme ich, wie ich "Reports" via HID empfangen und senden kann und welchen strukturellen Aufbau sie haben (5.5 Low level sensor access). Indem ich einen Report ID: 00 Inhalt: 80 an EP2IntPipe schicke, kann ich die Datenuebertragung auf dem Joystick-Device anhalten und mit Inhalt 00 wieder starten. D.h. im Prinzip funktioniert es. Aber ich kann nirgendwo ein Beispiel oder eine Beschreibung finden, wie ich Parameter, z.B. Bandwidth oder Range setzen kann.

Ich habe die Beschreibung der Register des verbauten Bosch BMA180 Sensors und schaetze mal, dass ich durch Schreiben dieser Register alle notwendigen Einstellungen vornehmen koennte, aber wie genau schreibe ich in diese Register?

Ein Beispiel - vorzugsweise in Delphi, aber ich nehme auch alles andere - wuerde mir schon sehr weiterhelfen.

twm

Guido Körber
Site Admin
Beiträge: 2734
Registriert: Di Nov 25, 2003 10:25 pm
Wohnort: Germany/Berlin
Kontaktdaten:

Re: JW24F14 per HID ansprechen

Beitrag von Guido Körber » Mi Feb 23, 2011 7:22 pm

Also die grundsätzliche Kommunikation läuft so, dass der JW24F14 praktisch den SPI Port des BMA180 transparent durch reicht.

Das erste Byte des Reports enthält nicht nur das Flag für das Abschalten der Joystickfunktion (was man tun sollte, damit es keine Kollisionen in der Kommunikation gibt), sondern auch die Anzahl der Bytes die übertragen werden soll. Die nachfolgenden sieben Bytes können Nutzdaten sein. Die Antwort des Sensors kommt dann in einem entsprechend formatierten Report zurück.

Damit kann man dann transparent die Befehle an den BMA180 schicken.

Ich weiss jetzt nicht mehr auswendig wie man den BMA180 konfigurieren muss, damit der dann auch die Einstellungen annimmt. Da ist auf jeden Fall ein Flag vorher zu setzen, damit man auf diese Register schreiben kann.

Das sollte unser Herr Jung beantworten können, der ist heute aber nicht da.

dummzeuch
Beiträge: 5
Registriert: Mi Feb 23, 2011 1:50 pm

Re: JW24F14 per HID ansprechen

Beitrag von dummzeuch » Mi Feb 23, 2011 8:03 pm

Guido Körber hat geschrieben:Also die grundsätzliche Kommunikation läuft so, dass der JW24F14 praktisch den SPI Port des BMA180 transparent durch reicht.

Das erste Byte des Reports enthält nicht nur das Flag für das Abschalten der Joystickfunktion (was man tun sollte, damit es keine Kollisionen in der Kommunikation gibt), sondern auch die Anzahl der Bytes die übertragen werden soll. Die nachfolgenden sieben Bytes können Nutzdaten sein. Die Antwort des Sensors kommt dann in einem entsprechend formatierten Report zurück.

Damit kann man dann transparent die Befehle an den BMA180 schicken.

Ich weiss jetzt nicht mehr auswendig wie man den BMA180 konfigurieren muss, damit der dann auch die Einstellungen annimmt. Da ist auf jeden Fall ein Flag vorher zu setzen, damit man auf diese Register schreiben kann.
Erstmal Danke fuer die Antwort. Mein junger genialer ;-) Kollege hat inzwischen herausgefunden, dass der Sourcecode fuer das Beispielprogramm Tilt.exe C++Funktionen dafuer enthaelt, denen ich entnehmen kann, wie es geht. Fuer alle, die evtl. dasselbe Problem wie ich haben: Siehe functions_jw24f14.cpp im Sourcecode von Downtilt. Peinlicherweise hatte ich auch zuerst in den Sourcen geschaut, aber nicht bei Tilt, weil dieses Programm "offensichtlich" nur die Joystick-Funktionen benutzt.

twm

Antworten