Raspberry Pi – Joystick tester

Doet de oude joystick het nog die al jaren ongebruikt in een doos op zolder ligt? Hoe leuk zou het zijn om deze eens op de Raspberry Pi aan te sluiten.

De joystick
Allereerst moeten we de joystick beter leren kennen. Eigenlijk zijn het een aantal schakelaars die een specifieke functie hebben. In dit voorbeeld ga ik van een joystick uit waar alleen de basis functies op zitten, te weten rechts, links, omlaag, omhoog en ‘vuur’.

Het schema van de joystick met de vrouwelijke DB9 connector ziet er als volgt uit:

In principe zijn alle ‘analoge’ joysticks van deze functies voorzien. Soms zit er een snelvuur optie op en zijn knoppen voor het gemak of uiterlijk dubbel uitgevoerd. Hoe dan ook, met vijf schakelaars kun je over de basisfuncties beschikken en de meeste games spelen.

DB9 connector op de pc
Voor het USB tijdperk was de seriële poort erg populair op de pc. Bij de meeste systemen werd een zgn. bracket meegeleverd met daarin een mannelijke DB9 connector. Een beetje hobbyist heeft er nog wel een liggen.

De connector is erg handig om de joystick, de vrouwelijke variant van de connector, er op aan te sluiten. Het enige dan ons dan nog rest is het verbinden van de flatcable connector met de GPIO poorten van de Raspberry Pi.

Onthoud dat de rode draad altijd pin 1 vertegenwoordigt.

Op basis van de joystick en de flatcable pinout kunnen we de volgende aansluit tabel opstellen.

DB9 female connector van de joystick

Ben je niet in bezit van een DB9 male connector, dan kun je met losse draden de female connector verbinden met een breadboard, minder chic maar net zo effectief. Neem hiervoor dan eenkernige draden.

De Code
Wat ons rest is de software waarmee de schakelaars van de joystick getest kunnen worden. Ik heb een klein Python programma geschreven waarmee je alle functies van de joystick kunt testen.

In het script heb ik de interne pull-up weerstanden geactiveerd. Wil je deze niet gebruiken, dan zal je echte weerstanden (10kΩ) tussen de schakelaars en de GPIO poorten moeten plaatsen.

Joystick DB9 naar USB

Nagenoeg alle spelbesturingen hebben tegenwoordig een USB aansluiting. Om je oude joystick met DB9 female stekker op de USB poort van een moderne computer zoals de Raspberry Pi of pc te kunnen gebruiken zal je het signaal moeten omzetten. Hiervoor kun je een zogenaamde USB Joystick adapter gebruiken. Ze zijn er in verschillende uitvoeringen verkrijgbaar. De basis van de compacte circuits is veelal een Leonardo Tiny.

USB joystick adapters hebben een prijs rond de 30 euro.

Have A Nice Day!