Use Midi CC as continuos rotary encoder

Hi there,
someone in the Facebook group was asking if it was possible to use MIDI controllers with endless encoders (like a Behringer BCR2000 or APC40 mk2 for example) to control a continuos rotation in Touch.

The problem is that when you keep spinning your encoder in one direction, at some point you will reach it’s digital end, either 0 or 127, and the object in TD obviously stops rotating.

The workaround I found, is to receive the MIDI cc using a MidiIN CHOP, select the CC that you would like to use for this scope, do some calculations, rotate the object, and then send the MIDI back to the MIDI controller using a MidiOUT CHOP, to reset its value to centre.
See .tox attached.

This is my approach on resolving this, I am sure there are other ways, this is my take.

MIDI_continuos_CC.tox (1.5 KB)

2 Likes

Here below a version 2, way more simplified than my previous one.

In this version I use a Midi in DAT to check the cooking of the incoming Midi CC.

Make sure to select the your MIDI device in Dialogs-> MIDI Device Mapper, and then type the index of the MIDI message you intend to control in the Select_MIDIcc table.

It has been tested and working fine with with Behringer BCR2000

Any comments or feedback are welcome.
A huge thanks to @nettoyeur for helping me resolving a MIDI cooking issue

MIDI_CC_continous_v2.tox (1.5 KB)

2 Likes

Thanks for posting this example, even though it doesn’t help me with my problem you provided some good insights with endless encoders > Resetting MIDI Endless Encoders

2 Likes

Hi FaustoB.
That’s a good solution using scripting and parameters.
If you’re interested in one that uses only CHOPs, I’ve attached one I made previously.

Namely:
Find its slope,
remove the spikes,
and reintegrate back with the Speed CHOP.

endless_slider.tox (17.1 KB)

Cheers,
Rob

2 Likes