All Projects → cstoquer → midiFighter24

cstoquer / midiFighter24

Licence: MIT License
Firmware and tools for Arduino based 24 buttons MIDI controller

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
Makefile
30231 projects
HTML
75241 projects

Projects that are alternatives of or similar to midiFighter24

BMC
BMC the Badass MIDI Controller, all-in-one Scalable MIDI Controller library with a companion Desktop/Browser Editor App for Teensy LC, 3.2, 3.5, 3.6, 4.0, 4.1
Stars: ✭ 34 (+88.89%)
Mutual labels:  midi-controller
midi-grid
DIY midi controller project
Stars: ✭ 60 (+233.33%)
Mutual labels:  midi-controller
SWONIC-Dynamic-Controls
Dynamic Controls turns your ROLI Lightpad BLOCK into a flexible MIDI control surface
Stars: ✭ 24 (+33.33%)
Mutual labels:  midi-controller
BS2-Web
Novation Bass Station II Web interface
Stars: ✭ 34 (+88.89%)
Mutual labels:  midi-controller
OpenDeck
Software and hardware platform for simpler building of MIDI controllers with support for DMX.
Stars: ✭ 438 (+2333.33%)
Mutual labels:  midi-controller
MiDispositivoMIDI V3
Open source Arduino MIDI controller.
Stars: ✭ 49 (+172.22%)
Mutual labels:  midi-controller
midi-eye
Ruby MIDI input event listener
Stars: ✭ 24 (+33.33%)
Mutual labels:  midi-controller
Raspberry-MIDI-Controller
A python script that sends MIDI signals from the Raspberry (client) to a Computer (host)
Stars: ✭ 44 (+144.44%)
Mutual labels:  midi-controller
electra.one
Public files for electra.one project
Stars: ✭ 21 (+16.67%)
Mutual labels:  midi-controller
patchmaster
MIDI processing and patching system
Stars: ✭ 22 (+22.22%)
Mutual labels:  midi-controller
Arduino-USBMIDI
Allows a microcontroller, with native USB capabilities, to appear as a MIDI device over USB to a connected computer
Stars: ✭ 98 (+444.44%)
Mutual labels:  midi-controller
Pedalino
Smart wireless MIDI foot controller for guitarists and more.
Stars: ✭ 105 (+483.33%)
Mutual labels:  midi-controller
lpp-performance-cfw
Performance-optimized Launchpad Pro Firmware modification
Stars: ✭ 61 (+238.89%)
Mutual labels:  midi-controller
zmidimap
Program for mapping midi signals to shell commands
Stars: ✭ 13 (-27.78%)
Mutual labels:  midi-controller
smartbcr2k
Sits between your midi controller and your DAW to make your controller smarter
Stars: ✭ 21 (+16.67%)
Mutual labels:  midi-controller
hs-lr-midi-schwurbler
Happy Shooting Community - DIY Lightroom Hardware Controller
Stars: ✭ 16 (-11.11%)
Mutual labels:  midi-controller
TouchOSC
A collection of examples and modules for TouchOSC MK2
Stars: ✭ 30 (+66.67%)
Mutual labels:  midi-controller

Midi Fighter 24

Firmware and tools for Arduino based 24 buttons midi controller

front

see it in action here

Setup Arduino to send Midi via USB

Install DualMocoLUFA on the Arduino 8U2's chip (look inside the dualMocoLUFA folder in this repository to find code and instructions)

dualMocoLUFA Project is Copyright (C) 2013 by morecat_lab http://morecatlab.akiba.coocan.jp/

Schematics

In a nutshell

  • the 24 Arcade buttons are read by 3 74HC165 shift registers connected on Arduino's pin 2(LOAD), 3(CLOCK), and 4, 5, 6 (shift registers DATA)
  • 2 x 7 led digit display are controlled by 2 74HC595 shift registers connected on Arduino's pin 9(LATCH), 8(CLOCK) and 10(DATA). These shift registers are set in series.
  • two menu button on the side are connected to Arduino's pin 11 and 12 (with a pullup resistor)

Buttons module

Push buttons are connected to the arduino by using 74HC165 shift registers.

Here is the schematic of one module for 8 buttons. I used 2 5x1 headers for the connection to the buttons. In the schematic, this is the labels A, B, C, D and E, F, G, H. The last pin of each headers are connected to VCC. Pull-up resistors are 10KΩ.

button1

A group of 4 buttons are connected to one header like this:

button_connect

This module is duplicated for each group of push 8 buttons. For 24 buttons, 3 of these modules are connected together like this:

buttons2

And here are some photos of how I implemented this module using perf boards.

button module 1

button module under

Display module (optional)

This module is optional, and is for displaying information using 2 seven segments LED. It is using 74HC595 shift registers to control the 16 LED using 3 pins of the Arduino. 16 LED consume quite a lot of power for the Arduino, so in the code, I take care of turning ED off after a delay.

If I had to put more LED, I would use a MAX7219 LED matrix controller as this chip use way less power.

This is the schematic for one 74HC595. Resistors are 4.7KΩ.

display1

Here is how you connect the seven segments display

7segmets

2 of these modules are daisy chained together like so:

display2

Some photos of how I implemented this module using perf boards:

display module 5

display module 4

display module 2

Connection to the Arduino

Finally, here is how the two modules are connected to the Arduino

arduino

Photos of how everything connects together:

both modules

inside

inside empty

More photos

left

back

right

shiftregisters

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].