USB Joystick Controller mit Mega8

Gast #187034
Lesenswert?

Bitte beachten: Das ist nicht mein eigener Code. Ich finde nur das
Projekt bemerkenswert.

Wer einen Joystick selbst baut, kennt das Problem. Nutzt man den
Gameport, läßt die Genauigkeit sehr zu wünschen übrig. Modernen PCs ist
dieser sogar abhanden gekommen. USB-Controller kaufen? Leider nur mit
zwei Achsen und zwei Tasten. Viel zu wenig für den ambitionierten
Simulatorfan.

Abhilfe schafft ein USB Joystick Controller mit MEHR POWER. Mit einem
AVR Mega8 und ein paar passiven Bauteilen entsteht der ideale
DIY-Joystick mit 6 Achsen, 24 Tasten und Coolie-Hat.

http://www.mindaugas.com/projects/MJoy/

Der Quellcode basiert auf dem USB-Code von Igor Cesko und implementiert
einen HID-kompatiblen Joystick. Eine größere Variante mit noch mehr
Tasten und Funktionen ist mit einem Mega16 realisierbar. Der
Joystick-Controller wird von Windows XP/2000/98 etc. unterstützt und
benötigt keine zusätzlichen Treiber.

Mein Urteil: +++

ciao, Stefan.
Gast #646558
Lesenswert?

Du solltest mal die Application-Note AVR308 von Atmel durchschauen. 
AFAIK ist der Author des Projektes zu Atmel gegangen und hat den 
Quellcode als Application-Note veröffentlicht.

mfg, Stefan May.
#646576
Lesenswert?

ok danke für die info ich wuste bis dato nichtmal das atmel sowas hat 
... bin gerade erst dabei mich mit der materie zu beschäftigen

bist du sicher das AVR308 das richtige ist ?
ich habe da ne pdf gefunden die "AVR308: Software LIN Slave" beschreibt

ich wollte für ein tastatur projekt ein fertigen code nehmen da ich 
keine zeit habe mich jetzt intensiev damit zu beschäftigen und für eine 
cnc-fräse ein individuelles steuer element brauche.

ich bin aber dabei mich in die programmierung einzuarbeiten. schreibe 
gerade an einem programm das einen rc-kanal einlesen kann und dann 
verschiedene funktionen steuert.

gruß alex
#647131
Lesenswert?

hallo ralf,

ist es möglich an den ATmega8,  wovon ich bald 2 geliefert bekomme, auch 
eine tasten matrix anzuschließen um sage ich mal zB 16 oder 20 tasten 
zum bedienen von zb F3 F4 pfeil hoch/runter/rechts/links oder Bild 
ab/auf anzusteuern ?

weil ich eine fräs-software habe, die auch tastaturbefehle entgegennimmt 
um damit die fräse zu steuern.

jetzt hätte ich natürlich gerne direkt an der fräse ein "manuelles" 
bedienpult. kann man soetwas mit deiner software realiesieren ?

hallo steffan,

danke für die links allerdings weis ich nicht ob ich schon das nötige 
wissen habe mit diesen vielen dateien umzugehen... bis jetzt kann ich ne 
hex datei auf den chip brennen und bischel basik progen und 1.2. 
semester C programieren...

gruß alex
Gast #647303
Lesenswert?

Für einen Joystick:
Wenn man etwas Platz für die Platine hat, kann man sich auch beim 
Blödmarkt ein billig-USB-Gamepad für 8 Euro kaufen, die Platine 
rausmachen und an die Kontakte für die Knöpfe Kabel anlöten. 
Funktionierte bei mir prima. Das Gamepad, das ich verwendet habe, hatte 
10 Tasten und ein digitales Steuerkreuz (also praktisch nochmal 4 
Tasten). Für ein paar Euro mehr gibt's auch welche mit analogem 
Daumenknubbel.
#647478
Lesenswert?

ja das habe ich mir schon gedacht steffan, asembler kann ich noch 
garnicht... das haben wir glaube im 3. oder 4. semester erst



mit Codemercs hab ich schon so meine erfahrungen gemacht, dieser IOW24 
den ich habe ist echt scheiße zu programieren. naja vieleicht liegt es 
an meinem nicht so übermäßig vorhandenen wissen, auf jedenfall steige 
ich bei dem chip nicht durch.

ich weis nicht wie das mit den KEY-Warrior`s ist ob die einfacher zu 
programieren sind... wenn ja währe das natürlich ganz nett ne 8x8 matrix 
für 15€ aber wie gesagt ich brauche etwas fast fertiges was einfach 
funktioniert da ich nicht so viel zeit habe.

die variante mit dem ganepad hatte ich auchschon angedacht evtl ist das 
die einfachste variante.
Gast #647500
Lesenswert?

Öhm, programmieren am Key-Warrior? Das Ding meldet sich am PC als 
Tastatur. Du mußt nur noch die Tasten dranknoten und mit dem Programm 
von codemercs die Tasten festlegen. Nicht eine Zeile C oder Assembler, 
nur ein bisschen löten.

mfg, Stefan.
Gast #1102162
Lesenswert?

hallo zusammen hat einer von euch das teil achon zum laufen bekommen ?

ich hatte es mal aufen mega8 geschubst und die fusebits entsprechend dem 
AVR fuse calculator eingestellt auf FF(low) 99(high) also (ext 
cryst./resonator high freq. mit startup von 16K ck + 64ms)

ich hatte noch 2 alte 12MHz quarze rumfliegen  (währe möglich das der 
fehler dort liegt defekt ?) werde ich in den nächsten tagen noch klären

naja die tasten bzw die potis habe ich erstmal nicht angeschlossen aufem 
steckbrett.

ich werd mal pull up oder down wiederstände an die ADC eingänge hängen

bis jetzt hats noch nicht gefunzt das usb teil einzubinden im system.

es kam nur die meldung unbekanntes usb gerät erkannt. ich vermute mal 
das es was mit der clock einstellung zu tun haben könnte und der chip 
nicht richtig mit dem usb bus komuniezieren kann ?!?

vieleicht hab ich die fuse bits auch nur falsch gesetzt...

mit fuse bits hatte ich schon immer so meine probleme ^^

falls jemand des teil schon zum laufen bekommen hat bitte ich ihn mal 
seine einstellungen zu posten

vielen dank schonmal im voraus ^^
viele grüße
Gast #1103124
Lesenswert?

Ich finde das schon sehr geil das der 2 10bit achsen und 4 8bit achsen 
sowie 28 tasten hat

der joywarrior von codemercs hat da leider nur 4 8bit achsen und gerade 
mal 16 tasten...

insoweit finde ich das projekt sehr geil.

ich bin doch nicht der einzigste der solch einen chip geil findet ? oder 
?
Gast #1103290
Lesenswert?

oh ein verkannter komiker.... wenn das alles ist was das forum hier zu 
bieten hat ist das sehr sehr traurig....

nur mal so nebenbei ich drücke absichtlich nicht die shift taste weil 
das meine kostbare zeit kostet die für was anderes besser nutzen kann ;)

bitte keine besserwisserischen streber antworten !
Gast #1103459
Lesenswert?

an den Mega8 nicht da sind alle ports bis auf den reset pin belegt...

an nem mega 16 oder 32 ist das wieder was anderes....

wobei es gibt ne möglichkeit ein display über ports anzusteuern die auch 
gleichzeitig als taster benutzt werden aber ich glaube nicht das man mal 
so eben das umprogramieren kann ... ich kanns zumindest nicht ich 
asembler noch net checke und bis dato nur c und ein bischen basic 
kann...

hm hab jetzt die richtigen fuses herausgefunden EF für low und 99 für 
high muss es sein aber trotz der richtigen fuse läuft der chip noch 
nicht...

immer noch unbekanntes usb gerät... laut windows ob jetzt xp32 bit oder 
vista 64bit beides geht net
Gast #1103466
Lesenswert?

@tollerteppich:

Zur Shift-Taste: Wenn Leute von Deinen Geschreibsel Augenkrebs bekommen 
sind sie auch nicht gewillt, Dir zu helfen. Ich werde aus Deinen 
Ausführungen leider nicht schlau.

Vielleicht wäre es aber ratsam, Deine Beschaltung zu prüfen.

mfg, Stefan.
Gast #1203058
Lesenswert?

Hat noch irgendjemand den ursprünglichen Code rumliegen? Die oben 
angegebenen Application notes beziehen sich nicht auf einen Joystick 
sondern lediglich auf einen usb-rs232-adapter. Ich bräuchte aber 
speziell den joystick. Oder hab ich da jetzt was falsch verstanden?

mfg, Thomas
Gast #1204019
Lesenswert?

Die Sachen von CodeMercs sind a) verdammt teuer und b) kannst Du damit 
keinen Joystick mit mehr als 4 Achsen bauen. Zudem verwenden der 
JoyWarrior für 10 bit Auflösung einen schweineteuren A/D-Wandler von 
Maxim. Bäh pfui.

Mittlerweile gibt es aber ganz brauchbare USB-Stacks für den AVR, mit 
dem man auch den MJoy nachprogrammieren könnte. Dazu braucht man auch 
kein Assembler-Held mehr sein.

mfg, Stefan.
Gast #1204900
Lesenswert?

Servus,

Hier, bitteschön, noch ein paar Dateien, die ich noch von der Seite 
habe.

Ach, wie ich dankbar wäre, wenn ich die Miniprojekte von Elektor, die es 
zu der Zeit gratis gab finden könnte... Aber daraus hab ich gelernt ;)

MfG,

Stefan
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren