Skip to main content

Easily make MIDI messages that take advantage of the 24 bit RGB LEDs on a Novation Launchpad MK2

Project description

Launchpad_rgb

The Launchpad MK2 by Novation has 80 24 bit RGB LEDs, but the normal MIDI message protocol only allows for 127 total colors.
How do you access the full power of 63*63*63 colors? System exclusive messages of course!

MIDI System Exclusive messages are messages that are exclusive to a specific device type. The purpose is so that device manufacturers can implement features outside of the MIDI specification while staying in-band.

Awesome! Now what?
System exclusive messages are more complicated than normal messages. They need a header that includes the device-id, which specifies what device the messages are for, and two sub-ids, which specify what feature to invoke.

This library is a convenient way to create system exclusive messages that can access the full 24 bit RGB color available on the Launchpad MK2.

A Message object stores all the notes that will change and what their new color will be. The instance methods of Message modify that data and return the Message, so you can chain calls. To get the actual sysex data (not including the 0xF0 to start and 0xF7 to end the message), call the object like a function. The returned data is ready to be put into any MIDI message library, such as mido.

Example:

msg = Message().row(0, 1, 0.5, 0.25)
msg.note(1, 1, 1, 0.5, 0.25).note(8, 1, 1, 0.5, 0.25)
data = msg()
print(data) -> [0, 32, 41, 2, 24, 11, 11, 63, 31.5, 15.75, 12, 63, 31.5, 15.75,
               13, 63, 31.5, 15.75, 14, 63, 31.5, 15.75, 15, 63, 31.5, 15.75,
               16, 63, 31.5, 15.75, 17, 63, 31.5, 15.75, 18, 63, 31.5, 15.75,
               22, 63, 31.5, 15.75, 29, 63, 31.5, 15.75]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

launchpad_rgb-1.0.0.tar.gz (1.9 kB view details)

Uploaded Source

Built Distribution

launchpad_rgb-1.0.0-py3-none-any.whl (2.0 kB view details)

Uploaded Python 3

File details

Details for the file launchpad_rgb-1.0.0.tar.gz.

File metadata

  • Download URL: launchpad_rgb-1.0.0.tar.gz
  • Upload date:
  • Size: 1.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for launchpad_rgb-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b37012fb74a766a2e73ebe5c4f9609cf37b497da7455f30d04bfe6fc25f1c5b8
MD5 fb14302569ab2f75813a201a958f4529
BLAKE2b-256 0c4e775090d5bcf60b7aa8355d47d676df62c9a679a114cdd4dfed929856cb2c

See more details on using hashes here.

File details

Details for the file launchpad_rgb-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for launchpad_rgb-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4554897aad3e75f8fbe07f726df4c4f5a6c408937b98c4f60dc7c15141647a3f
MD5 01ce48e240dc6256ec20660bbd0d940a
BLAKE2b-256 1ea276c5d2730b21024d2dd6ce77057378cfdb6e84fe9d9c716d8f2d9fd77d50

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page