MidiREX is a small but versatile MIDI loop sequencer created for live performance. It is designed to provide basic multi track recording and playback capabilities with minimal distraction to your inspiration.
MidiREX records MIDI events received on its MIDI IN (except Note Off velocity, system real time and SysEx data) and stores them in non-volatile memory for later playback. The recorded events can notes, controllers, pitch bend, after touch, program changes, etc.
MidiREX is MPE (MIDI Polyphonic Expression) compatible: it can record on multiple channels at the same time, fully supporting your Seaboard or Linnstrument controller, as well as other MPE instruments.
See this video for a demo of MidiREX application.
Tracks
MidiREX can play up to 4 tracks simultaneously. Its memory capacity is approximately 9,000 notes, however various MIDI controllers like after touch, pitch bend, mod wheel, etc. will take up more memory, so the actual amount of note storage capacity will vary depending on how much these controllers are used.
Each set of 4 tracks is called a ‘part’. There can be up to 50 parts in MidiREX memory. These parts can be combined into lists of parts, which are called ‘songs’. There can be up to 50 songs, and each can contain a list of parts of up to 99 steps long.
Each track can have different length. The longest track in part defines the part length. When track is played to its end it loops back to the beginning and keeps playing. The track length is set when the track is recorded and can be changed at any time, even during play back. Changing track length does not add or delete recorded track MIDI events, it merely defines a point at which track is looped back.
Each track has its own MIDI channel assignment that could be set to MIDI channel (1-16) or to OMNI. Track events are stored in memory with the original MIDI channel they were received on and will be played back as is if the track’s MIDI channel is set to OMNI. However, if track’s MIDI channel is set to specific channel number, the track events will be played back on the selected MIDI channel, essentially overriding original MIDI channel on the fly.
To record a track it needs to be selected. Only one track can be selected at a time. MidiREX cannot record on more than one track.
Incoming MIDI events may be filtered and quantized. Both note position and note length quantization is supported.
When MidiREX is not running, MIDI events received on MIDI INPUT are sent to MIDI OUT on the selected track’s MIDI channel allowing you to monitor what you’re going to record. If MidiREX is running but selected track is empty or muted, the incoming MIDI events are still sent to MIDI OUT allowing you to rehearse or jam along with the previously recorded tracks playing. Note that you can hit RECORD at any time and record that wonderful phrase you just came up with without stopping the playback.
When MidiREX is running and selected track is not empty or muted, the incoming MIDI note events transpose notes in the part being played.
Parts
Parts are identified by a number (00-49) and 12 character part name. When running, MidiREX plays currently selected part endlessly until stopped.
Parts can be switched at any time, even during playback, and the switch moment could be quantized to the next beat, next bar or part end.
Songs
Songs are identified by a number (00-49) and 12 character song name. Each song can have up to 99 steps. Each step specifies number of the part to play, how many times to play this part, which tracks to mute and a note to transpose the part to.
When MidiREX is in Song mode, it will play currently selected song’s steps endlessly until stopped.
Song steps can be specified manually or recorded live using MidiREX buttons or MIDI keyboard connected to MIDI IN.
Case
Acrylic case plans are available in .eps files compatible with Ponoko.
Specifications
Memory capacity: 64K
Parts: 50, each has 4 tracks
Songs: 50, each has up to 99 steps
Tempo range: 25-250 BPM
Clock resolution: 96 PPQN
Clock source: internal or external
Quantization: note and note length, 64th to 2 bar
Controls: RUN, REC, SW1-5, Clickable Encoder
Display: 16×2 character LCD
LEDs: MIDI IN, MIDI OUT, TRK1-4, SONG MODE
MIDI Connectors: MIDI IN, MIDI OUT
Foot switch connector: 3.5mm stereo, normally open or closed, momentary
Battery: CR2032, good for 10+ years
Power supply: 9VDC, center positive, 200mA
Acknowledgements
MidiREX is built around technology developed by Mutable Instruments: most of its hardware components can be found in various MI’s projects (mostly Shruthi-1 and Ambika), while software implementation uses quite a lot of code from MIDIpal. Not to mention the breakthrough Avril programming framework that brought modern C++ programming (read: productivity and sanity) to Atmel MCU world. Without this MidiREX project would not be possible, so thank you, Olivier, for sharing your talent with all of us!
Hi Pete,
Can Midirex transpose in scale?
Yeah, while playig a sequence, incodming notes will transpose the sequence proportionally to the interval between incoming and root note.
Thanks!
So, it will not be quantised to scale? A minor chord will always remain minor after transposing?
Does any of your great devices do in-scale transposition?
Yes, all intervals will be preserved, so a minor chord will remain minor.
Unfortunately, my music theory knowlege is quite limited, could you please provide me with some pointers where I can read about “in-scale transposition” ?
With in-scale transposition (or in-key) transposed notes will not leave the selected scale.
Say we have C major scale, pattern C E G (C major chord).
Normal transposition by 2 semitones will result in D F# A (D major chord), doesn’t belong to C major scale anymore.
In-scale transposition will result in D F A (D minor), so it remains in C major scale.
Pretty much like having MidiGAL with Scale app (Scale and harmony processor) after normal transposition.
Best,
Denis
I see., thank yo ufor explaining! So in addition to the root note, one will also have to select the target scale, which could be any known scale, correct?
Yes, scale needs to be set upfront by user.
Here is an example for Elektron Analog Four:
https://www.elektron.se/wp-content/uploads/2016/05/analog-four_manual_OS1.23.pdf, page 35 Keywords “TRK KEY SCALE”, “TRK KEY NOTE”
There you can set scale per track and that will be taken into account when transposing.
I like how MidiRex can transpose while playing the pattern. If the notes remain in scale it would be more musical.
Crazy idea.
What if there was a special transposition track? This way with a simple pattern on other tracks one can make a nice harmonic progression (single note defines a chord for known scale). Maybe I’ll make an iOS app for that 🙂
Best,
Denis
Any chance of having in-scale transposition in MidiRex?
Hi Pete,
I would like to create an bass loop with intro.
The sequence is 4 bars, but intro is the 3 first bars. When track arrives ar the end, then track is looped on the fourth bar.
Is it possible to do this, and specify a second point of start loop in a track ? It is a feature i have on my Kross sequencer.
No, this is not supported at this point. I’ll look into it.
Hi kvitekp,
I want to order or build one, how can we arrange this?
If I decide to build one from scratch (order PCBs, solder, and program using your software) can I get specs for PCB/parts needed?
Can I burn the firmware with AVRdude?
Kind regards
You can order fully assembled MidiREX in acrylic case for $200 plus shipping or you can order partial kit (PCB and optional pre-programmed MCU), then order parts using MidiREX BOM and build it youself. Sure, you can use AVRDude to program MCU, in this case you don’t need pre-programmed MCU from me.
hi i would like to order one Midirex midi looper. i honestly don’t understand the parameters you mention i just want what is done in the vid from my synth(the looping)
Please assist me in getting one..i stay in Cape Town, South Africa.
Please email me at the address specified here: https://midisizer.com/midirex/ordering-midirex/
I suggest looking into yamaha QY sequencer range for in-scale transposition. You would need to input chord, usually lower part of the keyboard, 1-1-5 oct would be enough.
Do you know if any software sequencers offer in scale transposition? I’d like to check some before implementing it in MidiREX.
It is pretty much everywhere, just need to add map-to-scale device after normal transposition. Ableton example – https://obedia.com/how-to-use-the-scale-midi-effect-in-ableton-live/
Squarp pyramid can do this using transposition and force scale
Hi
Do how sell these direct? Ideally I’d like a preassembled one to buy in UK if possible?
Sure I do. Pls contact me at the email address specified at ordering info.
Hi Pete! Back last year i had some issues with small gaps when switching midirex patterns. Now i finally got the devices and could make a video and the .syx dump. There is a small chance that the error comes from our sequencer which we used to record into the midirex, but generally how it behaves i think it is the midirex. Please check if you have time. syx: https://gofile.io/?c=O0W9Hw video: https://www.youtube.com/watch?v=GaoSuSCuM84
Wow, certainly looks like a bug to me! Thank you for the perfect demonstration, i’ll try to repro it.
Hi! thinking about getting one of this cuties! Two questions:
1. I would like to place the midirex between my sequencer (Octatrack) and my synths. So I can loop the incoming notes from the Octatrack, and once looped ignore them, and just play the loop. But i’ve read that when midirex is running, the incoming notes will transpose the recorded notes. So if the sequencer keeps running it will keep transposing the looped notes. Am I right? And in this case, can it be avoided?
2. Are you shipping to Spain, with all this covid shit? 😦
Thanks!
yes and yes.
For the first question your “yes” means I am right or “it can be avoided” 😊
Transposition can be disabled per track.
I’m a little confused about loop length. Can I pre-determine a loop length? Like 2 bars, 4 bars, 16 bars, 32 bars etc..? I would not want to push a button to close the loop since I’m playing keys.
Sure you can set loop length in advance.
Hello,
Is it possible to “Quantize note” for all 16 MIDI channels at once?
Is it possible to change the quantize grid measure in “Quantize note” e.g. from 1/4 to 1/2 via CC MIDI controller?
The plan is not to change the quantize grid measure with knops at the device but through incoming MIDI commands.
Many thanks,
tinsmith2
MidiREX works with only 4 tracks at a time each set to a MIDI Channel, so it is only possible to quansize 4 MIDI channels.
MidiREX currently provides CC control to actions like Start/Stop recording etc. MidiREX settings cannot be controlled with CC at this point.
Thanks kvitekp,
Instead of the usual grid measure 1/4 2/4 3/4 and so on: is it possible with “Quantize note” to set e.g. 5/4 or 7/4 ?
With kind regards,
tinsmith2
MidiREX quantizes on beats, not on measures, so yes, it can do any amount of /4s
Thank you 🙂
Maybe a silly question: I recorded a track and want to record a second one on top while playing the first one. How could I achieve this? So far I could record on different tracks but only separately.
Argh,I got it : needed to select the active track FIRST with SEL+TRACK1-4. Thought that the number in the display was the track number. Then everything works as expected. Such an awesome Device!
MidiREX does not do overdub at this point.
Pingback: Non-Euro Synth Builds – wolfeffect
I have one midirex for sale. i bought new in jan 2021 fully assembled from midisizer. email me at silverlight2004@hotmail.com if interested.
Follow-up to my for sale message…the unit is already sold. Dave.
Hello, The one missing piece in my DAW-less jam setup is a MIDI router. I am looking at MIDI Solutions solution (pun unintended) but I am a bit worried as it draws its power from the MIDI IN port and that might damage my beloved MidiREX: http://midisolutions.com/faqs.htm
No worries?
No worries at all, I use MIDI Solutions MIDI Merge and MIDI Thru with MidiREX and MidiGAL myself.
Bonjour je suis a la recherche d’ un MIDIREX monté si vous voulez me faire des propositions .
par contre je suis bien conscient que cette page n’est pas dédié a la vente j’espère que ce méssage ne gène pas la bonne marche du site .
Merci
Hi ! This look good (but hard to reach with Google) but I don’t find the related pages as manual, bom, buy, etc.
Plus one question as I see the parts around the power socket and the quarts : is it mostly an Arduino board redesigned ?
Manual, BOM and order instructions are available here: https://midisizer.com/midirex/
Ooooh. It wasn’t working on my phone but i see the menu now. Tanks.
Hello Pete,
I’ve been using the midirex for almost 10 years, I love it, I use it in concert, it’s an incredible tool.
Unfortunately, while trying to update the firmware, there was a bug.
I received the midi data well (by computer and midiox) and at one point the midi in LED froze.
She finally died and nothing happened…
I resolved after ten minutes to turn off and turn on the midirex, since then it remains on the waiting page and no longer receives the midi data…
What should I do please?
Please try updating firmware again using increasing sysex buffer delay to ~200ms. If this does not help, try using different MIDI interface.
Thanks a lot for your help.
I tried by changing the buffer and with another interface, another cable… Nothing. What worries me is that the midi IN LED no longer flashes at all. As if the midirex no longer received the MIDI message