Basic MIDI project to learn?

Hi All,

New here, hello to all the community!
and my ordered Zynthian should be delivered within hours :grinning:

I have developped on a Teensy an advanced MIDI sequencer, and would like to port it here so all can benefit (free of course) from this common hardware, which was not possible on my Teensy … but I am new in all this architecture and linux.

I have seen the page about new dev, but that seems to reinvent the wheel & doing a complete Zynthian again (linux stack, Git …) … too hard for me

So is there a way to have some dedicated folder, putting my python and GUI inside, maybe declaring that app or folder somewhere to have it listed in the zynthian apps list ?
(again MIDI seq, not looking for hardware features or real time signal processing … please K.I.S.S. principle if prossible)
Any way ? What is the closest “Midi Hello World” example I could study ?


1 Like

Hi Fabrice and welcome in the wonderfull Zynthian’s World. I hope you will enjoy your New musical toy.

First of all, if your Teensy based sequencer has some midi out capabilities, you will be able to send this to Zynthian.

Do you know that Zynthian already has a really nice step sequencer ? Because, if you plan to port your software from the Teensy architecture and its specific libraries to Linux, you may consider the real benefit of your software adaptation work regarding what’s already included in Zynthian.

1 Like

hi le51,

My Zynthian arrived in the meantime and I just assembled all OK. (was missing the 4xLCD spacers, but no big deal)

Sorry if my messag was unclear: of course I can drive via midi the Zynthian like any expander, but my objective is to make my original seq available (if some are interested?) for all, inside the Zynthian, wirth Zynthian HW. So a big SW port is what I should do.
And no, the seq already included is very different than mine. No competition here, not better or worse, just approach is very different.

So any midi simple hello world to recommend ?
I am looking for a basic program that can send and receive midi and interact with GUI.
A kind of “pitcher” program that receives a note on one channel, and send on another channel the same note increased by X semitones selected on 1 of the 4 incoders would basically demonstrate main what I need. Maybe also reading S1 to S4.
Any sample ?

I can’t tell you for a basic midi tutorial, as I’m not an expert in programing and in midi protocol too.
Maybe this may help:

But for sure, for a nice integration Into Zynthian ecosystem, using Zynthian’s software libraries and classes as a basis should be imho the best way to go.

But, once again, they are here users that are more qualified than me.

Hi @fff.

Currently Zynthian libraries are not very accessible with the core functionality wrapped up with its UI code. Extending it involves understanding (pretty much) all of it so there isn’t a simple way in. We hope to introduce a couple of features within the next year that should help: Community Plugin mechanism and full API. When these are implemented there should be sufficient documentation to allow relatively easy extension of Zynthian.

As author of the Zynthian’s sequencer I am interested to know what features or workflows it lacks. It may appear unorthodox but is designed to allow several workflows from a common module. It is novel but when you get to know it, can be quite powerful.

Thanks le51, but as you said, all the benefit is being on Zynthian for a shared complete HW+SW platform

@riban: What is the simplest midi project with inputs and outputs and how can I clone it and work from there ?

You could look at the jack examples, e.g. jack2/midiseq.c at develop · jackaudio/jack2 · GitHub