MIDI FX 1.4.6 OUT NOW: Better concurrency and inserting modules in the chain

New update out now: I’ve revamped how information is sent across the midi chain to better take advantage of background threads.

Also, now you can insert a module between two connected modules (as long as the new module has at least one correct input and output). This way you can add new modules to a chain even when live playing through that chain.

This works for midi connections but also fro audio ones.

The “add” buttons will be shown when you long click/press on a module (to show the module’s menu actions) and also when you drag a module around.


MIDI FX 1.4.5 OUT NOW – New “Pure” Delay Module

Delay a command by milliseconds and/or beats (in quarter notes or smaller time units). You can also set a number of repetitions and whether to play the original note or not. This was a request I got recently and something I’ve been meaning to add for a while (although in a simpler form)

“Inverted” Hexagonal Keyboard

Another addition is the possibility to set negative intervals on the Hexagonal Keyboard, letting you go down in tone as you go up and/or right on the keys. This was also a request I got so the person could emulate a Dualo keyboard (which I didn’t know anything about until he wrote me).

Last, I’ve fixed the Module Settings screen so you can actually type a value on the text fields and it will update the sliders and be saved.

Next update I’ll move the input link on the pure delay to the center of the module 😉

Jokes aside, I’ll try to re-work the Musical Delay module so it functions better when multiple notes are playing quickly one after the other, especially if they’re the same note… I’m not satisfied with it and it’s overly complicated…

If you have a request for a feature send me an email (look it up on the app itself) There are many possibilities that I just can’t imagine as each person’s use case for the app might be totally different.

Happy 2024!!!


A new version is out and it features a new module: The Hexagonal Keyboard.

It also adds a new feature to hide/minimise modules to reduce screen clutter for modules you don’t have to interact with after being set up.

The keyboard is fully configurable. You can set the pad size, number of columns and rows and starting note. Also the intervals between keys (both vertically and diagonally) and can use all the notes or constrain it to a scale by specifying a root note and scale mode.

Use it to play chords, create melodies or to trigger other modules by processing the signal with the Converter modules, fire arpeggios or the Sequencer.

The module is included for free in the PRO version of the app and for users who unlocked the free version of the app with IAP but can be tried out by everyone by opening the included example (go to the Help page and click on EXAMPLES).


Star Trader’s Luck released for PICO-8

I made a digital version of my dice game Star Trader’s Luck for the wonderful imaginary console Pico-8 which is an oldschool, low-res, simple machine that is a joy to program. You can play it right here, or from the Pico-8 app by downloading the png shown on the left. That’s right: Pico-8 games are shared on an image file that contains all the code, the graphics and the music… Give it a try!

MIDI FX 1.3 OUT NOW! AUv3 Support

I’ve just released the new update. It should be live in the next hours.

The main change is I’ve added support for hosting AUv3 plugins (payed version only), both Audio Instruments and Audio Effects. So you can use the app to create whole songs, or play around with MIDI music generation using just your iPad. See it in action here, and if anything stops producing sound, there’s a “Reset Audio” button on the settings menu.

Other updates include a new type of MIDI input for modules called “Trigger Input”. You can see it in action on the Sequencer module. Just go to the module settings and select the Trigger option. The “play” button will stop working and instead each note will be played when any MIDI command is received on the trigger input. This way you can fire notes up at specific points in time.

Another new module is the “On/Off” module. It separates Note On and Note Off commands. This way you can use any one type to trigger events without the other interfering. Used in combination with the Converter modules it is very powerful. You can both here:

AUv3 support is kind of experimental, so any feedback is welcomed. I couldn’t test it with many plugins as I don’t really use them for my own music production, so any specific problems you find, please report them using the link in the Info screen of the app.

Especially Mac support for AUv3 is quite shakey… I’ve used a couple of plugins that have Mac versions and they mostly work, but they’re not very reliable…

Remember to use the “Reset Audio” button on the Settings menu if anything stops producing sound…

Thanks for the support, and hope you enjoy the newest features. This is a one man operation and a “labour of love” kind of project, so please, be kind and I’d appreciate any support especially positive reviews. Please, write me an email if you find any problem before just leaving a negative review: I’ll try to solve it as soon as I can.


Generative Music with Triggers and DAW Integration

I’ve posted a couple of new videos:

First, an example of using a Generator module to randomly control a Switcher module and the new Trigger input on the Sequencer to generate a kind of pseudo random melody. Of course you could do the same with a switcher with more outputs to add more variety…

Last, a video showing how you can integrate MIDI FX into your DAW workflow (in this case using Logic Pro) by taking advantage of the IAC Driver on the mac, which lets apps send MIDI data to each other. On the iPad you can also connect to Logic Pro on a Mac by using the Network Driver much in the same way

AUv3 Support for MIDI FX

Here’s a video showing support for AUv3 Audio Instrument and Audio Effects plugins hosted on MIDI FX.

I’ve also created a new Audio chain with fader and mixer modules and a final Stereo Output module.

Old audio modules (Vintage Piano, FM Drums and DuoSynth) are now integrated into this chain, so you can mix those sounds and add Effects from AUv3 plugins.

This support is kind of experimental, and will be released on the next update, hopefully about 1-2 weeks away. I’d appreciate all kinds of feedback with different plugins… There’s also stuff I want to add, like a way to pan the sounds and some live audio meters.


MIDI FX v1.2.0 out now! New Modules: Converter and Range Converter

The new update is out and i’ve introduced a payed version of the app, for those that would rather buy it directly instead of through IAP. Both versions are the same, the difference being that MIDI FX PRO is already unlocked.

I’ve also introduced 2 new modules to turn notes or commands into other notes or commands. For example, you can assign the lowest notes of your keyboard to trigger sound or pattern changes by turning those notes into PC commands, or select a range of notes to turn into CC and control a filter or any other sound parameter.

You can even do crazy stuff like turning a CC LFO into a note generator! Watch the video for a short demonstration.

Other improvements include a setting to control the speed at which CC commands are generated in the CC LFO module and some bug fixes.

As always: feedback is welcomed and any problems you find be sure to report them. My email address is in the app itself on the info screen.

New Release 1.1.0 – New Features for the Sequencer and Arpeggiator modules

I’ve just released a new version of the app. It includes a few fixes and some new features for both the Sequencer and Arpeggiator modules

– You can now select steps while playing both on the Sequencer and Arpeggiator modules, so you can edit steps on the fly while playing

– Added views for all step parameters on the Sequencer. Switch between: Note, Velocity, Length, Probability, PC, CC and Transport commands

– Add/Remove/Edit notes/commands on the fly while playing the Sequencer

– The Arpeggiator supports empty steps now (select the X between the -1 and 0 values), also you can long press on a step to mute it (on all patterns)

– The Arpeggiator now has a note length parameter (on the settings screen)


– The probability parameter on the sequencer wasn’t working

– Fixed some problems with long presses on different modules