Mono Firmware V2.0 Thread

A few words

Some of you know that I have been working on Mono Firmware V2.0 for some time now. It was previously scheduled for March, and I have then told some of you it should be ready this month of April … It might still take some weeks to be beta-ready. I hate to overpromise but I very much underestimated the amount of work to be done … here is a quick explanation as to why I’m quite late :

  • In the current firmware, Mono’s memory was completely full, a complete overhaul of the project management system was necessary to host the new features. I switched to a dynamic memory scheme, which means rewrite pretty much everything on the project side.
  • There were 2 ways to create a full API, the quick and dirty way, and the clean and efficient way. I went with the latter. Basically I wrote an universal langage for Norand machines. The API is designed in a way that informations are formatted in exactly the same way everywhere (sysex, memory, json …), there is only a unique translation layer that crunches the data into patterns, patch, randomize request and so on… This will make a big difference in the future : for exemple you will easily be able to control a Norand product with another one.
  • The UI management code was becoming a total mess, I learned a lot since I started writing Mono code 4 years ago, I decided to completely rewrite that part as well with much cleaner design patterns.

What it means is that I am pretty much rewriting 90% of the code base, we are talking 15k+ lines of code that needs to be tested and debugged. I hope you understand that I prefered to take my time to do it right, rather than rush into a clumsy 2.0 ! If things are to be done right, I think that it’ll probably take me an additional month before beta, sorry about this !

New features

  • Full duophonic implementation
  • 2-Pattern morphing
  • Pitchable mod note
  • Full sysex API : midi_definitions.h - Google Drive
  • Fully customizable midi controls : velocity, aftertouch, modwheel or CC74 and pitchbend (custom follow). Just like accent, set parameter offsets for each of these controls.
  • Requantize mode : In this mode, changing scale’s root and key will requantize the notes
  • Full quantize mode : osc freq never out of selected scale
  • Dedicated Mod note midi channel
  • Lock parameter selelection
  • and more …

Let’s discuss it !

I hope this thread will become an active discussion between users. A lot of feature have been suggested in private, I consider some too complicated UX-wise, but in the end, you are the users, so if I see some suggestion standing out I’ll try to implement those. I will try to come here a couple times a week to check the discussion, however I wont actively participate, and try focusing on getting the firmware ready :slight_smile:

Ask me anything : May 4th, 7PM CET

I will be doing a live Q&A on youtube on May 4th, 7PM CET. Red Means Recording will probably be with us. If you have questions on Mono Firmware 2.0, and more generally about Norand, save the date !

Cheers,
Mathieu

15 Likes

Great stuff. Some cool new features here, and looking forward to diving into the sysex :smiley:

Great news, when can we install. What’s the likelihood of a bricked device?

Pitchable mod notes and requantize have me excited.

Wow, this is madness!
duophonic → cool!
pitchable mode note → something I was missing, can’t wait
2-Pattern morphing ? very curious, can’t wait!
sysex API ? It looks that nearly every single feature is exposed via sys ex, right ?
Requantize ? wow
Thanks!

2 Likes

As a user, I’m excited by the new features already hinted at, but as a computer scientist, I’m also excited by a better codebase and full sysex API. I also appreciate the attempt to move discussion here from Facebook, as I don’t have a Facebook account. There’s a lot to look forward to…!

1 Like

First, Mathieu, thanks for your work, and I really appreciate your approach to the API. Very excited about duophony (or paraphony?) and full MIDI control. I really feel like the Mono is a hybrid of the Music Easel, a 101/303, and an Elektron machine.

Here are my suggestions:

  1. Do not feel too constrained by the physical labels on buttons. Especially if this means you can redesign the Mono with fewer button combos. When Roger Linn updated an early version of the Linnstrument, at one point they added a sequencer. He sold a new cover with labels for the new sequencer functions if people wanted it (and also put it on the new Linnstruments). You could do something similar, which would allow you to make more substantial changes to the interface if you need to (while keeping the same number of knobs and buttons). Alternatively, people could put labels on their Monos. In other words, it sounds like you’ve learned a lot: I would vote that you not feel too constrained by prior interface decisions in setting up version 2.0. I certainly will be putting labels on for commonly used function-selections once the 2.0 dust settles.

  2. Treat mod notes like pattern offsets, so that I place mod notes in a pattern and then perform by twisting knobs, sending in CC messages, etc. (Maybe this is impossible with the code?)

  3. Make mod notes MIDI addressable.. Maybe that’s what you mean by “dedicated mod note MIDI channel”? If so, yay!

  4. Loop Mode across pages.

  5. Independent sequencer lanes and lengths for pitch, note on/off, and modulation. This is coming from the world of modular synthesis where you can build very rich sequencers from modest patterns by using different lengths. For instance, an 8 step pitch sequence, a 5-step gate sequence, a 9 step modulation sequence. I suspect this is impossible, and I can sort of accomplish some of it with an external MIDI sequencer, but it would be nice to have on the unit itself.

8 Likes

Breaking the connection among pitch, gate, and modulation is going to lead to UI complications, I suspect. (I also work in modular and do make use of this, but it’s a much more flexible setting, and it works best in a sequencer with a screen.) If “full duophonic implementation” implies a separate sequencer track for each oscillator, then different lengths for those two may be workable.

I am trying and failing to imagine “2-pattern morphing”, when patterns have discrete notes, possibly different lengths, and possibly different tempi! Happy to wait to see what it is like, though.

1 Like

Adding another one I just discovered this morning.

  1. Allow an external controller to enter the sequencer notes “SH-101 style”. Right now if I hit [record] with the sequencer stopped, I can only input notes from the built-in keyboard. It would be great if I could play in notes from my Linnstrument, complete with velocity information. It would be even faster.
2 Likes

Would be fun to see something like Tensor for the Mono.

1 Like

Hi! I sent this request at the email, I add here:

  • SONG MODE: More pattern chaining at SONG mode as 64 patterns like classic Roland TR’s, or an addition to add repetitions for pattern.

On the Uno Synth Pro every of the 16x4 steps (from 1 to 64
steps, 4 lines of 16) can be assigned to one pattern (as maximum) in SONG mode.

I see this mode is very different approach in the Norand Mono, due
you select the order of the chain as “click” order (first in, first
play). Or maybe select start to end (consecutive steps, example: 4 to
9). I don’t known which would be the easiest for development.

Many thanks!

1 Like

I’ll be working on a MIDISynth editor when available…

7 Likes

Re: physical labels … good idea but Matthieu, if you consider some kind of overlay, please offer a NON-DARK-RED COVER too. I’m old and when lights are dim, I can’t read any of the red labels, I have to shine a bright LED onto the letters so they reflect the light at an angle - I think many non-old people working with live sets might share my point. Do a cover with mid-grey or orange letters or something but please try to maintain a decent contrast, no matter what your logo colors are.

4 Likes

This 100%, I absolutely LOVE the mono, tho I don’t love having to keep light over it because my aged eyes can’t read the red-on-black labels

3 Likes

I agree with both @G3cd and @jvanaria – my middle aged eyes don’t so so well with it either. I was planning to label it myself post-2.0 update, but a new more visible cover would be great and I would happily pay for it. While you’re at it, you could make sure it works for color blindness. Here’s a good discussion from Papernoise, who does design for Mutable Instruments, Rabid Elephant, and others: Design Notes on Colour Blindness, Part 1 – horizontalpitch

1 Like

@leehu is your intention to write a controller and make it available for sale? Or merely Freeware? I ask because I’m also interested in writing a MacOS controller for this wonderful machine. My specialty is iOS/MacOS (Swift) development. If you are also on iOS/MacOS, does it make sense for the two of us to set up a GitHub/GitLab repo, seed it with base functionality, and make it open source?

For context, I’ve written synth controllers in the past. Most notably, the Alpha Juno Control (which is also SYSEX based), it can be found at http://xmidi.com. It’s honestly pretty boring by today’s standards, but it was written and published 20 years ago(!! Wow, time flies). As well, I’m very happy to set up a landing page on xmidi.com for this Mono Controller if there’s an appetite for that.

Think about it and let me know, happy to connect offline of course … oh and greetings from Chicago! :slight_smile:

And a question for @Mathieu – will the Mono also transmit SYSEX messages so that a soft-controller could remain in-sync?

2 Likes

Hi, yes, I’ll be doing one for sale. Cheers

1 Like

Bravo Mathieu!
You are doing superb work!
Thank you, my friend.

Igor T.

It’s gone quiet, when will the new firmware drop?

A quick update ! Still working on the implementation, I have to juggle between this and following the production process of Morphos, which is a bit of a pain with the current situation in China. I’m hoping we can go beta in 2-3 weeks.

Regarding your posts, suggestions and remarks : I am not going to dive deep but almost every feature suggestion that has been posted in the reply so far will be possible in 2.0, directly or indirectly.

Regarding the red color that is hard to see, it’s been absolutely noted. We have changed the red to orange (just like the website), and we will take great attention to that on every future product moving forward.

Cheers!

5 Likes