Would love to sequence JustFriends with an Ansible in midi mode. Is it possible to poll Ansible CV directly without using a specific app op? Something generic like ANS.CV 1 or something?

One difficulty with this is that each Ansible app listens on a different I2C address. This has some nice advantages – you can use I2C with two Ansibles running different apps at the same time, Meadowphysics and Earthsea ops can be used as-is with Ansible versions of these apps or with trilogy modules – but means that you can’t really have all-call commands. I have implemented a couple of ops (ANS.*) which work no matter what app Ansible is running, the way this works is that Teletype sends a message to every possible Ansible address (eight different addresses!) and every app handles this message in its I2C handler. A bit messy and I’ve been concerned about the timing / bus stability impact it might have to do this for something that would be called more often like polling the CV value.

You should be able to do this with Ansible leader mode I believe, though I have personally done relatively little midi testing. You do need to use a grid to configure leader mode. (Actually… this probably can be done with ANS.APP and ANS.G with just Ansible and Teletype.)

1 Like

Thanks @csboling your explanation cleared up a few things I was wondering about how ansible listened to teletype. I have a grid, but not sure in the docs where it explains how to make an ansible a leader, also wondering if I need to detach the i2c to teletype or if I could leave it on the same bus as the teletype but just not call anything from to jf to avoid cross talk.

Configuration for leader mode is described in this post, this was only recently merged to Ansible and I haven’t added it to the monome docs yet since it’s not officially released yet. You can definitely have both leaders on the same bus, frankly I frequently send messages from both Ansible and Teletype to the same follower quite often. Though this does run the risk of one or more modules crashing and needing a reset, I have not had much of an issue with this for a little while.

3 Likes

Just tried Ansible leader mode with Just Friends, and I LOVE it. Here’s a short clip. Thank you so much for making this happen!

https://www.instagram.com/p/B-4RWdmhZzK/?igshid=no3fra761pr4

2 Likes

Added a build (58f0caf) in the top post which adds a Kria metapattern feature proposed here, letting you lock which pattern you’re editing, so you can listen to the whole metapattern sequence while editing the content of a specific pattern. UI is described here.

2 Likes

@okyeron, @pnyboer do you know if anyone got the Morph working with Ansible? I just tried it today, and had no luck (I could be running an older version of the Ansible firmware). I’d be happy to test if there’s a patch, or test firmware.

Nevermind. Built the firmware from the latest Ansible and libavr code. Works :slight_smile:

Would it be possible to create a 6 track version of Kria to control all 6 voices of JF? If crow is connected we could also get 6 physical outs in total too, as well as an extra set of inputs that could be used for say, global transpose and sequence morphing…
Oh dreams… aren’t they lovely :blush:

1 Like

It’s a neat idea, I suspect that with all the other stuff on Ansible you would probably start running into flash or RAM limitations – each Kria track stores quite a bit of state. The assumption of 4 tracks is also pretty pervasive in the Kria code right now, it would take a bit of doing. I think if someone were working on, for instance, a dedicated Multipass version of Kria, this would be a very cool feature.

I’m not sure if this is possible because as far as I know crow’s first 2 jacks are wired to different hardware, doing A/D conversions at a different rate than the outputs, and can’t be used as outputs.

1 Like

I guess it would have to be a multi pass version. It’s would be very cool.
Also I edited my last post as I think you may have misinterpreted what I was saying about the physical tracks. Bad wording I guess.
Still… it’s a nice dream.

maybe has already been mentioned/addressed, but it would be awesome to get different loop lengths for each of the 4 tracks in kria! also, more flexibility on the scales - microtuning and transposing above a fifth would be cool :slight_smile:

Can you expand on what you’re looking for? You can set different loop lengths for each track and each parameter within each track, depending on your config settings.

There is a grid interface which is mostly intended for calibrating the DACs but can in principle be used to arbitrarily reprogram the tuning table. Given the breadth of possibilities for microtonal music it’s hard to know (probably largely due to my ignorance about microtonality) what kinds of microtonal features are of use to different users.

Some discussion of this up-thread, I suspect this will require some rethinking of the scale interface, perhaps using a separate page. Interested in input on how the UI for this could be realized.

ahhh yes that’s it! thank you. not sure how i missed that in the manual but that’s exactly what i was looking for. that’s true for the scales, might not be worth it for the amount of people who would use it. not at my system right now, but would time be included in track parameters per row? for example you could set one track to the slowest possible speed while the others are at the fastest?

This and many other timing configurations are possible, see the Time section. For this setting:

  • Hold down key 1 (TIME) on Ansible.
  • Tap the single lit key by itself in the lower-right area of the grid, to select time div sync = TRACK.

wow… maybe im going through the manual too quickly :slight_smile: thanks again though, can’t wait to explore these possibilities

1 Like

Congrats on 3.0!

Not sure how hard the process of adding new i2c devices is but it would be incredible to address the new Expert Sleepers Disting EX from Ansible via i2c. It has native i2c support (with switchable pullup resistors) and you can map things via i2c just like MIDI mapping.

All three grid apps would be amazing with the SD multisample mode which allows 8 note polyphonic multisample playback. The 6 triggers algorithm would be a great drum machine with Kria or Meadowphysics. I know these algorithms already support MIDI input, not sure how much work it would take to trigger note messages via i2c.


As an aside (which I don’t realistically think would ever get rolled into Ansible), wouldn’t it be cool to use grid as a matrix mixer interface? The disting’s first algorithm is a 6 input 4 output matrix mixer. I’m imagining a grid app with the 6 inputs arranged in the top row and the 4 outputs in the left column, and you can press squares to route the signals accordingly, sorta like a Synthi/VCS3 pin matrix. Hold a patch square and use separate increment decrement buttons to control signal strength strength. Press another to invert the signal. You could potentially even pattern record to get a sequence-able patching matrix!

2 Likes

i have a couple of requests specifically about Just Friends / Kria.

I would be interested to know other peoples opinions on Just Friends octave ranges in Kria.

For me, the initial octave setting when Just Friends starts is very mid / range and i am unable to get a lower bass range as its at the max low octave setting in Kria. Is it possible to lower the transpose startup setting for Just Friends? Something like 2 octaves lower. Better still, even 3 octaves lower? Then you can move them up/down in the transpose page of Kria itself? Currently half the useable range in Just Friends is available in Kria. The top 3 transpose settings are in the out of range cat frequency :slight_smile:

The other issue i was having with Just Friends was distortion when too many outputs were playing at the same time. It’s most noticeable if you stop pinging and open up the attack for longer swells and all the outputs start playing and overlapping. Is it possible to manually have a setting for the mix output voltage lowered by the user? I’ve been playing on Orcas Heart and i know Scanner Darkly added individual volume faders for each individual output. All I’m interested in would be lowering the mix output when i start hearing distortion in the default page somewhere. Maybe this one is a Just Friends firmware thing. I saw that mix out voltage being adjusted and lowered in Crow so wondering if it could be done in Kria?

2 Likes

Does this include after adjusting the “follower octave shift”? On startup no JF.SHIFT is sent so the zero point is JF synth mode’s default, which should be middle C. On the follower detail configuration page you can apply a global octave shift to the follower to go a couple octaves down by sending a JF.SHIFT message. On the preset page, hold the key below the follower toggles, then tap the first toggle for JF. In the top left there should now be lit keys in the same position as the track-level octave shifts on the Kria octave page, this should allow you to shift a couple octaves down.

I grappled with this a bit because for playing JF notes you need to send a velocity parameter, currently this is just derived from the Kria duration, which is an imperfect solution. What might make sense here is to have some other follower-specific configuration, it just complicates the follower configuration page a bit both from a code and UI standpoint. But I think it makes sense to implement something like this on the follower detail configuration page.

3 Likes

what about being able to designate a track to control velocity? this might be an interesting way to add variation. or being able to designate a track to control txo waveform / attack / decay. this definitely needs to be balanced with not making the UI too complex but could make for some interesting results i imagine.

2 Likes