Game Controller MIDI

June 20th, 2018
music
Expression controllers can make synthesized instruments sound much better, but they're generally pretty expensive. For example, the breath controller I've been playing with cost me EUR 132. There's nothing fundamentally expensive about it, just a low volume product. Which got me thinking: is there some commonly mass produced device that gives a smooth range of outputs? What about a game controller?

I've never been into console gaming so I don't know much about controllers, but after looking at some pictures it looked like the PS4 one is well laid out for joystick use, so I ordered one ($26, shipped):

It connects via USB, and pygame can read from it out of the box:

>>> import pygame
>>> pygame.init()
(6, 0)
>>> j = pygame.joystick.Joystick(0)
>>> j.init()
>>> while True:
...   for event in pygame.event.get():
...      print(event)
...
<Event(7-JoyAxisMotion {
  'joy': 0,
  'value': 0.003906369212927641,
  'axis': 0})>
<Event(7-JoyAxisMotion {
  'joy': 0,
  'value': -1.000030518509476,
  'axis': 4})>
...

Since music is so latency sensitive (though maybe not for expression controllers?) I didn't want to have to go via python, so I decided to write something small against the OSX native API. The docs for the native API are pretty annoying, so the SDL source was a helpful guide.

It's ready and working, and you can try it out:

  • Build it from source (github):

    $ git clone https://github.com/jeffkaufman/gcmidi.git
    $ cd gcmidi
    $ make run
    
  • Download a binary:

    $ wget https://www.jefftk.com/gcmidi
    $ chmod ugo+x gcmidi
    $ ./gcmidi
    
It presents as a virtual MIDI controller named "game controller" with ten continuous controller outputs on CC-20 through CC-29.

Comment via: google plus, facebook, r/WeAreTheMusicMakers, substack

Recent posts on blogs I like:

Information control, isolation, and ideological abuse

[I have freelanced for a number of effective altruist organizations, such as the Centre for Effective Altruism and 80,000 Hours.

via Thing of Things March 11, 2026

The Newest Technology in Frozen

There are lots of different things in Frozen that are new-ish, but my dad and I were wondering: what is the actual newest thing in Frozen? This led me to watch Frozen a lot while taking notes. Some of the things I found included: Elastic hair-ties A safety …

via Lily Wise's Blog Posts March 1, 2026

2025-26 New Year review

This is an annual post reviewing the last year and setting intentions for next year. I look over different life areas (work, health, parenting, effectiveness, etc) and analyze my life tracking data. Highlights include a minimal group house, the usefulness…

via Victoria Krakovna January 19, 2026

more     (via openring)