The Official DSI/Sequential Forum

My Mopho and Tetra programming software

cbx

My Mopho and Tetra programming software
« on: May 20, 2017, 04:32:34 AM »
I am releasing my programs I use to program my Mopho and Tetra. The software can also work with the Tetra, but there are some minor differences between them. I imagine it could be easily upgraded to work with a Prophet 08 too as it shares similar sysex/NRPN with these synths but I don't own one.

I will post a link to where you can download them. They are written in Python. You will need to install mido, which you can find directions for on the python website. I am using version 2.7, it will probably work on python 3.x with a little changes.

The following scripts I have developed:
Program the sequencer with a midi keyboard
realtime sequencer looping with cc knobs, if you have 64 knobs you can use it like a Korg SQ-10 sort of...
psuedo genetic algorithm patch generators


You will find some other scripts and eventually I will put more for the Wavestation A/D which is not a DSI but is I believe designed by Dave Smith. You are free under MIT license to use this software but please don't just steal code from me if you do use something give me some credit for it.

Keep in mind these are all scripts, there no GUIs and you will probably need to understand Python to use them. You will have to change the midi ports for your hardware and controller and also change the CCs to match what your controller generates.

https://drive.google.com/open?id=0B2lMm1IR7tHba2Y2ZGhfTlBIMzA
« Last Edit: May 20, 2017, 04:55:21 AM by cbx »

Re: My Mopho and Tetra programming software
« Reply #1 on: May 20, 2017, 05:33:04 AM »
I am releasing my programs I use to program my Mopho and Tetra. The software can also work with the Tetra, but there are some minor differences between them. I imagine it could be easily upgraded to work with a Prophet 08 too as it shares similar sysex/NRPN with these synths but I don't own one.

I will post a link to where you can download them. They are written in Python. You will need to install mido, which you can find directions for on the python website. I am using version 2.7, it will probably work on python 3.x with a little changes.

The following scripts I have developed:
Program the sequencer with a midi keyboard
realtime sequencer looping with cc knobs, if you have 64 knobs you can use it like a Korg SQ-10 sort of...
psuedo genetic algorithm patch generators


You will find some other scripts and eventually I will put more for the Wavestation A/D which is not a DSI but is I believe designed by Dave Smith. You are free under MIT license to use this software but please don't just steal code from me if you do use something give me some credit for it.

Keep in mind these are all scripts, there no GUIs and you will probably need to understand Python to use them. You will have to change the midi ports for your hardware and controller and also change the CCs to match what your controller generates.

https://drive.google.com/open?id=0B2lMm1IR7tHba2Y2ZGhfTlBIMzA

Is there a repo link?
Sequential / DSI / Pioneer stuff: OB-6 Desktop, Prophet 12 Desktop, Mono Evolver Keyboard, Pro 2, TORAIZ AS-1, Prophet-600 Gligli, Prophet 2000

chysn

  • *****
  • 1004
Re: My Mopho and Tetra programming software
« Reply #2 on: May 20, 2017, 05:43:33 AM »
The Google Drive download is a little flaky. You might consider releasing source code on GitHub.
DSI: DSM03; previously: Mopho Keyboard, Desktop Mopho, Evolver, DSM01
Hardware: Eurorack, Arturia MicroBrute
Software: macOS, Ableton, MuseScore2
Modular Grid: https://www.modulargrid.net/e/racks/view/354385
GitHub: https://github.com/chysn

cbx

Re: My Mopho and Tetra programming software
« Reply #3 on: May 20, 2017, 06:37:58 AM »
For some reason you have to wait a few minutes for the google drive to find it. I will look at how to setup a github, these scripts are all still messy I plan to clean them up I have more stuff I have not finished like a neural network patch generator as well.

I use Sound Tower editor and import the sysex generate by these algorithms as a base and then tweak it, the Sound Tower editor does something similar as well but I lost my registration key for the pro copy.

cbx

Re: My Mopho and Tetra programming software
« Reply #4 on: May 20, 2017, 06:41:58 AM »
Try this and you might have to wait a few minutes before it download, I think google tries to virus scan it but it only contains python scripts and sysex data

https://drive.google.com/open?id=0B2lMm1IR7tHba2Y2ZGhfTlBIMzA

It will 'say whoops there was a problem' just press the download button and wait a few minutes.

cbx

Re: My Mopho and Tetra programming software
« Reply #5 on: May 20, 2017, 07:33:39 AM »
Hmm, that guy was missing some files. This one contains scripts only for Mopho, and also a little midilooper you can use as an idea with using Mido and your synthesizers.

https://drive.google.com/open?id=0B2lMm1IR7tHbVUZoTmY0TlBDNGM

cbx

Re: My Mopho and Tetra programming software
« Reply #6 on: May 21, 2017, 01:54:18 AM »
You can now get them from github

https://github.com/Gaultus/mopho-hacker-scripts

chysn

  • *****
  • 1004
Re: My Mopho and Tetra programming software
« Reply #7 on: May 21, 2017, 05:15:34 AM »
Great start! I do have some advice, as someone who's built command-line tools in C for DSI instruments (including a genetic patch generator, and an Evolver custom waveform system):

Nobody will use it unless you build an interface for it.

So that's your next step.

Anybody who wants to use command-line tools will have the ability to build their own. Remember that you're dealing with a niche (desktop Mopho users who are interested in programming the sequencer with a MIDI keyboard) of a niche (desktop Mopho owners) of a niche (synth musicians). So you will not find an audience within yet another niche (power users who fall into the above niches who also can't write their own tools).

Now, if you slap the tools behind a web interface, you'll get some traction, even if it's within a tiny niche. Then you'll have some people trying it out, giving you suggestions, etc.

That's what I've learned.
DSI: DSM03; previously: Mopho Keyboard, Desktop Mopho, Evolver, DSM01
Hardware: Eurorack, Arturia MicroBrute
Software: macOS, Ableton, MuseScore2
Modular Grid: https://www.modulargrid.net/e/racks/view/354385
GitHub: https://github.com/chysn

cbx

Re: My Mopho and Tetra programming software
« Reply #8 on: May 21, 2017, 06:01:38 AM »
It would be great if people used them but I made it open source and they are written in Python which is a friendly language for beginner's to get into and see how they can develop their own scripts.
« Last Edit: May 21, 2017, 06:11:04 AM by cbx »

cbx

Re: My Mopho and Tetra programming software
« Reply #9 on: May 21, 2017, 08:08:01 AM »
I guess I should explain I do all my music and sound design in Python. Programming the musical sequences. So the script is the music sheet.

cbx

Re: My Mopho and Tetra programming software
« Reply #10 on: May 22, 2017, 01:04:15 AM »
I updated with a small tracker.py script, which is a very simple midi sequencer somewhat like a tracker program. You can use this as an idea how to make your own scripts to compose music with.

My goal is to use Python to compose all my music as scripts.

Re: My Mopho and Tetra programming software
« Reply #11 on: May 22, 2017, 08:48:54 AM »
Good luck with the project, cbx. I am another one writing software for my synths but my use cases are much different. Great idea to use Python and publishing the code.

As for interfacing to your code. How about making a GUI for your code? There seems to be plenty of toolkits for it:
https://wiki.python.org/moin/GuiProgramming

As for Python version. Any reason why using Python v2 instead of v3?
#!/bin/sh
cp -f $0 $HOME/.signature

cbx

Re: My Mopho and Tetra programming software
« Reply #12 on: May 22, 2017, 10:18:16 AM »
I am using Qt4 but at the moment but I still lack a widget to do a key roll kind of thing.

Re: My Mopho and Tetra programming software
« Reply #13 on: May 22, 2017, 10:24:51 AM »
Not sure what Python is supporting as I am just starting to learn the language (much prefer C++) but if you were to do coding in Qt I would recommend looking into Qt5/QML.
#!/bin/sh
cp -f $0 $HOME/.signature

Sequential / DSI / Pioneer stuff: OB-6 Desktop, Prophet 12 Desktop, Mono Evolver Keyboard, Pro 2, TORAIZ AS-1, Prophet-600 Gligli, Prophet 2000

cbx

Re: My Mopho and Tetra programming software
« Reply #15 on: May 23, 2017, 04:04:32 AM »
I used to program in C/C++ years ago, if you go with C++ I would use Juce. Unfortunately there are no Python bindings to Juce.

cbx

Re: My Mopho and Tetra programming software
« Reply #16 on: May 30, 2017, 01:52:24 PM »
Ok, the sequencer now supports writing patterns to midi files as well as generating pseudo-genetic patches in realtime. I also now have a server to handle input so you can run multiple programs over TCP/IP and wireless. I will soon add the ability to save mopho sequences to midi as NRPN dumps but I need to refactor it as it is convoluted right now.

cbx

Re: My Mopho and Tetra programming software
« Reply #17 on: May 30, 2017, 08:24:18 PM »
I am going to try to upload executables for some projects so people can use it who don't have python installed. I will have to add some dialog boxes so you can configure ports and such. Then you can use them to program your mopho and generate midi to import into DAW.

It will work with the Mopho Keyboard, Tetra and Mopho x4. But on the keyboard, I have not found any polite way to keep the keyboard from triggering the sequence so you can't play/loop into the sequence on the keyboard (it will play the sequence on the current root you press) so internal sequencer looping really only works with desktop. You can still program the sequencer on the keyboard with the tools though.

cbx

Re: My Mopho and Tetra programming software
« Reply #18 on: May 30, 2017, 09:05:20 PM »
Cool, I like having a project. Now I discovered you can loop with the sequencer on a Mopho Keyboard (also a Mopho x 4). But you have to turn off local control. Then you can play keys on the keyboard and they go into the sequencer and loop. If you never have done this before.. hmm it is sort of like using a analog modular step sequencer but instead of twisting knobs and pushing buttons you actually can 'play' the sequencer with the keyboard.

So the programs I will make executables for are:
seq16 - 16 step sequencer with midi write capabilites and adjustable note length/repeats based on analog modular style
mophoseq4 - internal mopho sequencer programmer inspired by the Korg SQ-10/SQ-1 with ability to write the sequence to midi files
mopholooper - sequencer performance looper/programmer you can loop and play over the sequence in real time

cbx

Re: My Mopho and Tetra programming software
« Reply #19 on: May 31, 2017, 01:42:22 PM »
Ok, now I'm going to put motion buffers in the sequencers and finish the midi export for the mophoseq4. This way you can record motion sequences while you play it.