Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Launchpad X #17

Open
wants to merge 165 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
165 commits
Select commit Hold shift + click to select a range
12bc156
Launchpad X
worikgh Dec 16, 2020
e3cbf2d
Initial commit
worikgh Dec 19, 2020
81df145
Initial commit
worikgh Dec 19, 2020
cb0a844
Be quiet!
worikgh Dec 19, 2020
ad8e157
Launchpad X
worikgh Dec 22, 2020
81dd412
Update midi
worikgh Dec 25, 2020
2bf0958
Starts with a @reboot griode.sh entry
worikgh Dec 25, 2020
6bb0f02
Prior to reformatting the SD card. A backup.
worikgh Dec 28, 2020
8b7b1b1
Initial commit
worikgh Dec 28, 2020
23ba831
Reads commands from a pipe
worikgh Dec 29, 2020
9cc6797
Commands to griode via named pipe taking shape
worikgh Dec 29, 2020
2ef6cf2
Changing scale by command redraws the surface of the Launchpad
worikgh Dec 30, 2020
ed6a064
Comments
worikgh Dec 31, 2020
b866dac
Comments
worikgh Dec 31, 2020
de68f0c
Implemented command `draw`
worikgh Dec 31, 2020
5490727
Comments
worikgh Jan 2, 2021
e5aaf5c
Added command to set instrument
worikgh Jan 2, 2021
1823be9
Initial commit
worikgh Jan 3, 2021
c8695ad
Initial commit
worikgh Jan 3, 2021
66bf427
Upgraded?
worikgh Jan 5, 2021
9b70218
Initial commit
worikgh Jan 7, 2021
77e7faf
Initial commit
worikgh Jan 7, 2021
5d907d2
Debugged commands
worikgh Jan 7, 2021
3ab4e77
Write pid file
worikgh Jan 7, 2021
dc2dbc6
Edited
worikgh Jan 7, 2021
030752d
Enable the command pipe
worikgh Jan 7, 2021
8372a1b
Here it is....
worikgh Jan 7, 2021
ca7b2ee
Rename front-end
worikgh Jan 7, 2021
744abdb
LV2 Plugins started...
worikgh Jan 8, 2021
5cc55e7
Initial commit
worikgh Jan 9, 2021
559f048
Initial commit
worikgh Jan 9, 2021
2ece086
Updated
worikgh Jan 9, 2021
6ebba07
Name change
worikgh Jan 9, 2021
ef96f76
Compiles
worikgh Jan 9, 2021
a976da3
Initial commit
worikgh Jan 11, 2021
2a348e1
Commit to safety!
worikgh Jan 11, 2021
2d57e7f
Improve class detection
worikgh Jan 12, 2021
2429359
Partially ready
worikgh Jan 12, 2021
c160e06
Update `README.md`s to track design changes
worikgh Jan 12, 2021
f44b180
Delete old and no longer used code
worikgh Jan 12, 2021
0c89e73
Add jack and griode commands
worikgh Jan 14, 2021
b4784bd
Updated path
worikgh Jan 14, 2021
192d086
Got griode commands working
worikgh Jan 17, 2021
4832943
Commenting
worikgh Jan 17, 2021
59b5a9d
Order ports numerically
worikgh Jan 19, 2021
f77ff6a
Improved Port data
worikgh Jan 19, 2021
0d0ca96
Bug fix
worikgh Jan 19, 2021
487ba0b
Grouping commands
worikgh Jan 19, 2021
9cfe6be
Directly command mod-host
worikgh Jan 19, 2021
423d0ac
Added griode commands
worikgh Jan 19, 2021
56868ed
Updated writing history
worikgh Jan 21, 2021
56debcd
Reads commands off stdin
worikgh Jan 22, 2021
2b510f9
Fix history writing
worikgh Jan 22, 2021
f35da64
Tidied up
worikgh Jan 22, 2021
b0a7d0f
Add control for root note
worikgh Jan 22, 2021
d69f02a
Updated
worikgh Jan 22, 2021
6f3bd35
Initial commit
worikgh Jan 22, 2021
f771d12
Minor fixups
worikgh Feb 2, 2021
9155446
iIt is what it is....
worikgh Feb 2, 2021
79fcc16
No longer uses a pipe to send commands to `griode`
worikgh Feb 18, 2021
5510e1b
Set default root note. Not persistant
worikgh Feb 18, 2021
47bf89b
Major changes and development
worikgh Feb 18, 2021
87a1551
Evolving....
worikgh Feb 18, 2021
fe83c15
Set root note via offset from AQ
worikgh Feb 18, 2021
d5aea42
Initial commit
worikgh Feb 20, 2021
3a34b3c
Renamed
worikgh Feb 20, 2021
ce89c7b
Initial commit
worikgh Feb 20, 2021
1f85b59
Times in log messages and selcted instrument in Model
worikgh Mar 2, 2021
07e3249
Run commands to set up the instrument
worikgh Mar 2, 2021
0b2e218
Minor update
worikgh Mar 2, 2021
e6dd0aa
Compile chrono
worikgh Mar 2, 2021
fa32d66
Fix documentaton
worikgh Mar 2, 2021
3092012
Visual indication of which instrument selected
worikgh Mar 2, 2021
fcd43cd
Implement command "root" properly
worikgh Mar 13, 2021
86747a9
Started illustrating setting up the instrument
worikgh Mar 13, 2021
e54438f
Quieten timing warnings so they are only emitted at debug level
worikgh Mar 13, 2021
c78d2a4
Set timing information into log method. Set font onfront end
worikgh Mar 13, 2021
bd36f27
Give the realnames for instruments so the front end can see them
worikgh Mar 13, 2021
2f16d70
Animate selection while being processed
worikgh Mar 13, 2021
3186a20
Fix(!) home directory
worikgh Mar 13, 2021
f13d350
minor edits
worikgh Mar 13, 2021
1da4096
Get LEDs to display correctly if key shifted by a root command
worikgh Mar 13, 2021
0130991
Minor change
worikgh Mar 15, 2021
789a69a
Translate jack ports
worikgh Mar 15, 2021
723d6cf
Translate jack ports
worikgh Mar 15, 2021
f00cd53
Initial commit
worikgh Mar 22, 2021
d867429
Improved error handling and uses `find_lv2`
worikgh Mar 22, 2021
0fab97e
A mostly working build
worikgh Apr 3, 2021
387eb2b
Explicit name spacing for ws types.
worikgh Apr 3, 2021
3790f8e
Compiles
worikgh Apr 19, 2021
b4ff83e
Minor change
worikgh Apr 19, 2021
a2c46b5
Still a chaotic mess!
worikgh Apr 19, 2021
2a77a4a
Two examples of songs/settings
worikgh Apr 19, 2021
0f7df2e
Compiles
worikgh Apr 26, 2021
413f69a
Revove dead code
worikgh Apr 26, 2021
2492cac
Minor edit
worikgh Apr 26, 2021
ad96f0c
Connect up the song files and internal data structures
worikgh Apr 26, 2021
c07c2db
Minor edits
worikgh Apr 26, 2021
156bede
Compiles cleanly
worikgh Apr 30, 2021
5aeb36c
Minor edits
worikgh May 1, 2021
8e4c1ca
Reorder functions to group more rationally
worikgh May 1, 2021
5c512ac
minor edit
worikgh May 1, 2021
ac9d1a3
Process INIT from server
worikgh May 1, 2021
9950c47
Cleaned up a bit
worikgh May 1, 2021
008dcb4
Cleaning up....
worikgh May 1, 2021
d8340e8
Starting to read from pedal
worikgh May 5, 2021
ebed104
Reads keys for pedal
worikgh May 6, 2021
6b27787
Missed code for ncurses
worikgh May 6, 2021
16111ec
Reviewed and updated niitialisation code for `ServerState`
worikgh May 6, 2021
d7aea96
Added ncurses
worikgh May 8, 2021
202cd20
Initial commit
worikgh May 9, 2021
88ad16a
New environment variable to find directory and start of pedlal code
worikgh May 9, 2021
67b75c8
Reorganised
worikgh May 9, 2021
84b76ce
Add Debug to structures
worikgh May 9, 2021
0877998
Adding Pedal
worikgh May 9, 2021
bcd12a8
Edited for clarity
worikgh May 15, 2021
f339c2b
Inintial commit
worikgh May 15, 2021
f6edc78
Minor edits
worikgh May 15, 2021
dd80dfe
Use env var PATH_MI_ROOT
worikgh May 16, 2021
b6a2ffd
Use env var PATH_MI_ROOT
worikgh May 16, 2021
be5a1f6
Typo
worikgh May 16, 2021
92e3012
Added pedals
worikgh May 16, 2021
1a64ff5
Got rid of unneeded abstractions
worikgh May 16, 2021
ce136da
Do not need these abstractions
worikgh May 16, 2021
8c6ec7d
Add persistent state
worikgh May 18, 2021
41a1fb9
Implemented saving state
worikgh May 20, 2021
6668f29
Initial commit.
worikgh May 20, 2021
9fca5c5
Started implementation of pedal switching
worikgh May 20, 2021
fc37c2c
Updated logging so it goes to a file
worikgh May 22, 2021
4a99f3a
Updated names and comments
worikgh May 22, 2021
0f68540
Tidy up...
worikgh May 25, 2021
ec45de1
Working!
worikgh May 26, 2021
728a57b
Make valid
worikgh May 27, 2021
7a98b32
Better logging
worikgh May 27, 2021
85c99c5
typo fix
worikgh May 27, 2021
fd8603c
Minor changes
worikgh May 27, 2021
80aaf87
DO not start front end (yet)
worikgh May 27, 2021
9673209
Fixup case error
worikgh May 27, 2021
26bea4a
Move client to its own directory
worikgh May 29, 2021
9e88785
Move client to its own directory
worikgh May 29, 2021
bb76bf8
Move client to its own directory
worikgh May 29, 2021
804cbd3
Move client to its own directory
worikgh May 29, 2021
b007a5f
Move client to its own directory
worikgh May 29, 2021
54bb38c
Bugfix
worikgh May 29, 2021
db3bf80
Moving client....
worikgh May 29, 2021
cf797e7
Formatted (cargo fmt) and invalid instruments no longer panic
worikgh May 29, 2021
eec2c9a
Working.
worikgh May 29, 2021
2de4fda
Tweek colours
worikgh May 29, 2021
ba68bfe
Quietened. Nothing on stdout now
worikgh May 29, 2021
fc78095
Renable pedal via stdin
worikgh May 29, 2021
0ffd8a4
Redircting output from sub-processes
worikgh May 31, 2021
00ec0f2
Pedal display
worikgh May 31, 2021
458cb90
Manage to delete client communication channels when client closes
worikgh Jun 1, 2021
587c432
Code cleanups
worikgh Jun 8, 2021
ec8c586
Connect to VU meters if present
worikgh Jun 9, 2021
84ab52c
Update for new CSS
worikgh Jun 9, 2021
620bfba
Minor edits
worikgh Jun 9, 2021
5321e54
Not specific to particular pedals
worikgh Jun 9, 2021
8371fd1
Minor change
worikgh Jun 9, 2021
f224e29
idempotent and run front end
worikgh Jun 9, 2021
011d5ad
Logging changes
worikgh Jun 9, 2021
1f81972
Minor change
worikgh Jun 9, 2021
93f64f2
Updated
worikgh Jun 9, 2021
7a99c32
Updated
worikgh Jun 9, 2021
85824d8
Replumbed....
worikgh Jun 9, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions launchpad.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,28 @@ class LaunchpadPro(LaunchPad):
mido.Message("sysex", data=[0, 32, 41, 2, 16, 10, 99, 0]),
]

class LaunchpadX(LaunchPad):

palette = "RGB"
message2led = {}
led2message = {}
for row in range(1, 9):
for column in range(1, 9):
note = 10*row + column
message2led["NOTE", note] = row, column
led2message[row, column] = "NOTE", note
for i, button in enumerate(ARROWS + MENU):
control = 91 + i
message2led["CC", control] = button
led2message[button] = "CC", control

setup = [
# This SysEx message switches the LaunchPad Pro to "programmer" mode
mido.Message("sysex", data=[0, 32, 41, 2, 12, 14, 1]),
# And this one sets the front/side LED
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does the LP X also have a "front" LED? (If not, I'll remove that sysex since it might be confusing 😅 )

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wondered about that.
I cannot see one.
I have no other Launchpad to compare it to

mido.Message("sysex", data=[0, 32, 41, 2, 16, 10, 99, 0]),
]


class LaunchpadMK2(LaunchPad):

Expand Down