Hallo ihr Lieben! Ich möchte gern mit Visual Studio 2005 "irgendwie" einen Joystick simulieren. Die Achseninformationen sollen später mal aus einer eigenen Hardware kommen. Das DirectX SDK habe ich bereits installiert. Aber ich werd das Gefühl nicht los, dass mir das nicht weiterhilft. Jemand eine Idee? Tante Google wusste auch keinen rechten Rat...
Wie soll den dein Gerät später angeschlossen werden? Es würde sich ja anbieten erstmal die Hardware fertig zu machen bevor man anfängt die Software dafür zu basteln, oder?
Eigentlich wollte ich einen Atmel Controller nehmen, alle Potis einlesen und z.B. über RS232 einlesen. Habe auch schon mal eine Kommunikation über I2C mit Hilfe der seriellen Schnittstelle realisiert. (War aber mehr ne Vergewaltigung :-) Vorerst reicht mir aber ein Dialogbasiertes Programm mit einem Schieberegler.
Wenn du einen Joystick oder allgemein analoge Potis einlesen willst, bietet sich HID (USB) an. In der HID definition gibt es eine Definition für Joysticks. Schau mal bei USB.org nach. Beispiele dazu gibt es zu genüge im Netz. Um einen Joystick zu simulieren wirst du wohl oder übel einen Treiber oder einen Filtertreiber schreiben müssen, der ein Hardwaredevice vorgaugelt.
Okay also solls mal R232 werden...und wozu genau willst jetzt das ding simulieren? Zum testen deiner Software oder wie?
Nein! Ich möchte für ein Game einen Joystick simulieren. Die eigentlichen Daten kommen woanders her. Woher ist eigentlich egal -> Modularer Gedanke
http://www.geocities.com/deonvdw/Docs/PPJoyMain.htm Das Programm kann Daten von anderen Joystick/RS232/Parallelport oder per DLL einlesen und an einen virtuellen Joystick geben. Außer wenn du es unbedingt selber programmieren willst, könnte das eine Alternative sein. Es ist leider auch nicht OpenSource, sprich du kannst dir keine Anregungen aus dem Code holen. mfg Michi
Es gibt auch ein Programm, das die Maus zu einem Joystick macht, musst du googlen.
hat der entsprecchende computer evtl. einen gameport? dann könnte man den joystick ganz einfach simulieren, indem man die (afair) trigger der potis durch einfache digitalsignale, die in passenden zeitabständen gesetzt werden simulieren, genauso die knöpfe. und die betriebsspannung für das ganze kann man aus der schnittstelle beziehen (solange der strombedarf "überschaubar" bleibt)...
gast schrieb: > hat der entsprecchende computer evtl. einen gameport? > dann könnte man den joystick ganz einfach simulieren, indem man die > (afair) trigger der potis durch einfache digitalsignale, die in > passenden zeitabständen gesetzt werden simulieren, genauso die knöpfe. > > und die betriebsspannung für das ganze kann man aus der schnittstelle > beziehen (solange der strombedarf "überschaubar" bleibt)... Hae? An einen Gameport schliess man Potis an, da sind keine digitalen Signale...
Das Ding funktioniert recht gut: http://www.reichelt.de/?ACTION=3;ARTICLE=30255;PROVID=2402 Nur mal so als Anregung. Wenn man nur die digitalen Signale nutzen will, muss man trotzdem einen Widerstand an den Poti-Eingängen haben. Es können auch zwie sein...
Ich schätze mal, es geht hier um das gescriptete Steuern von Spielen? Ist das der nächste Cheatlevel (Hardwarecheats) :D ? Ich würde wie schon empfohlen über USB HID gehen - die Implementierung kannst Du Dir bei v-usb von obdev.at anschauen - geht recht schnell und tut nicht weh ;) Spezielle USB-Hardware braucht's auch keine
> Hae? An einen Gameport schliess man Potis an, da sind keine digitalen Signale... am gameport liegen KEINE analogen signale (ausgenommen vllt. die spannungsversorgung ;-) ) an. die poti-stellung wird über ein rc-glied mit komparator o.ä. ermittelt siehe z.b.: - http://www.hardwareecke.de/berichte/schnittstellen/gameport.php - "Linux Hardware Hackz", Jürgen Plate, ISBN-13 978-3446407831
> Hae? An einen Gameport schliess man Potis an, da sind keine digitalen > Signale... Das war mal. Mittlerweile übertragen die auch digital. Sidewinder Force Feedback z.B. schubst einzelne Bits über den Gameport rüber; die Kraftsteuerung erfolgt sogar über das MIDI-Protokoll. In der Kiste gibts nicht mal mehr Potis (alles digital, Lichtschranken etc.)
Hallo! @ Michi: Das Programm ist wie gesagt nicht offen und wird leider auch nicht mehr weiter entwickelt. Schade... @ gast: Der Gameport gehört leider unter Naturschutz, da er vom Aussterben bedroht ist -> Vista ;-) @ STK500-Besitzer: Die dinger hab ich mir auch schon angesehen. Allerdings sind 0815 USB Joysticks zum auschlachten der Hardware bei ebay teilweise billiger. @ Gast: Habs nur schnell überflogen - aber ich sach mal GEIL!!! Danke! Der Tipp ist brandheiß.
@Gast: Hast du schonmal was mit v-usb gemacht? Ist leider doch komplizierter als gedacht.
Jo, ich habe mal einen Joystick damit implementiert ;) Wo hakt's denn?
Na das trifft sich doch ;-) Ich verstehe noch nicht wie man dem PC mitteilt, welche Eigenschaften der Joystick hat (Anzahl Achsen und Tasten...). Könntest du mir den Quellcode zeigen? Habe mir das HID-Maus Beispiel angesehen aber die Abweichungen zu nem Joystick sind doch größer.
Nach dem Quellcode müsste ich mal suchen, da kann ich Dir leider aber nichts versprechen... Was Du eigentlich brauchst ist die HID-Spezifikation, das HID-Descriptor-Tool und den v-usb Source-Code; die ersten beiden solltest Du kostenlos auf der USB-Homepage bekommen. Anhand der HID-Spec lässt sich nachvollziehen, wie die HID-Struktur aufgebaut ist, es werden auch Beispielimplementierungen gezeigt. Mit dem HID-Descriptor-Tool baust Du Dir dann die Struktur passend für Deine Anwendung zusammen; das HID-Tool generiert daraus ein Header-File, welches Du in v-usb einbinden kannst. Nun musst Du im v-usb-Source nur noch die Länge Deines HID-Descriptors anpassen und die Daten aus Deiner Anwendung bereitstellen -> fertig :)
eine Hardwarelösung wären noch die 'Joywarrior' Controller, siehe: http://www.codemercs.com/index.php?id=42&L=0
@JojoS: Danke, ist aber bekannt. Kostet auch soviel wie ein Joystick und ist irgendwie garnicht so einfach zu bestellen. @Gast: Hab mir die Dokumente reingezogen. Verstehen tu ichs leider nocht nicht 100%ig... Wie würde denn der Descriptor für 8 Achsen und 8 Tasten aussehen?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.