|
Descentforum.DE
|
View previous topic :: View next topic |
Author |
Message |
Grendel Forum-Nutzer
Joined: 24 Jun 2004 Posts: 208
Location: Oregon, USA
|
Posted: 10.08.2009, 04:22 Post subject: |
|
|
Munk wrote: | Do_Checkor wrote: | Zumal USB schneller ist und auch noch CPU schont... |
Das glaube ich nicht.
Die analogen Signale am Gameport werden von der Soundkarte digitalisiert und per DMA bereitgestellt - da hat die CPU garnichts mit zu tun. Beim USB muss sich die CPU um den USB-Treiber selbst kümmern.
Kann bei dem Sidewinder-Overdriveprotokoll aber auch wieder anders sein. |
Das glaub man besser Der Gameport ist als direkte I/O designed und muss von der CPU gepollt werden. Einige Soundkartenhersteller haben in der Vergangenheit versucht die Arbeit der CPU abzunehmen, mit maessigem Erfolg. Fuer's Overdrive Protokol muss die CPU direkten Zugang zum Gameport haben, die Treiber lesen den Bit-Stream mittels polling.. Ist zwar schneller wie die Timer, verursacht aber immer noch um die 5% CPU last. USB Pakete dagegen werden im Hintergrund von der Hardware empfangen.
|
|
Back to top |
|
|
Maulwurf aka Seeker
Joined: 17 Jul 2001 Posts: 2191
Location: Stuttgart
|
Posted: 10.08.2009, 08:38 Post subject: |
|
|
[kurzOT]
munk, was machst du mit winXP? d3 mit jaunty funktioniert prima.
[/kurzOT]
|
|
Back to top |
|
|
Thomy Forum-Nutzer
Joined: 02 Aug 2009 Posts: 18
Location: Stuttgart
|
Posted: 14.08.2009, 03:34 Post subject: |
|
|
Hallo zusammen,
wollte nur noch abschliessend etwas schreiben:
Ich habe mir den Precision Pro jetzt bei Ebay geholt und er funktioniert auch einwandfrei (im zweifelsfall habe ich ja jetzt einen 3D Pro Plus als Ersatzteillager). Per Adapter an USB angeschlossen und XP hat diesen auch sofort als Precision Pro erkannt.
Ich habe jeweils beide ersten Level von D1X-Rebirth und D2X-Rebirth gespielt und es funktioniert super (naja, erst wieder ein wenig dran gewöhnen).
Jetzt würde ich gerne wieder online spielen, aber das wird ein neuer Thread im Oldschool-Forum
Danke an alle für die Tipps
Gruß
Thomy
|
|
Back to top |
|
|
playa028 Forum-Nutzer
Joined: 22 Jul 2009 Posts: 6
Location: Kempten
|
Posted: 22.09.2009, 11:11 Post subject: |
|
|
Ich weiß nicht ob es hier reinpaßt, aber ich werde in Kürze den Grendel Adapter in Version 2 nachbauen und mit meinem Sidewinder Force Feedback Pro (Gameport Version) testen.
Funktionieren soll es mit Microsoft SideWinder 3D Pro, Precision Pro, oder Force Feedback Pro
(8-Wege hat, Slider, alle Knöpfe, jedoch kein Force Feedback)
Bauteile mußte ich aus verschiedenen Quellen organisieren (Tiny461 gibt es nicht bei Reichelt). Einen funktionierenden Programmer für AVRs - und ATTinys habe ich mittlerweile.
ZIP mit Bestückungsplan + Anleitung gibt es hier (Rev.2 - - ganz unten):
http://grendel.koolbear.com/3dpro.htm
Eventuell kann ich für Interessierte den ein oder anderen Chip brennen. Werde zunächst Erfahrungen im Selbstbau sammeln - und hier wieder berichten!
|
|
Back to top |
|
|
Grendel Forum-Nutzer
Joined: 24 Jun 2004 Posts: 208
Location: Oregon, USA
|
Posted: 23.09.2009, 01:24 Post subject: |
|
|
playa028 wrote: | Bauteile mußte ich aus verschiedenen Quellen organisieren (Tiny461 gibt es nicht bei Reichelt). |
Soweit ich weiss gibt's den in DE nur hier:
http://www.csd-electronics.de/
Shop -> IC's -> Mikrocontroller -> ATTINY, ... -> Seite 12 -> ATTINY461-20PU
|
|
Back to top |
|
|
playa028 Forum-Nutzer
Joined: 22 Jul 2009 Posts: 6
Location: Kempten
|
Posted: 27.09.2009, 15:22 Post subject: Status Grendel V2 Nachbau |
|
|
Puh, den Adapter hatte ich "from scratch" in 2 Tagen aufgebaut, aber es wird ein unbekanntes Gerät angezeigt (Geräteinstanzkennung: USB \ VID_0000 & PID_0000 \ 6 & 271eBB6 & 0 & 4, sonst alles UNKNOWN).
Wahrscheinlich noch ein Verdrahtungsfehler.... Ich kontrollier nochmal säuberlich alle Verbindungen - logisch.
Was gibt es für Möglichkeiten, das Ding zu debuggen?
Es handelt sich um einen Force Feedback Pro (part number 96755).
Ah ich sehe, das Joystick - Netzeil von Microsoft (12 Volt, 1.3A) fehlt mir!
Brauch ich das für korrekte Funktion?
----
Beobachtung: die Led blinkt sehr schnell, wenn ich den Joystick anstecke, erlischt sie. Ich habe, um den Stromverbrauch zu optimieren, einen 10K Vorwiderstand + eine low power LED benutzt (I = 0,3 mA) Könnte das die Funktion beeinträchtigen?
Masseführung scheint korrekt, nur das USB-Gehäuse ist geerdet (DB-15 nicht).
Gibt es bei den USB-Printmontage-Steckern unterschiedliche Pinbelegungen (D- und D+ vertauscht ?)
Ein USB Hub mit externem Netzteil brachte keine Verbesserung.
-------------
P.P.S.: Attiny461-20 mit Quarz 12 Mhz, Fuses wie im GIF zu Rev.2, Hexfile: 3dpv12t4.hex
Brenner : (AVR ISP mk II Clone); AVR Studio 4.17 zeigt Bytes 0xff, 0xdd, 0xdf.
|
|
Back to top |
|
|
Maulwurf aka Seeker
Joined: 17 Jul 2001 Posts: 2191
Location: Stuttgart
|
Posted: 27.09.2009, 15:28 Post subject: |
|
|
beim usb FF ist das netzteil nur nötig, wenn Force Feedback und/oder der normale Joystick-Widerstand gewünscht ist. Ohne NT funktioniert der stick ebenfalls, nur eben wie ein stick ohne federn.
ob das beim vorgänger auch so ist, kann ich leider nicht testen mangels gameport. hab zwar den vorgänger auch gespielt, aber kann mich nicht mehr erinnern auf welche art.
|
|
Back to top |
|
|
Munk Forum-Nutzer
Joined: 30 Jun 2001 Posts: 2140
Location: Herzogenrath
|
Posted: 27.09.2009, 19:47 Post subject: |
|
|
VID_0000 und PID_0000 klingen entweder nach falscher Firmware oder Kommunikationsprobleme.
Da würde ich mir mal die US-Busleitungen auf der Platine anschauen.
|
|
Back to top |
|
|
Grendel Forum-Nutzer
Joined: 24 Jun 2004 Posts: 208
Location: Oregon, USA
|
Posted: 28.09.2009, 08:50 Post subject: Re: Status Grendel V2 Nachbau |
|
|
playa028 wrote: | Puh, den Adapter hatte ich "from scratch" in 2 Tagen aufgebaut, aber es wird ein unbekanntes Gerät angezeigt (Geräteinstanzkennung: USB \ VID_0000 & PID_0000 \ 6 & 271eBB6 & 0 & 4, sonst alles UNKNOWN). |
Das laesst auf ein Problem auf der USB Seite schliessen -- Z-Dioden richtig 'rum drin ? Die Ringseite muss an D-, D+ angeschlossen sein, die andere Seite an GND. Sind die Dioden <= 500mW ? Groessere (zB. 1W) Funktionieren nicht.
playa028 wrote: | Was gibt es für Möglichkeiten, das Ding zu debuggen? |
Gedult und die LED Hast Du ein Oszilloskope zur Verfuegung ?
playa028 wrote: | Es handelt sich um einen Force Feedback Pro (part number 96755).
Ah ich sehe, das Joystick - Netzeil von Microsoft (12 Volt, 1.3A) fehlt mir!
Brauch ich das für korrekte Funktion? |
Nein.
playa028 wrote: | Beobachtung: die Led blinkt sehr schnell, wenn ich den Joystick anstecke, erlischt sie. |
Generel ein gutes Zeichen -- der Konverter versucht nach dem Starten einen Joystick zu finden, solange kein Stick gefunden wurde ist der USB Port nicht aktiv. Im Detail:
- LED an fuer 4ms
- warte 208ms
- sende trigger zum Stick
- LED an 4ms
- warte 8ms
- Daten empfangen ? Ja, Stick gefunden -> weiter ins Hauptprogramm
- sende 3DP initialisierung, dauert etwa 5ms
- 3DP gefunden ? Ja -> weiter ins Hauptprogramm
- Sequenz wiederholen
Ohne Joystick sollte die LED etwa mit 5Hz blinken. (siehe init_hw() in 3DPro.c)
Sobald ein Joystick initialisiert und erkannt wurde aktiviert der Konverter den USB Port, dies ist der Zeitpunkt wo der PC mitkriegt dass ein Geraet an dem Port angeschlossen ist. Der PC leitet dann die USB Initialisierung ein. Die Fehlermeldung "unbekanntes Geraet, VID 0000/PID 0000" bedeuted das die USB Kommunikation nicht funktioniert. Die LED wird erst wieder aktiv wenn Joystick-Daten uebertragen werden, nach der USB Initialisierung..
playa028 wrote: | Ich habe, um den Stromverbrauch zu optimieren, einen 10K Vorwiderstand + eine low power LED benutzt (I = 0,3 mA) Könnte das die Funktion beeinträchtigen? |
Nein. Generel gilt -- je weniger Strom die LED verbraucht desto besser. Sollte allerdings zur Not auch mit 15mA funktionieren..
playa028 wrote: | Masseführung scheint korrekt, nur das USB-Gehäuse ist geerdet (DB-15 nicht). |
Korrekt, spielt fuer die USB Kommuniktion allerdings keine grosse Rolle.
playa028 wrote: | Gibt es bei den USB-Printmontage-Steckern unterschiedliche Pinbelegungen (D- und D+ vertauscht ?) |
USB A & B Verbinder sind immer wie folgt belegt:
1 VBus (5V)
2 D-
3 D+
4 GND
Die Nummern sollten auf dem Verbinder stehen. Fuer Mini-Verbinder muesste ich die Belegung nachschlagen.
playa028 wrote: | Ein USB Hub mit externem Netzteil brachte keine Verbesserung. |
Ich kann nicht garantieren dass der Konverter an einen externern Hub funktioniert, am besten zum Debuggen erstmal weglassen.
playa028 wrote: | P.P.S.: Attiny461-20 mit Quarz 12 Mhz, Fuses wie im GIF zu Rev.2, Hexfile: 3dpv12t4.hex
Brenner : (AVR ISP mk II Clone); AVR Studio 4.17 zeigt Bytes 0xff, 0xdd, 0xdf. |
Korrekt. extended: 0xFF, high: 0xDD, low: 0xDF.
|
|
Back to top |
|
|
playa028 Forum-Nutzer
Joined: 22 Jul 2009 Posts: 6
Location: Kempten
|
Posted: 28.09.2009, 11:36 Post subject: |
|
|
Danke schonmal herzlich für die Tips!
Ich schrieb
Quote: |
F: Was gibt es für Möglichkeiten, das Ding zu debuggen?
A: Geduld und die LED Winken Hast Du ein Oszilloskope zur Verfuegung ?
|
Ja, ein altes analoges, dazu ein Billig-DSO auf AVR Basis. Mal gucken.
P.S.: Die Steckerbelegung irritiert mich etwas. Am FFP-Stecker (männlich) sind 2 Pins (11, 12 oder 15 ?? -- Joystick ist momentan nicht hier..) die am Konverter unbelegt sind. Midi wird nur für Force Feedback benutzt, stimmts?
Die Benennungen mit '' habe ich aus der Schaltung Rev.2 entnommen. Dahinter stehen in Klammern die analogen Belegungen (aus dem Netz)
Code: |
PIN Funktion | analoge Belegung (Kommentar)
1 Vcc (+5V)
2 "BX1" (Knopf 1)
3 "X1" Analog 1 (Joystick 1 X-Achse)
4 GND
5 GND
6 NICHT BELEGT Analog 2 (Joystick 1 Y-Achse)
7 "BX2" (Knopf 2)
8 NICHT BELEGT Vcc (+5V)
9 Vcc (+5V)
10 "BY1" (Knopf 3)
11 NICHT BELEGT | Analog 3 (Joystick 2 X-Achse)
12 NICHT BELEGT | PC Gameport: MIDI TXD (sonst : GND)
13 "Y2" Analog 4 (Joystick 2 Y-Achse)
14 "BY2" (Knopf 4)
15 NICHT BELEGT | PC Gameport: MIDI RXD (sonst: Vcc +5V)
|
Last edited by playa028 on 28.09.2009, 19:38; edited 2 times in total |
|
Back to top |
|
|
playa028 Forum-Nutzer
Joined: 22 Jul 2009 Posts: 6
Location: Kempten
|
Posted: 28.09.2009, 11:51 Post subject: |
|
|
EDIT 2: ES FUNKTIONIERT JETZT - mit den für 0,5 W spezifizierten Z-Dioden für 3,3 Volt.
froi
Thx an alle Mitstreiter.
-------------------------
EDIT 1: die Z-Dioden HATTEN wirklich 1 W. Reichelt liefert eben, was gerade da ist, wenn man ZD 3.6 anklickt !
Erkennungsmerkmal: die 1 Watt Glasdioden sind circa 2 mm dick (Photo unten), die richtigen mit 0,5 Watt ungefähr 1,5 mm.
Weglassen ist nicht wirklich eine Option - da 5 V nicht USB konform sind. Low: 0-0,8 V + High: 2,7-3,6 V
Quelle: www.usb.org/developers/docs/
-------------------------------
Überlegung: könnte man nicht die ganze Schaltung statt mit 5 V mit 3,6 Volt versorgen (2 x 1 N 4148 in Reihe bei USB-Vcc, der Tip ist aus dem Netz) ... ?
Description: |
verantwortlich für USB Fehler: ursprünglich eingebaute Glasdioden, circa 2 mm (Typ ZD 3.6; 1 Watt ?) |
|
Filesize: |
20.69 KB |
Viewed: |
706 Time(s) |
|
Last edited by playa028 on 29.09.2009, 10:35; edited 7 times in total |
|
Back to top |
|
|
Grendel Forum-Nutzer
Joined: 24 Jun 2004 Posts: 208
Location: Oregon, USA
|
Posted: 28.09.2009, 20:38 Post subject: |
|
|
playa028 wrote: | P.S.: Die Steckerbelegung irritiert mich etwas. Am FFP-Stecker (männlich) sind 2 Pins (11, 12 oder 15 ?? -- Joystick ist momentan nicht hier..) die am Konverter unbelegt sind. Midi wird nur für Force Feedback benutzt, stimmts? |
Korrekt. MIDI Kanal 6 wenn ich mich da richtig erinnere. Gibt leider keine Doku zu den Effekt-Kommandos.
playa028 wrote: | EDIT 2: ES FUNKTIONIERT JETZT - mit den für 0,5 W spezifizierten Z-Dioden für 3,3 Volt. Beweisfoto hängt dran.
froi |
Meinen Glueckwunsch
playa028 wrote: | EDIT 1: die Z-Dioden HATTEN wirklich 1 W. Reichelt liefert eben, was gerade da ist, wenn man ZD 3.6 anklickt !
Erkennungsmerkmal: die 1 Watt Glasdioden sind ungefähr 2 mm dick, die 0,5 W ungefähr 1 mm.
Weglassen ist nicht wirklich eine Option - da 5 V nicht USB konform sind. Low: 0-0,8 V + High: 2,7-3,6 V
Quelle: www.usb.org/developers/docs/ |
Weglassen funktioniert mit etwa 90% aller USB Ports, wuerde ich persoenlich allerdings nicht machen. 3V3 kann an einigen Ports oder AVRs Problematisch sein. Stromverbrauch ist etwas geringer mit 3V6.
playa028 wrote: | Überlegung: könnte man nicht die ganze Schaltung statt mit 5 V mit 3,6 Volt versorgen (2 x 1 N 4148 in Reihe bei USB-Vcc, der Tip ist aus dem Netz) ... ? |
Jein -- der Tiny koennte wohl mit 3.6V/12MHz laufen, allerdings braucht der Joystick 5V und liefert 5V Signale..
Last edited by Grendel on 29.09.2009, 21:46; edited 3 times in total |
|
Back to top |
|
|
playa028 Forum-Nutzer
Joined: 22 Jul 2009 Posts: 6
Location: Kempten
|
Posted: 29.09.2009, 14:41 Post subject: Letzte Frage in dem Zusammenhang? |
|
|
Doku zum FF Protokoll habe ich hier gefunden : http://madfab.free.fr/ff/ + http://madfab.free.fr/ff/patch-2.4.18-ff-4.gz (Patchdatei, ab Abschnitt "Force Feedback 2 driver, inspired by iforce.c"). Es ist natürlich die USB Variante, die Effektprogrammierung dürfte aber im Prinzip gleich ausfallen, bis auf die Übermittlung auf Midi Kanal 6.
Frage ist natürlich, ob es etwas nützt, wenn der passende HID-Treiber auf PC-Seite fehlt...
----------------------------------------------------------------------------------------------------
P.S.: ich hab mal versucht den Code testweise mit WinAVR und AVR Studio 4 zu übersetzen.
Beim Laden der 3DPro.aps Projektdatei wird die fehlende 'iarcompat.h' Datei von AVR Studio 4.17 b677 angemeckert
( der Build Prozess läuft allerdings durch.. ).
Ist die Installationsreihenfolge (erst WinAVR, dann AVR Studio...) wichtig?
Wann kommt das Makefile, bzw. der Makefile - Editor von WinAVR ins Spiel?
Last edited by playa028 on 29.09.2009, 16:30; edited 5 times in total |
|
Back to top |
|
|
Grendel Forum-Nutzer
Joined: 24 Jun 2004 Posts: 208
Location: Oregon, USA
|
Posted: 29.09.2009, 21:43 Post subject: Re: Letzte Frage in dem Zusammenhang? |
|
|
playa028 wrote: | Doku zum FF Protokoll habe ich hier gefunden : http://madfab.free.fr/ff/ + http://madfab.free.fr/ff/patch-2.4.18-ff-4.gz (Patchdatei, ab Abschnitt "Force Feedback 2 driver, inspired by iforce.c"). Es ist natürlich die USB Variante, die Effektprogrammierung dürfte aber im Prinzip gleich ausfallen, bis auf die Übermittlung auf Midi Kanal 6.
Frage ist natürlich, ob es etwas nützt, wenn der passende HID-Treiber auf PC-Seite fehlt... |
DI koennte einen generellen FF Treiber beinhalten. Das Hauptproblem liegt allerdings im Design des Konverters, hat einfach nicht genug Bandbreite fuer ein HID FF Gereat. Das Rev 3 Design haette genug CPU Power, allerdings fehlen dann immer noch die MIDI Kommandos. Der FF2 Treiber laesst sich leider nicht als Referenz fuer den FFP verwenden.
playa028 wrote: | P.S.: ich hab mal versucht den Code testweise mit WinAVR und AVR Studio 4 zu übersetzen.
Beim Laden der 3DPro.aps Projektdatei wird die fehlende 'iarcompat.h' Datei von AVR Studio 4.17 b677 angemeckert
( der Build Prozess läuft allerdings durch.. ). |
Ah, ja, iarcompat.h ist im aktuellen USB Treiber nicht mehr vorhanden. Hab vergessen die .aps Datei anzupassen..
playa028 wrote: | Ist die Installationsreihenfolge (erst WinAVR, dann AVR Studio...) wichtig? |
Nein, AVRS sucht beim Start nach WinAVR.
playa028 wrote: | Wann kommt das Makefile, bzw. der Makefile - Editor von WinAVR ins Spiel? |
Gar nicht, zum Compilieren einfach F7 im AVRS druecken Das Makefile kann zum Compilieren ohne AVRS benutzt werden.
|
|
Back to top |
|
|
Do_Checkor Administrator
Joined: 19 Nov 2000 Posts: 7772
Location: Oldenburg (Oldb.)
|
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You can attach files in this forum You can download files in this forum
|
|