All Projects → jonthysell → Segacontroller

jonthysell / Segacontroller

Licence: mit
Arduino library to read Sega Genesis (Mega Drive) and Master System (Mark III) controllers.

Projects that are alternatives of or similar to Segacontroller

Nintendoextensionctrl
Arduino library for communicating with Nintendo extension controllers
Stars: ✭ 67 (+21.82%)
Mutual labels:  controller, arduino, joystick, arduino-library
Unswitch
🕹 A tiny event handler for Switch controllers!
Stars: ✭ 574 (+943.64%)
Mutual labels:  controller, gamepad, joystick
stick
Platform-agnostic asynchronous gamepad, joystick and flightstick library for the Rust Programming Language
Stars: ✭ 41 (-25.45%)
Mutual labels:  controller, joystick, gamepad
Gem
Good Enough Menu for Arduino
Stars: ✭ 54 (-1.82%)
Mutual labels:  arduino, arduino-library
Arduinothread
⏳ A simple way to run Threads on Arduino
Stars: ✭ 760 (+1281.82%)
Mutual labels:  arduino, arduino-library
Tembooforesp8266
Arduino Library of Temboo modified for ESP8266
Stars: ✭ 5 (-90.91%)
Mutual labels:  arduino, arduino-library
Arduino Homekit Esp8266
Native Apple HomeKit accessory implementation for the ESP8266 Arduino core.
Stars: ✭ 545 (+890.91%)
Mutual labels:  arduino, arduino-library
Ntc thermistor
[For Arduino and STM32] Library for working with a NTC thermistor.
Stars: ✭ 19 (-65.45%)
Mutual labels:  arduino, arduino-library
Dimswitch
Arduino library to control dimmable ballasts for fluorescent light tubes
Stars: ✭ 17 (-69.09%)
Mutual labels:  arduino, arduino-library
Ewma
Exponentially Weighted Moving Average Filter
Stars: ✭ 21 (-61.82%)
Mutual labels:  arduino, arduino-library
Button
An Arduino compatible library to make working with user input easier
Stars: ✭ 27 (-50.91%)
Mutual labels:  arduino, arduino-library
Brutal
Payload for teensy like a rubber ducky but the syntax is different. this Human interfaes device ( HID attacks ). Penetration With Teensy . Brutal is a toolkit to quickly create various payload,powershell attack , virus attack and launch listener for a Human Interface Device ( Payload Teensy )
Stars: ✭ 678 (+1132.73%)
Mutual labels:  arduino, arduino-library
Easyntpclient
Library to read time from Network Time Protocol (NTP) servers.
Stars: ✭ 20 (-63.64%)
Mutual labels:  arduino, arduino-library
Sigmadsp
A versatile Arduino library for interfacing with the ADAU1701 audio DSP
Stars: ✭ 30 (-45.45%)
Mutual labels:  arduino, arduino-library
Esp8266 Weather Station
ESP8266 Weather Station library supporting OpenWeatherMap, Aeris and other sources
Stars: ✭ 822 (+1394.55%)
Mutual labels:  arduino, arduino-library
Arduinojson
📟 JSON library for Arduino and embedded C++. Simple and efficient.
Stars: ✭ 5,456 (+9820%)
Mutual labels:  arduino, arduino-library
Grove bme280
Stars: ✭ 18 (-67.27%)
Mutual labels:  arduino, arduino-library
Cayennelpp
Library for Arduino compatible with Cayenne Low Power Payload
Stars: ✭ 51 (-7.27%)
Mutual labels:  arduino, arduino-library
Esp32 Ble Keyboard
Bluetooth LE Keyboard library for the ESP32 (Arduino IDE compatible)
Stars: ✭ 533 (+869.09%)
Mutual labels:  arduino, arduino-library
Guislice
GUIslice drag & drop embedded GUI in C for touchscreen TFT on Arduino, Raspberry Pi, ARM, ESP8266 / ESP32 / M5stack using Adafruit-GFX / TFT_eSPI / UTFT / SDL
Stars: ✭ 534 (+870.91%)
Mutual labels:  arduino, arduino-library

SegaController

Read Sega Genesis (Mega Drive) and Master System (Mark III) controllers in your Arduino sketches.

Installation

  1. Download SegaController.zip from https://github.com/jonthysell/SegaController/releases/latest
  2. Open the Arduino IDE
  3. Open "Sketch > Include Library > Add .ZIP Library..."
  4. Select the zip file you downloaded in step 1

Usage

The controller pins are as follows, looking face on to the (female) DB9 plug:

5 4 3 2 1
 9 8 7 6
  1. Connect controller pin 5 to +5VCC
  2. Connect controller pin 8 to GND
  3. Connect each remaining pin to a digital I/O pin on your Arduino
  4. In your sketch, include the SegaController library
  5. In your sketch, initialize a SegaController object with the digital pins you chose in step 3

Examples

There are two example sketches included which make use of the SegaController library. See "File > Examples > SegaController" in the Arduino IDE after installation. Make sure the digital pins you've wired matches those chosen in the code.

SegaControllerSerialReader

This sketch reads the state of a single controller and reports it via the Serial interface. Note that it only reports when the state has changed (a button has been pressed or released). It's good for validating you've got your pins wired up properly.

SegaControllerKeyboardReader

This sketch reads the state of a single controller and simulates key presses via the Keyboard interface. You can specify which buttons correspond to which keys in the sketch. This sketch requires a 32u4 based board (such as the Leonardo, Micro, or Due).

More Info

For details on how SegaController reads the controller's state, see How To Read Sega Controllers.

Copyright (c) 2017 Jon Thysell

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].