Polyphonic earthsea for trilogy/ansible and er-301/just friends/txo


multi pattern and voices is really intuitive. congrates!
actually easier for me than original firmware.
would love to try out i2c if you get around that extra button position for JF/i2C 64.



Super Noob question, where are the firmware files posted?



i had to remove them temporarily and wasn’t able to restore from the old post. i’ll post new files when i have a new version ready.

1 Like


Ah great, thought I was blind, tried looking everywhere!

Been trying out Ansible Earthsea and can already imagine the improvements in the PolyES version, looking forward to your update!



new betas posted. what’s new:

  • midi keyboard support
  • bug fixed with clock input on ansible
  • ansible buttons work for next/prev pattern now
  • ansible reset input fixed
  • knobs are mapped to mod buses
  • new parameter for txo: waveform fine
  • bug fixed: just friends volume of 0 didn’t work
  • long press on front panel button will save current preset
  • LED on ansible indicates current pattern start

midi support for now is just playing live, and any cc value is mapped to mod bus 1. i’ll be adding midi learn in the next beta.




Totally untested quick layout. Im in no urgent need for one so until I have to order more boards next week (which arrive a month later) I wont be able to build and verify. But if anyone is impatient this is just a remix of the TT busboard, with the power and i2c headers relocated to mount to ansible. Without source files for ansible i cant be exact, but they both seem to be on a 2.54mm pitch grid so it was easy enough to work out


A user's guide to i2c

Wonderful work! Will you be planning on adding a midi record function?



yes, midi recording and midi learn function (to assign CCs to mod buses) is planned for next version.

1 Like


Have finally installed this and enjoying it a lot!

Wondering though is there is an issue with the preset button, cos when I press it on the front panel of Ansible, nothing happens, neither with short or long press.

The LED doesn’t light up neither to indicate current pattern start, it doesn’t light up at all on mine.



thanks, looks like a bug was introduced in the latest change that broke the front panel button functionality in ansible. i’ve posted a new beta for ansible that should fix that.

also confirmed the LED is working - please note it’s for the current pattern only, so if the pattern you’re currently on is stopped it will do nothing.

1 Like


Thanks, will try it tomorrow and will not the led light too!



Just installed your last version and checked. Presets work, the LED light works BUT not when receiving external clock.

1 Like


ah i know what the problem is, will fix in next update! this will also affect pattern start events assigned to any outputs or mod buses.



After testing more, am wondering:

Is there a way to record longer presses when using an external clock? I don’t know if I like what happens to the pattern when synced externally cos it loses its ‘swing’ somehow.

Would there be a way to extract the clock from poly-es to use to clock other modules?

And is there a way to sync the second, third, forth pattern to the Master pattern during recording?



with external clock connected it just follows that (a new note or chord is played whenever a trigger is received). preserving your timing at the same time is not possible. something could be implemented but then it’s a much bigger feature with a lot of questions - how would your original timing work in this case, would it preserve the relationship to the clock somehow? or time stretch? etc etc.

one thing you could do if you’re using ansible - the 2nd gate input works as a pattern reset. so you could use your ext clock to just trigger/reset your pattern which will keep its original timing. you can also enter rests - when recording press the top right button.

re: extracting the clock - you can route each note start (or pattern start) to any gate output. see this page for details (i’ll do a video soon too).

you can only use the leader pattern to reset playback of other currently playing patterns. you can’t use it to sync during recording. what you could do is start playback of your leader pattern, then switch to the one you want to record, arm recording, then wait for the leader to start and record whatever you want, and wait for the leader pattern to finish, then stop recording. now your recorded pattern is slightly longer than the leader one, so you could play it and have the leader restart it. hope this makes sense!

1 Like


The updates with MIDI connectivity are great — it really expands the possibilities of all the various modules!

It’s possible that this is already being considered, but I was wondering about two things:

  1. would it be possible to have a mode where MIDI channels could correspond to a particular CV/gate? (similar to allocation style 3: multi from ansible’s MIDI mode)
  2. when connecting a MIDI keyboard, 0V seems to be set to a really low MIDI note, would it be possible to move it up 1-2 octaves or make the octave shift variable? (I can get around it by using the octave shift function on different keyboards for the moment.)

I’ve had success connecting some different USB MIDI keyboards and sequencers like my OP-Z, and having these features or something similar would help out a lot.



Sorry-confused! Does this version work without i2c, just Ansibe? @scanner_darkly



likely not - the MIDI implementation here is not meant as a MIDI-to-CV function but rather as part of polyearthsea itself, so it has to use the existing mechanism for voice allocation. i could consider adding a way to enable something where each MIDI channel corresponds to a pattern and uses whatever voices are assigned to that pattern. could you describe the use case you had in mind in more details?

noticed that too, will fix in the next version.

you only need to use i2c if you are planning to connect it to er-301 or just friends or telexo. if you just want to use the cv and gate outputs on ansible you don’t need it.



Having different voice allocation possibilities per pattern seems like it would make things more complex, but I think it would be really interesting addition to an already game-changing firmware!

My specific use case is to use an OP-Z where I can assign particular tracks (mono or 2-4 voice poly depending on track settings in the OP-Z) to separate MIDI channels with a mixture of sequenced material on some tracks, and live input and/or mangling of sequenced material on the active track. Right now it seems like polyearthsea reads MIDI from all channels and assigns them as a combined whole, but it would be great if MIDI channels could be allocated separately somehow. That way I could have more control over how material gets routed when using MIDI instead of the grid.

My guess is that this might mean: multiple patterns would need to be able to receive MIDI data at the same time, and there would also need to be the possibility for different patterns with different voice allocations, either setup beforehand by the grid or be automatically assigned when a MIDI device is connected…?



what i meant was just having a switch that would work like this:

  • one mode will send all MIDI notes to the current pattern
  • another mode will send MIDI notes from channel 1 to pattern 1, MIDI notes from channel 2 to pattern 2 etc.

then you would need to set up your patterns so that pattern 1 only uses voice 1, pattern 2 only uses voice 2 etc, and map your voices so that voice 1 is mapped to output 1, voice 2 mapped to output 2 etc.

adding the ability to freely map MIDI channels to voices i’m afraid wouldn’t be feasible - it would complicate the UI further (and i already heard comments it’s very complex as is). this really sounds like a job for some standalone MIDI to CV firmware.

edit: btw there is a bug right now where MIDI will use all voices available, not just the ones the current pattern uses, i’ll fix this in the next version.