What's new
iamretro

Wow! It seems you have yet to create an account with us! Needless to say, you have to register in order to get the full "iamretro" experience! You will then be able to create your own topics, reply to posts and be an active member of the MOST prolific community in Greece (even further than that, but we're being modest for now). So don't delay! REGISTER!

Usb joystick/gamepad adapter για amiga - Commodore -Atari -Atari ST!

ikonsgr

Retro Starter
Joined
Dec 8, 2016
Messages
17
Kαλώς σας βρήκα παιδιά!

Λοιποοοοοόν, μετά από παρότρυνση του Master.... Geo (ένας είναι ο Lord of Polygyros :) ) , θα ξεκινήσω μία σειρά από παρουσιάσεις "πατεντών"- κατασκευών για τους αγαπημένους μας home micros! Αφορούν κυρίως το 9pin Joystick port, και πως μπορούμε να συνδέσουμε... ΠΑΠΑΔΕΣ! :D

Ξεκινάω λοιπόν με το ποιο πρόσφατο "δημιούργημά" μου, και ίσως και το ποιο εντυπωσιακό-χρήσιμο απ'ολα:
Εναν μετατροπέα για δυνατότητα σύνδεσης σύγχρονου Usb Joystick/ Gamepad σε όλους τους home micros!

Το ανωτέρω Project το είχα "όνειρο" εδώ και χρόνια. Δυστυχώς όμως, η υλοποίηση ενός τέτοιου μετατροπέα δεν είναι καθόλου εύκολη, γιατί σε αντίθεση με το "ανάποδο" (δηλαδή σύνδεσης παλιού Joystick σε usb θύρα σε pc), όπου ο μετατροπέας λειτουργεί ως usb συσκευή-client, εδώ χρειάζεται να γίνει usb hosting (κάτι σαν usb server) ,δηλαδή θα πρέπει ο μετατροπέας να κάνει... ότι και ένα Pc (αναγνώριση συσκευής, παραμετροποίηση, αποκωδικοποίηση των σημάτων κτλ) !
Να μη σας τα πολυλογώ, πριν λίγους μήνες ανακάλυψα μία μικρή εταιρία στην αγγλία όπου βγάζει adapters για usb mouses, joysticks, ps2/ps3 controllers κτλ, ( http://www.hobbytronics.co.uk/usb-host-mini ) οι οποίοι χρησιμοποιούνται κυρίως για arduino projects, ρομποτικούς ελέγχους κτλ. Η ουσία είναι, ότι αυτός ο adapter κάνει όλη την "βρώμικη" δουλειά του usb hosting και σου παρέχει μία σειριακή έξοδο με κωδικοποιημένες τις διάφορες κινήσεις των joypads,των κουμπιών, των μοχλών κτλ.
ΑΥΤΟ ΗΤΑΝ! Εδώ είμαστε, λέω, πόσο δύσκολο θα είναι να μετατρέψω την σειριακή έξοδο στα πολυπόθητα πανω-κάτω-αριστερά-δεξιά-fire; Τελικά αποδείχτηκε ότι δεν ήταν και τόσο εύκολο, αλλά για να μην σας τα πολυλογώ, μετά από αρκετό ψάξιμο, διάβασμα και... "παίξιμο" με κάτι "μαγικά" τσιπάκια που λέγονται microcontrollers (αυτό που λέμε "computer in a chip"), κατάφερα να προγραμματίσω έναν PIC 16F684 ώστε να πέρνει την σειριακή έξοδο του usb host board που σας έλεγα, και να σου δίνει τα πολυπόθητα πάνω-κάτω-αριστερά-δεξιά και fire ενός κλασικού 9Pin joystick! :thumbup:
Και.....
Ιδού το αποτέλεσμα!

Όπως θα διαπιστώσετε από τις φωτογραφίες που έχω ανεβάσει στο ebay, έχω κάνει εκτεταμένο τεστάρισμα με πάρα πολλά Joystick, gamepads κτλ. Το εκπληκτικό είναι ότι ο μετατροπέας φαίνεται να δουλεύει ακόμα και με τιμονιέρα (!), όπως και με κάτι περίεργα joystick σαν το microsoft sidewinder! Aπ'ολα όσα δοκίμασα, μόνον κάτι φτηνιάρικα gamepads δεν δούλεψαν τελικά. Επίσης με ένα πολύ φτηνό adapter Usb->ps2 adapter που βρίσκεις στο ebay, μπορείς να συνδέσεις ακόμα και controller από Playstation 2!

Το σχηματικό διάγραμμα της όλης κατασκευής είναι αυτό:


Όπως βλέπετε, είναι μία εύκολη κατασκευή (τα μόνα που χρειάζεστε είναι ο usb host board, ο PIC 16F684 και ένα DB9 female connector για τη σύνδεση με το Joystick, τροφοδοσία παίρνει απευθείας από το 9pin joystick port), αφού η "βρώμικη" δουλειά γίνεται με το λογισμικό που τρέχει στους 2 Pic controllers.
Όποιος ενδιαφέρεται μπορώ να το στείλω αντικαταβολή με 26euro σύνολο.
ΟΜΩΣ, ως παλαιό μέλος της retro computer κοινότητας και επειδή δεν θέλω να νομίσει κάποιος ότι έκανα την παρουσίαση μόνο για να.... "πουλήσω την πραμάτια μου" , όποιος είναι του... "Do It Yourself" , μπορεί να αγοράσει μόνος του το USB host board απο την hobbytronics, και εγώ, με λίγα ευρώ θα του στείλω τον Pic 16F684 με φορτωμένο το πρόγραμμα, για να φτιάξει μόνος του τον μετατροπέα βάσει του παραπάνω σχεδίου ! ;) Υπόψην, ότι αυτό το κάνω για πρώτη φορά εδώ, οπότε, "μην σας ξεφύγει" γιατί.... :D

Αναμείνατε λοιπόν στο ακουστικό σας, σύντομα θα ακολουθήσουν και άλλες παρουσιάσεις:

- Μετατροπέας για σύνδεση 15Pin Pc joystick σε Home micro (με όλες τις λεπτομέρειες για να το κάνετε μόνοι σας!)

- Πως μπορούμε να προσθέσουμε ΣΩΣΤΑ τα 5volt τροφοδοσίας στο Joystick port του Amstrad cpc, ώστε να μπορούμε να έχουμε autofire, αλλά και την δυνατότητα να χρησιμοποιήσουμε όλους τους adapters που είναι για 9pin joystick (για όσους δεν ξέρουν ο amstrad cpc αν και είχε 9Pin D joystick port, ΔΕΝ παρείχε τα 5volt που έχει το standard Atari gameport το οποίο διαθέτουν σχεδόν όλοι οι άλλοι home micros, C64, atari, atari st, amiga Κτλ)

- ΣΩΣΤΟΣ μετατροπέας για 2 Joystick στον amstrad cpc

- Και ένα "hi-tech" project που δεν το έχω ολοκληρώσει ακόμα: Ασύρματη bluetooth θύρα Joystick για home micros! :)


WE MAKE PAPADES WITH THE JOYSTICK PORTS ΛΕΜΕ!!!! :)
 

Attachments

  • USB_DB9_ADAPTER.jpg
    USB_DB9_ADAPTER.jpg
    87.6 KB · Views: 161

ikonsgr

Retro Starter
Joined
Dec 8, 2016
Messages
17
Και ένα teaser: Παίζει zynaps στον amstrad με ένα HAMA USB Joystick Controller;


Ελα ρε, fake θα είναι! :rofl:
 

Attachments

  • zynaps.JPG
    zynaps.JPG
    200.1 KB · Views: 156

geoanas

Commodore Vampire
Staff member
Comrade
Joined
Oct 21, 2012
Messages
7,302
Καλώς τον Γιάννη, τον μερακλή! Βλέπω δυναμικό ξεκίνημα κι αυτό με κάνει να γουστάρω ακόμη περισσότερο... :thumbup:

Μου αρέσει η πλήρης κάλυψη και ανάλυση του θέματος! ...

...με λίγα ευρώ θα του στείλω τον Pic 16F684 με φορτωμένο το πρόγραμμα, για να φτιάξει μόνος του τον μετατροπέα βάσει του παραπάνω σχεδίου !...

Τώρα τι να προσθέσω; ... Αυτό κι αν είναι προσφορά στην ρετροκοινότητα... Μπράβο, βρε :thumbup:
 

DAT-Alex

Retro Addict
Comrade
Joined
Jan 25, 2013
Messages
651
Μπράβο Jhonny πολύ καλή η πατέντα σου με τον 16F684 ως ενδιάμεσο(!) .
Υπάρχουν αρκετά πολύ καλά και φανταστικά Open source και General Public Release για όποιους ενδιαφέρονται ....σαν τα παραπάνω μου μας περιγράφεις.

tip: Μάλιστα αντι για τον 14pin 16F684 μπορείς να βάλεις τον 12F675 στα 8pin(!) για πιο μικρο-cool pcb ...αλλα σιγά λεπτομέρεια απλά ως έξτρα tip(!)
 

ikonsgr

Retro Starter
Joined
Dec 8, 2016
Messages
17
Xμμμ, η αλήθεια είναι ότι εξαρχής δεν ασχολήθηκα με τόσο μικρούς Pic γιατί θεώρησα ότι δεν θα είναι αρκετά ισχυροί. Ο συγκεκριμένος που λες έχει εσωτερικό κρύσταλλο στα 4Mhz και μάλλον δεν μπορεί να διαχειριστεί την σειριακή στα 9600. Αλλά βρήκα τον 12F683 ο οποίος είναι στα 8Μhz (όπως και ο 16F684), οπότε αφού έχει 6 Ι/Ο ,φτάνουν ίσα ίσα, οπότε λογικά θα μπορώ να χρησιμοποιήσω και αυτόν. Θα παραγγείλω μερικούς και θα κάνω δοκιμές να δω τι "παίζει". Βέβαια οι διαφορές στις τιμές είναι πολύ μικρές (30-40cents) αλλά αν τελικά δουλέψει θα μπορεί να γίνει σε ακόμα μικρότερο pcb όπως λες!
 

DAT-Alex

Retro Addict
Comrade
Joined
Jan 25, 2013
Messages
651
δεν θα εχεις πρόβλημα στα 9600 με τον internal 675 αλλα όπως λες πανε προς τον 683 αλλα εχει πιό μπελαλίδικο configuration (don't ask how I found it out!) ;)

*αν θελεις σου δανειζω εναν να παιξεις ;)
 

dR_wH0

Solder Noob
Staff member
Comrade
Joined
Mar 24, 2012
Messages
5,840
Νταξ αυτό να δώ και δεν θέλω τίποτα άλλο! Να συνδέσω το XBOX360 Wireless gamepad στην Amiga 600!!

Γιάννη μάλλον θα μου το φτιάξεις (με το αζημείωτο φυσικά)!!! Τέλειο!!!
 

antnik

Retro Addict
Comrade
Joined
Sep 30, 2014
Messages
599
Ωραία πράγματα Γιάννη. Μπράβο . Χαίρομαι που ήρθες στην παρέα. :thumbup:
 

Pluto63

Retro Addict
Comrade
Joined
Oct 14, 2014
Messages
775
Αλέξανδρε βάλε κανένα link σε αυτά τα open source projects γιατι έψαχνα πριν απο καιρό και δεν βρήκα τίποτα απο PC USB to 9 pin Atari adapter. Μόνο του Γιάννη τωρα τελευταία. Είχα αρχίσει να κοιτάω να φτιάξω κάτι παρομοιο μιας και είχα έτοιμο το hardware με ενα atmega8 για το USB to QL mouse που είχα φτιάξει αλλα με μπερδεύει πολύ ο προγραμματισμός του, τα pic ειναι πιο εύκολα.
 

ikonsgr

Retro Starter
Joined
Dec 8, 2016
Messages
17
Αλέξανδρε, έχω δοκιμάσει τον 16F676 και δεν δούλευε, οπότε ο 12F675 που είναι ακριβώς ο ίδιος, απλά με λιγότερα Ι/Ο, μάλλον δεν θα δουλέψει και αυτός. Από την άλλη, ο 12F683 είναι ίδιος με τον 16F684 που χρησιμοποιώ τώρα, απλά και πάλι με λιγότερα I/O. Τον F675 τον βρήκα με ~40cents τον ένα, ενώ τον F683 με ~55cents, οπότε δεν έχει νόημα να το "παιδεύω" και πολύ για τόσο "μεγάλη" διαφορά. :) Επιπλέον, ο κώδικας που έχω τώρα, είναι για τον 16F684 οπότε λογικά θα δουλεύει ως έχει, με ελάχιστες μετατροπές (βασικά στις ονομασίες των ports) και για τον 12F683.

Χρόνη, δεν ξέρω αν θα δουλέψει με xbox360 controller, εξαρτάται αν και κατα πόσο η κωδικοποίηση των σημάτων του είναι συμβατή με αυτά που αναγνωρίζει το firmware της hobbytronics. Πάντως, από τις δοκιμές που έκανα με πολλά gamepads και joysticks μόνον κάτι πολύ φτηνιάρικα (των 3-4euro) που δεν είχαν analogue mode δεν δουλέψαν. Το ωραίο είναι ότι αν προσθέσεις έναν πολύ φτηνό (1-2euro εχει νομίζω) usb/PS2 adapter μπορείς να συνδέσεις controller από playstation 2!
Η hobbytronics πάντως έχουν firmwares και για άλλα χειριστήρια, όπως για PS3, PS3 ασύρματο και... PS4 ασύρματο! Φαντάζεσαι να παίζεις στην amiga με ασύρματο PS4 χειριστήριο; Σκέτη Retro-φαντασίωση! :)
Και αφού υπάρχουν αυτά, σκέφτομαι μελλοντικά να φτιάξω και ειδικές εκδόσεις του adapter για ps3 και ps4 χειρηστήρια!

Pluto63, το firmware για το usb mouse στον SINCLAIR QL που λες, το έκανες εσύ; Γιατί, σίγουρα θα χρειαστούν πολλές αλλαγές στον κώδικα για να αναγνωρίζει usb joysticks,gamepads, χώρια που και η αποκωδικοποιήση των σημάτων που θα καταλήξουν στο DB9 joystick port είναι εντελώς διαφορετική απ'οτι σ'ενα Mouse. Πάντως, το να κάνεις usb hosting με microcontroller ΔΕΝ είναι ΚΑΘΟΛΟΥ εύκολο, ακόμα και με τα σύγχρονα εργαλεία που διαθέτουν οι σύγχρονοι Pics (π.χ. το Usb OntheGo που έχουν οι Pic όπως ο 24FJ64GB002 που έχει το usb host board) έχει τόσα πολλά πράγματα για παραμετροποίηση που πρέπει να φας τα νιάτα σου στο διάβασμα για να καταφέρεις να το κάνεις να δουλεψει σωστά! :)
 

dR_wH0

Solder Noob
Staff member
Comrade
Joined
Mar 24, 2012
Messages
5,840
Έχω τέτοιον αντάπτορα για PS1/PS2 gamepads σε USB! Στο πισί παίζει άψογα! Νομίζω και το XBOX360 θα παίξει! Αν ετοιμάσεις τίποτα, μπορώ να τα φέρω στον σύλλογο την Τετάρτη που έρχεται να τα δοκιμάσουμε!
 

ikonsgr

Retro Starter
Joined
Dec 8, 2016
Messages
17
Eχω έτοιμο έναν και τον φέρνω σχεδόν κάθε φορά που έρχομαι στον σύλλογο! Αν έρθεις την επόμενη φορά φέρε ότι χειριστήρια έχεις από κονσόλες να τα δοκιμάσουμε αν είναι! ;)
 

dR_wH0

Solder Noob
Staff member
Comrade
Joined
Mar 24, 2012
Messages
5,840
ikonsgr said:
Eχω έτοιμο έναν και τον φέρνω σχεδόν κάθε φορά που έρχομαι στον σύλλογο! Αν έρθεις την επόμενη φορά φέρε ότι χειριστήρια έχεις από κονσόλες να τα δοκιμάσουμε αν είναι! ;)

Τέλεια. Μπορεί να φέρω και το μωράκι μου μαζί (Την Α600 :p) για easy-play :)
 

dR_wH0

Solder Noob
Staff member
Comrade
Joined
Mar 24, 2012
Messages
5,840
Recap : Την Τετάρτη θα φέρω την 600ρα, τον USB->PS2 Adapter με ενα χειρηστήριο και το ασύρματο XBOX360 χειρηστήριο! Be prepared!! :lol: :lol:
 

nkary

Too Retro to post!
Comrade
Joined
May 20, 2012
Messages
4,431
dR_wH0 said:
Έχω τέτοιον αντάπτορα για PS1/PS2 gamepads σε USB! Στο πισί παίζει άψογα! Νομίζω και το XBOX360 θα παίξει! Αν ετοιμάσεις τίποτα, μπορώ να τα φέρω στον σύλλογο την Τετάρτη που έρχεται να τα δοκιμάσουμε!
 

dR_wH0

Solder Noob
Staff member
Comrade
Joined
Mar 24, 2012
Messages
5,840
Έχουμε πρόβλημα μικρέ ; Μήπως θές να σε μαστιγώσω με κανά USB extension cord ? :rofl: :lol: :lol: :rofl: :rofl:
 

nkary

Too Retro to post!
Comrade
Joined
May 20, 2012
Messages
4,431
μλκ μη τα λες έτσι, χαχαχαχα εσείς εκεί στο κλαμπ ανάψτε κάνα κερί έρχεται ο γιατρός :rofl:
 

geoanas

Commodore Vampire
Staff member
Comrade
Joined
Oct 21, 2012
Messages
7,302
Φαντάσου λέει να εμφανιζόμουν κι εγώ μαζί με τον γιατρό!



:rofl: :lol: :rofl: :lol: :rofl: :p
 

nkary

Too Retro to post!
Comrade
Joined
May 20, 2012
Messages
4,431
geoanas said:
Φαντάσου λέει να εμφανιζόμουν κι εγώ μαζί με τον γιατρό!



:rofl: :lol: :rofl: :lol: :rofl: :p


το σκίσαμε πάλι το θέμα
 

dR_wH0

Solder Noob
Staff member
Comrade
Joined
Mar 24, 2012
Messages
5,840
Γιάννη σορρυ φιλε για το pimping του θέματος πραγματικά, αλλά εγώ φταίω και οι δηλώσεις μου!! :rofl: :rofl: :rofl:

Ναι ρε θα έρθει κ ο βρυκόλακας μαζί μου την Τετάρτη και θα φέρει λέει.....τον Falcon για να παίξει Christmas Demo!!! :D :D :D :D :D
 
Top