Arduino-AppleMIDI-Library
arduino_midi_library
Our great sponsors
Arduino-AppleMIDI-Library | arduino_midi_library | |
---|---|---|
7 | 19 | |
290 | 1,523 | |
- | 1.4% | |
0.0 | 0.0 | |
over 1 year ago | 5 months ago | |
C++ | C++ | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Arduino-AppleMIDI-Library
-
When using my personal FastLED program on ESP8266, the first LED constantly flashes green; but it works perfectly with WLED. How has WLED solved the issue?
Changing the order of libraries didn't change anything. BUT with that in mind, I tried disabling one of the libraries I wasn't using at the moment: AppleMIDI. The flashing mostly stopped. It flashed for a few times in the beginning, and then stopped almost completely.
-
I made these festive MIDI LED Christmas Trees! RGB colours linked to notes. A little bit of fun to brighten up our music! Based on ATMEGA328.
Just FYI, network MIDI is a thing and you may want to look into it if you haven't before.
-
MIDI-controlled LED strip on keyboard (WS2812B controlled by ESP8266)
As a bonus, the controller I'm using (ESP-01) also has Wi-Fi, so I added on the AppleMIDI library for receiving wireless MIDI (and sending, too, if I so choose). As a final touch I added VirtuinoCM to switch between 3 modes: - MIDI-response - some generic animations - manual colour control.
-
After 2 decades of this, I finally bought the one and only piece of hardware that could turn me into an elite veteran, old man engineer..... TRACKBALL MOUSE
I'm talking WiFi MIDI, not Bluetooth lol. And I'd DIY it myself using a wall-wart for uninterrupted power, or perhaps a USB power bank which is far more reliable and environmentally friendly than 9V batteries.
This is the sketch that worked for me pretty much out of the box. Mac OS has built-in support for Wi-Fi MIDI, but in Windows you'll need to install rtpMIDI. Once the Arduino sketch is loaded and running, rtpMIDI is installed, and both the computer and ESP32 are connected to the same network, the ESP32 should show up in the rtpMIDI control panel.
arduino_midi_library
-
Ask HN: What is the most impactful thing you've ever built?
The Arduino MIDI Library [1]. Back in 2009, I learned C++ to build it and control my guitar effects pedals with custom electronics as part of my engineering degree.
[1] https://github.com/FortySevenEffects/arduino_midi_library
-
Help to made a piano midi and cv controller for eurorack (see my comment below).
Your project can be broken up into a number of subprojects. For keyscanning you don't need additional hardware, just the pins from the ribbon cables going to the arduino's digital pins and ground. Since the keys are just switches (two per key, the time difference between the two switches closing giving the source of velocity), you could start with some examples from the Arduino MIDI library (https://github.com/FortySevenEffects/arduino_midi_library). To test MIDI sending you don't even need to start from the keybed just yet, and if you do, you can start with a single key. Once you've got that part figured out end to end (key press/release generates note on/off events) you can work on iterating through the matrix, CC controls etc. MIDI out can be done in different ways. With a 5 pin DIN plug you'd just need two 220 ohm resistors.
-
What frequency should a timer interrupt be to receive MIDI messages?
On an Arduino compatible platform the configuration of the baud rate at the bare metal layer is taken care of by the library when you call its begin() method. Looking at the example code included with the library it appears that there are no timer interrupts or anything like that required of you in order to use it. Another thing that jumps out is that the call to read() returns a non-zero value if anything has been received that you should use to predicate whether any further attention needs to be spent on it by your code. You may know this but it wasn't apparent from the loop() { MIDI.read\`() }` example that you gave above.
The MIDI protocol specifies that data is sent at 31250 baud over UART. Standard MIDI messages can be up to three bytes at a time, sometimes two, or one. The Arduino MIDI library's "read()" function, which captures MIDI messages is suggested to have the lowest latency possible, as suggested at the bottom of this page. Here's the example from that page to show how the read() function works:
-
Is it possible to build your own Teensy? What's the catch?
Click the link to github (second link in the article) and there's all the source code: https://github.com/FortySevenEffects/arduino_midi_library
-
Best Arduino model for USB MIDI instrument?
I haven't used it yet but there is this. They give more details so specifics about board support may be there too. It looks nice at first glance
-
MIDI-controlled LED strip on keyboard (WS2812B controlled by ESP8266)
It's the exact circuit on Wikipedia connected to a serial input on your microcontroller, read by the Arduino MIDI library, and then translated to LED using the FastLED library. MIDI pitches go from 0-127 - but even a full-size keyboard uses a max of 88 keys (the one shown in the post is 61-key), so you'll have extras.
-
Need Help With MIDI to CV
You can look at the examples of the MIDI library on github. Here for example, https://github.com/FortySevenEffects/arduino_midi_library/blob/master/examples/Basic_IO/Basic_IO.ino
-
Midi Control WS28 Leds.
Not all Arduino devices can function as MIDI device over USB, I think. You can find all the info here: https://github.com/FortySevenEffects/arduino_midi_library
-
I made an arduino drum machine: ginTronic CR-1
yes usb midi. and i used a special bit of kit to flash the arduino to be recognised asa midi controller (sorry can't remember exact details, was a while ago. look here)
What are some alternatives?
Control-Surface - Arduino library for creating MIDI controllers and other MIDI devices.
arduino-midi-recorder - Let's build an Arduino-based MIDI recorder!
rtpmidid - RTP MIDI (AppleMIDI) daemon for Linux
TaskScheduler - Cooperative multitasking for Arduino, ESPx, STM32, nRF and other microcontrollers
FastLED_examples - FastLED example code, tests, demos, etc
AUnit - Unit testing framework for Arduino platforms inspired by ArduinoUnit and Google Test. Used with EpoxyDuino for continuous builds.
Arduino-USBMIDI - Allows a microcontroller, with native USB capabilities, to appear as a MIDI device over USB to a connected computer
FastLED - The FastLED library for colored LED animation on Arduino. Please direct questions/requests for help to the FastLED Reddit community: http://fastled.io/r We'd like to use github "issues" just for tracking library bugs / enhancements.
midi2cv - Arduino-based MIDI to CV converter
mpu6050 - MPU6050 Arduino Library