Weis jemand wie man einen Joystick simulieren kann?



  • Guten Tag

    Ich habe ein Eingabegerät (3D Maus) welches Konstruktionsprogramme direkt und andere Programme, welche sich im Vordergrund befinden als Maus und Tastatur steuern kann.
    Leider wird das Arbeiten als Joystick nicht unterstützt.
    Die 3D Maus arbeitet nicht als HID-Gerät sondern verwendet einen FT232 um die Daten an das Steuerprogramm zu schicken.
    Bei diesem Steuerprogramm kann man sich die Rohdaten abholen und weiterverarbeiten.

    Die einzige Möglichkeit die mir aktuell einfällt um das Eingabegerät als Joystick zu verwenden ist die Rohdaten mit einem selbsteschriebenen Programm abzuholen, über einen FT232 an einen Mikrokontroller zu schicken welcher dann als HID-Joystick die Daten an den PC zurückschickt.
    Dass würde aber 3 USB Ports belegen und in der Laufzeit sicher nicht optimal sein weil man etliche malde die Daten sinnlos durch die Gegend schickt.

    Hat jemand von euch eine Idee wie ich Daten an einen Standard-Joysticktreiber senden kann damit ein anderes Programm mein Eingabegerät als normalen Joystick erkennt?
    Ich weis dass ich mit dem DDK einen eigenen Joysticktreiber schreiben könnte aber das Schreiben eigener Treiber möchte ich möglichst vermeiden.

    mfg Barny



  • Wird schwierig, da die Treiber z.B. unter 64bit signiert sein müssen.
    Du kannst einen standard 4 Tasten Gameport Joystick immer deiner Liste hinzufügen, auch wenn er nicht funktioniert. Dann kann man noch mit den Tastaturkommandos Joystick Befehle schicken wie z.B. Button 4 down. Ob das ein Programm dann annimmt bezweifle ich.
    Dann gibts noch die vierschiedenen Playstation/N64 Controller am Parallelport Projekte mit Sourcecode, evtl. findest du dort was?



  • Also für den Parallelport konnte ich nichts aktuelles finden.

    Die Playstation / N64 Adapter die ich gemacht habe waren alle mit V-USB über USB und Standardtreiber.
    Wie es aussieht machen die meißten Anderen es genauso.

    Die Lösung mit dem Einspeisen über V-USB habe ich testweise schon ausprobiert.
    Damit bekomme ich eine ziemliche Verzögerung die Spiele unspielbar macht.



  • http://cbud.raphnet.net/snes/psxpad/xp/index_en.html
    und Konsorten ...
    Kannst installieren auch ohne Hardware.



  • Also ich habe jetzt alle Parallelport Joystick Projekte durchsucht die ich finden konnte.
    Alle haben alle nur bis WinXP den Parallelport verwendet und sind danach auf V-USB oder den Warrior Chip umgestiegen.

    Alle XP-Projekte die ich finden konnte haben mit einem eigenen Treiber gearbeitet.
    Dass ist wie es aussieht bei Win 7 / 8 nicht so einfach, weil da ja nur zertifizierte/signierte Treiber zugelassen werden.

    Gibt es eventuell die Möglichkeit einen Dummy-Joystick am PC anzuschließen der die Anmeldung am Betriebssystem übernimmt und sich dann da in die Komunikation hineinzuhängen um die Daten zu senden?



  • Die Projekte sind natürlich auf XP und funktionieren nur noch in der 32bittigen Windows Version 7 und 8 wegen der 64er Zertifizierung. Ja sie haben einen eigenen Treiber den du auch machen kannst da in der DDK Beispiele dafür geliefert werden.

    Hardware technisch kenne ich keinen Joystick der das was du vorhast unterstützt, allerdings kannst du mit Atmel oder Microchips einen Joystick bauen der sich per HID füttern lässt und dann per USB den Joystick simuliert. Da baust du aber deine eigene Hardware.



  • Ich habe jetzt vor die Angelegenheit rein hardwaremäßig zu lösen.
    Aktuell bin ich dabei das komplette Komunikationsprotokoll zu ermitteln.

    Sobald ich dass habe, werde ich dann einen Zwischenstecker erstellen, der als Host die Daten vom Eingabegerät übernimmt und dann den Joystick emuliert.
    (Mal schaun ob ich dass mit dem Vinculum alleine hinbekomme, oder ob ich noch einen AVR zusätzlich brauche.)


Anmelden zum Antworten