Beim gestrigen LUGBZ Treffen wurde folgendes Projekt angesprochen
und Patrick hat mich gebeten das auf die Liste zu posten, weil
es einige unter euch interessieren koennte:
hey...ich bin seit gestern in der Mailingliste
vertreten und möchte dich was fragen:
hast du schon mal mit dem Header hiddev.h gearbeitet?
Möchte nämlich gerne mit einem Gerät kommuniziern, d.h
Bytes vom Host senden und empfangen. Kannst du mir da
ein paar tips geben?
P.S.Bietest du auch Kurse für Softwareentwicklung in
OSGi an?
Hallo! So, jetzt hoff ich poste ich endlich richtig( @Patrick)
Ich bin ein Student in Wien, komme aus Feldthurns und studiere
Produktionstechnik. Mein Studium hat eigentlich nicht viel mit
Programmierung zu tun, trotzdem habe ich die Herausforderung angenommen die
Windowsumgebung zu verlassen und mich im Rahmen meiner Diplomarbeit intensiv
mit Linux und Java-Programmierung zu beschäftigen. Ich hoff ihr könnt mir da
a bissl helfen.
Also ich arbeite auf einem Linux Suse 9.3 PC du möchte gerne im Rahmen
meiner Diplomarbeit mit einem HID-Gerät kommunizieren (es ist ein Gateway zu
einer Funksteuerung für die Gebäudeautomation). Hab erst mit Linux
angefangen deswegen kenn ich mich noch nicht so gut aus. Abgesehen davon:
Ich habe im Internet nachgeforscht und herausbekommen dass man mit
"hiddev.h" über ein C-Programm z.B. mit dem Gerät kommunizieren kann. Nun
anhand zweier einfacher Beispiele ist es mir bis jetzt gelungen Deviceinfos
wie Version, Vendor_ID, Product_ID usw. auszulesen und auch wo an welchem
Hub das Gerät hängt und die Anzahl der Applikationen. Nun finde ich aber
nichts wie ich nun Bytes zum Gerät schicken bzw. empfangen kann. Hat von
euch jemand schon mal so was gemacht und kann mir helfen? Ich bin schon ganz
verzweifelt, weil ich nicht mehr weiterweiß...
Liebe Grüße Günther
Also ich arbeite auf einem Linux Suse 9.3 PC du möchte gerne im Rahmen
meiner Diplomarbeit mit einem HID-Gerät kommunizieren (es ist ein Gateway zu
einer Funksteuerung für die Gebäudeautomation). Hab erst mit Linux
angefangen deswegen kenn ich mich noch nicht so gut aus. Abgesehen davon:
Ich habe im Internet nachgeforscht und herausbekommen dass man mit
"hiddev.h" über ein C-Programm z.B. mit dem Gerät kommunizieren kann. Nun
anhand zweier einfacher Beispiele ist es mir bis jetzt gelungen Deviceinfos
wie Version, Vendor_ID, Product_ID usw. auszulesen und auch wo an welchem
Hub das Gerät hängt und die Anzahl der Applikationen. Nun finde ich aber
nichts wie ich nun Bytes zum Gerät schicken bzw. empfangen kann. Hat von
euch jemand schon mal so was gemacht und kann mir helfen? Ich bin schon ganz
verzweifelt, weil ich nicht mehr weiterweiß...
Hey, das ist jetzt unheimlich...genau das Buch hab ich
mir letzte Woche, anzi vor 2, von der TU-Bibliothek
geholt.(:-))
Kennst du das Buch besser, Chris?
so, jetzt, aber hab i a Frage für dich ("kernel
aufwärts):
Ich möchte gerne ein Java-Programm entwickeln, dass
einen 5 Bytes z.B "05 B1
01 10 01" einem C-Programm übergibt , welches das
C-Programm über die
hiddev.h einem HID-Gerät übergibt, welches diesen Code
dann verarbeitet.
Zudem kann ich auch vom Gerät Bytes emfangen (14 an
der Zahl) und diese möchte
ich dann dem Java-Programm wieder zurückgeben. Es
handelt sich um zwei
c-Programme, eines "send_cmd" und "rcv_data". Sie sind
aufrufbar, wenn man im
entsprechenden Verzeichnis z.B.
$ ./send_cmd 05 B1 01 10 01
in der Console(Linux) eingib. Umgekehrt gebe ich
$./rcv_data
ein und das C-Programm gibt mir am stdout die
einzelnen Daten nacheinander aus
(wie kann man diese Daten dem Java-Programm
übergeben?)
Ist hier sinnvoll das JNI zu verwenden, oder kann ich
dies irgendwie anders
gestalten? zB kann ich das c-Programm "send_cmd"
einfach im Java-Programm wie
in der Konsole einfach aufrufe? Wie würde man soetwas
machen? Habst du da
vielleicht einen Tip?
lg Günther