Closed darkmarthur closed 1 year ago
user mode 1 and 2 are a relic of the original launchpad. LP95 does not support the new custom modes introduced with the last generation of Launchpads.
Oh! That explains it.
I am going to make a new branch trying to implement the new generation keyboard layout.
PS: awesome project!!!!!! love it
Oh wow, thanks Mario. I never investigated, because i never used these new modes. note that for LP95, i switch the newer lauchpads into a "programmer mode" by sending a sysex. i am not sure the custom modes are avalable in this mode. maybe you can switch back and forth...
On Thu, 5 Jan 2023 at 13:41, Mario Ricardo Dominguez Quiroz < @.***> wrote:
Oh! That explains it.
I am going to make a new branch trying to implement the new generation keyboard layout.
PS: awesome project!!!!!! love it
— Reply to this email directly, view it on GitHub https://github.com/hdavid/Launchpad95/issues/70#issuecomment-1372457254, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEKKGWWC54AM7FIL7634G3WQ32SLANCNFSM6AAAAAATNCYEGI . You are receiving this because you modified the open/close state.Message ID: @.***>
Hello @hdavid any progress with this?
I have managed to change to the original user modes.
Adding the following code to MainSelectorComponent.py
on def _setup_sub_mode(self, mode):
method:
elif mode == "user 1":
self._control_surface.show_message("USER 1 MODE" )
self._setup_session(not as_active, not as_enabled)
self._setup_step_sequencer(not as_active)
self._setup_step_sequencer2(not as_active)
self._setup_mixer(not as_active)
self._setup_device_controller(not as_active)
self._setup_instrument_controller(not as_active)
self._setup_user_mode(True, True, False, True)
self._update_control_channels()
self._mode_index = 1
self._osd.clear()
self._osd.mode = "User 1"
sys.stderr.write('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> User 1')
self._launchpad._send_midi(STD_MSG_HEADER + (LP_MINI_MK3_ID, STANDALONE_MODE, 6, SYSEX_END))
self._osd.update()
In particular sending de syxex message to enter mode (similar in user modes 2 and 3)
self._launchpad._send_midi(STD_MSG_HEADER + (LP_MINI_MK3_ID, STANDALONE_MODE, 6, SYSEX_END))
Aditional code to reference _send_midi
from MainSelectorComponent
is required but I don't have time to make it prettier
But to return to programmer mode again by clicking on the mode buttons, I have not been able to detect the event. The controller does not emit any MIDI messages, but looking at the code of the original LaunchPads I think that from the Live libraries through the object BackgroundComponent
it is possible to do so. Although I haven't been able to get it to work at the moment. Maybe it will neccesary save and restore the context of Launchpad95.
honestly, i dont use the user modes at all. so i am not really looking into this one. especially because it would be launchpad model specific. (old launchpad dont need this programmer mode).
also, i do not remember how all this sysex stuff works. i hacked that years ago...
feel free to have a go at it, but i wont be able to support you on that one.
Sorry @hdavid , really my question was directed to @darkmarthur
Hey @dbanshee , can you elaborate how you managed to make it partly work? It seems that nothing changes if i add your lines of code, user mode 1 works exactly the same way that it was before. What code for _send_midi is required? And what should be added for user mode 2? Have you looked into programmers reference for launchapd mini mk3? Maybe it can help? Sorry, i'm a complete script noob
https://github.com/hdavid/Launchpad95/blob/ec21fc546b50ddddacc217d609dbb8de08e3218a/Settings.py#L26
Default User Modes not working
After uncommenting the following lines, the default Launchpad User Mode 2 is not working since it is not displaying the default keyboard notes with Novation format (see image attached), instead, the LP matrix is turned off with single pad flashing in green.
The "User Mode 1 - Drum Rack " works fine, although it does not respect the original grid colors: https://www.youtube.com/watch?v=mHvqwH0xQq8
Expected User Mode 2