Midi Player Unit

A unit that loads up imported midi files that can be used to drive internal synths and also used as a modulation source.
Because there are no dedicated internal sequencers as such, on the er301, this could be a way around it by making more complex sequences using multiple midi players. Import midi sequences in a similar way you load up audio to the different sample players. Or even a player that contains multiple midi clips that could be triggered / cv to play different midi clips. Or used as a modulation source when looped.
Really it would be for use in live situations, when you don’t want to use a laptop or other external sequencer but also used as a creative tool when sent as a modulation source for other internal units.


This would be fairly useful, but I think somewhat unlikely, at least in the near future, due to Brian’s distaste for midi. I believe to play back midi files you would have to make an interpreter for midi information. I think this is the type of thing we are more likely to see when the SDK comes out.

1 Like

It’s a good idea but, out of curiosity how would you map the various (controllers, notes on/off, after touch etc), + polyphony contained in a midi file? That would probably require a complex interface. And a clock.

Some Expert Sleepers Modules (Disting, General CV) can play midi files but they’re finally quite difficult to export and import. I tried that with GCV, just for fun but it wasn’t fun at all to export in the correct midi format, header etc.

But the concept of having a sequencer unit where you can load files is super interesting. It might need some kind of custom type of file rather than Midi. Something simple. Right now I’m thinking of something not read at a super fast rate, just a kind of JSON file where a Sequencer unit would pick and read values contained in an object. It could be written by hand. Like a piano roll :-))) This is the concept I used for a sequencer for Norns, the thing reads “nodes” etc.

Edit: I’m also asking the way you’d map midi because I was thinking of adding midi support to my OSC to I2c converter for the 301 but I have no idea how to map that o sc.tr and sc.cv, with a customsizable JSon map probably but…

1 Like

The er102 reads midi files so that interpreter has already been done. I have no idea if that code would be compatible with the er301.

It would probably need to be simplified and only go for the most important parameters and strip out the rest. That Info could be mapped like any other er301 parameter and sent internally to other units. I’m mainly interested in cv/gate info.

Alternatively you could keep all the midi data and be able to user select the relevant cc of choice, like you would do by selecting a Teletype Port number.

Ideally I would like to generate midi clips using various sequencers in Ableton and drag and drop those midi clips to an er301 card.

The way I see midi is more as a creative tool rather than pulling a Bach midi file for playback. I want to use it in a way we’re you can fire different midi clips sequences at different internal units and not necessarily as a premade “song mode” Like a midi cannon of sorts with some limited parameter control if possible.

1 Like

If you can get cv from ableton you can do something similar by recording the cv input and playing it back. Its one of the cooler uses of sampling in the 301, using it to record and play back control signals.

1 Like

There’s also this m4l device to generate cv audio files from ableton midi. Not as straightforward as playing a midi file, but it’s great.


Ahha thanks, now this could be what I’m after. As long as that max script allows you to record sequences in it from other max sequencers, and not just by hand entering info into that program. I’ll have a play about with it today.

What I really want to do is fire off short midi sequences using a controller, on the fly, to different synth and sample player units. Maybe line them up in different players and crossfade between them. So in a live situation you can improvise a little.

1 Like

Let me know. I barely use my ER-301 nowadays and don’t even remember how the app works but I could still have a look if needed.

1 Like

A cool way to use midi files would be a “reader” unit that will step (or jump) from triggers and CV. Then two “output” units, one for simple notes (pitch + gate) and one for cc. Each output module should have a channel control and the cc one also a control to select which cc.

Totally modular, totally open to everything from complete backing tracks to other worldly messed up midi…

EDIT: ther e should probably also be a bus selector on all modules so that you can have multiple readers and outputs, freely talking to each other. Obviously CV over all selectors, for maximum control…

1 Like

@gimber this works great I’m importing into 2 x manual loops units so I can adjust the start times. It’s just the sync I’m not sure about. As they are in 2 separate players for the CV / Gate files. How have you been starting them together - with a gate? Or using 2 x Varispeed Players with loop off?

I think one thing about this technique is having to deal with 2 separate files And try to sync them. It would be great to have to only deal with 1 file, with both cv/gate available in 1 player. I still think a Midi Player unit would be useful, but this amx file is a great workaround for the moment.

1 Like

If you set them to the same speed and start them with the same gate they should stay synced. If you just need to sync them at the start and let them loop you can just send each gate input a 5 volt signal to start them at the same time. I do this to restart sequencers sometimes, just quickly plugging and unplugging a hot lead.

1 Like

Thanks, yes, I’d rather keep them looped so will start with the same gate. Thanks for the suggestion.