Skip to content

draeron/golaunchpad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

golang library for Novation's Launchpad

This library is to be use to communicate and control with a Novation Launchpad. Since i only have access to a single Mini Mk3 that is the only device supported but if i can

It use the rtmidi driver, which require CGO/gcc to compile on windows but no external libraries to run. I assume the requirement are the same on other platform.

Other than that, i've tried to limit external dependencies to a minimum. Examples contains basic setup and are use as integration tests.

Features

  • button coloring
  • button identification
  • layout & event abstraction
  • grid with pan support, wrap around option
  • Pulse / Flash color (through midi control)

Midi

  • auto detection
  • programmer mode
  • support for multiple launchpad device
  • Add support for other launchpad models (x, pro etc)
  • hot plugging / unplugging
  • Midi clock
  • SysEx message readback (ex: device inquiry)

SysEx command

  • Select Layout
  • Daw Fader Setup
  • LED Ligthing
  • Text Scrolling
  • Brightness Level
  • LED Sleep/Wake
  • LED Feedback
  • Programmer / Live Toggle
  • DAW / Standalone
  • Clear DAW State
  • Session Colour

Grid & layout

  • dynamic expansion of grid layout
  • color flash (sofware)
  • color animation (blending)

Other

  • linux / raspian
  • darwin

Examples

  • wave: colored wave upon pressing a pad button
  • scan: light up every button one after the other
  • text: display pressed coordinate as text
  • layout: press pad to light up buttons, use top button to select pages
  • grid: use arrow to scroll through a grid, user button toggle wrapping mode
  • blend: use row to change color with a blending fx

Ref