sylwester

[success] Project: MidiBox SEQ V4 with Standalone LaunchPad Pro as BLM

16 posts in this topic

Hello,

Some time ago Novation has partially* open-sourced their LaunchPad Pro Source Code. The Device contains a STM32F103,
has 8x8 Pads with Aftertouch and Velocity Sensitivity, DIN MIDI IN/OUT, USB-MIDI and 32 General Purpose Buttons.

I always loved the MidiBox Sequencer V4 and built my first just after it got released. I never built a BLM, though, but played
around with the Emulated version, which I liked!

Now my Idea: Implementing the BLM Firmware on the LaunchPad Pro and connect it via DIN-MIDI/USB-Host to the SEQv4
as a Standalone device without the need for a PC as BLM-Launchpad-Proxy.

My question is now, if I have to look into the source code of the PIC based BLM or if there is any protocol reference for the
BLM protocol? I guess maybe looking at the Lemur BLM Code would make sense?

https://github.com/dvhdr/launchpad-pro - Contains proprietary HAL

 

UPDATE: Success! BLM-compatible firmware based on the Launchpad Pro template working. Still has some weird bugs,
which look to me a bit like memory corruption or maybe OOM. Anyone wants to help? 

Edited by sylwester
1 person likes this

Share this post


Link to post
Share on other sites

Video of the success:

 

 

@Admin: Can someone move this maybe to the BLM category if its more appropriate?

3 people like this

Share this post


Link to post
Share on other sites

Cool. I presume this uses the Pro's open firmware API that was released? Did you reuse any MIOS BLM code or have to reimplement from scratch?

(Now how to we scrape the labels off teh round buttons and light them up? :) )

Share this post


Link to post
Share on other sites

So, did you change the Launch Pad Pro's firmware or did you modify the MIDIbox Seq V4 to get this to work??

Share this post


Link to post
Share on other sites
Just now, ilmenator said:

So, did you change the Launch Pad Pro's firmware or did you modify the MIDIbox Seq V4 to get this to work??

I have written a BLM-compatible firmware for the Launchpad Pro. No modifications on the Seq V4 side required :)

4 hours ago, mongrol said:

Cool. I presume this uses the Pro's open firmware API that was released? Did you reuse any MIOS BLM code or have to reimplement from scratch?

(Now how to we scrape the labels off teh round buttons and light them up? :) )

This uses the "SDK" from the first post, which contains a proprietary library for the Hardware Abstraction Layer. I re-implemented most of the things from scratch. For the first prototype I borrowed the SysEx state machine from MIOS.

Edited by sylwester

Share this post


Link to post
Share on other sites
47 minutes ago, sylwester said:

I have written a BLM-compatible firmware for the Launchpad Pro. No modifications on the Seq V

Superb! You should get paid by Novation for making their products more attractive...

Share this post


Link to post
Share on other sites
Just now, ilmenator said:

Superb! You should get paid by Novation for making their products more attractive...

Haha thanks ;) I will do some code cleanup and then I will release my stuff as open source.
One of the reasons that I did it was actually because the out-of-the-box functionality of the launchpad was not so useful for me.

Share this post


Link to post
Share on other sites

Congratulations Sylwester! This will be an excellent tool for the MIDIbox community. :cheers:

Edited by Smithy
1 person likes this

Share this post


Link to post
Share on other sites

That's actually really cool! I have put in some work to write a BLM proxy that runs headless on a Raspberry PI -> https://github.com/westlicht/midibox-blm-proxy

Unfortunately, while working perfectly fine on my Linux workstation, I had some sporadic lag issues when running it on a PI.

One problem I see with your approach is, that it will be difficult to handle more than one Launchpad, right? The USB host on MIOS does not yet support HUBs if I remember correctly. My goal was to have too Launchpad Minis to get a larger grid, which is quite cool for programming drums. I should really pick this up again and make this work with the PI. Wanted to check out if I can get rid of the lags when using some soft-realtime kernel.

Because I have started building a DIY modular synth over the past few months, my time is kinda drained by that :)

Share this post


Link to post
Share on other sites

@westlicht Thanks! Yes, it's true that handling more than 1 BLM could present a problem, but I imagine it would be possible to daisy-chain them and add some firmware mods to allow for that (or use STM32F4 core, which allows for USB Host, so the LP can be attached via USB).

Share this post


Link to post
Share on other sites

Sorry for laming . I'd just wanna say something about that great nice work

 

Share this post


Link to post
Share on other sites

Great work! I am very eager to try this as well!

By any chance, in case you have updated your Launchpad code, could you make that available as well? Will be happy to give you feedback of course!

Share this post


Link to post
Share on other sites

Hi Sylwester! Looks pretty nice!

Is there any "manual" for this, or how would I exactly be using its functions?

Thanks,
F.

Share this post


Link to post
Share on other sites

@FlavioB:

Operation is more or less the same as all other BLMs, so most likely, you will not need a "manual".

However, I started writing my own BLM for the Launchpad Pro some weeks ago. While it is not finished yet, I can give you a recent version if you give me feedback in return :)

Just PM me if you are interested...

Share this post


Link to post
Share on other sites

Hi Karg. Thanks for your reply. I'm actually a Launchpad S owner and about to sell it. Don't know when/if I will buy a "Pro" one, but I'll take you in account when it'll come to that for me!

BR,

Flavio

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now