MidiFighter Twister - Change Encoder Settings via MIDI
Results 1 to 9 of 9
  1. #1
    Tech Wizard
    Join Date
    Oct 2012
    Posts
    23

    Default MidiFighter Twister - Change Encoder Settings via MIDI

    The Twister is highly programmable both via the MidiFighter Utility (MFU) app and also via MIDI. The documentation explains everything quite clearly;

    https://drive.google.com/file/d/0B-Q...41VnZfOTA/view

    Some things though it seems can only be controlled via the MFU app and not MIDI. For example all of the encoder settings, such as Enable Detent, Detent Color, Sensitivity, Indicator Type - these are not documented as controllable via MIDI, however I'm guessing there's a way to do it if you can figure out the right SySEX values.

    Can anyone confirm or shed some light on this ?

    Cheers

  2. #2
    Tech Wizard
    Join Date
    Jan 2010
    Posts
    46

    Default

    Hi noofny,

    This sounds like an interesting issue to investigate, i've been doing quite abit of midi remote scripting lately but not explored SySEX messages yet.
    So I can understand properly what you're trying to do, where are you wanting to send the midi from in order to change these settings? from the controller itself or ableton/traktor etc?

  3. #3
    Tech Wizard
    Join Date
    Oct 2012
    Posts
    23

    Default

    Hey mega_john - great to see some interest!

    The host app is Ableton Live, I have a custom python midi remote script which runs my Twister, so I already control all of the encoder colors and values etc etc. To achieve this, the script will just sending a sysex message instead of a cc or note basically, because I don't believe the encoder settings I listed are controllable by CC or Note messages. I can help you on how to send sysex via a midi remote script if you need, because I do that a lot on my Push customer scripts and it works nicely to control things such as the LCD, which you also can only do via sysex.

    The clue here is that the MF app shows you the sysex logs of what it sends to the device when you click "Send to Midifighter". The trick though is that this is everything (a dump of all the settings), so finding the ones that just relate to the encoder settings would require to do a diff, if that makes sense.

    Naturally if I get anywhere with this I'll post how to do it.

  4. #4
    Tech Wizard
    Join Date
    Jan 2010
    Posts
    46

    Default

    Hi Noofny,

    I get what you're saying, doing a diff sounds like a good way we could narrow it down.
    It sounds like you may have already figured it out by now but a starting point would be to change one of the parameters you're trying to figure out and run a diff, see if there's any indicators there.
    I have a twister too but not sure when I'll get a chance to try this out myself.
    Maybe you could post up 2 versions of the logs and I'll help to see if I can find anything?

    I've sent midi to ableton but don't think I've done it the other way around yet, how do you handle that?

  5. #5
    Tech Wizard
    Join Date
    Jan 2010
    Posts
    46

    Default

    Did you get anywhere with this Noofny?

  6. #6
    Tech Wizard
    Join Date
    Oct 2012
    Posts
    23

    Default

    Today I played a bit with it, didn't really get where I wanted to though.

    Based on a diff between 2 bulk dumps I managed to isolate 2 sysex message that the MF Utility sends to set encoder ring mode (dot/bar/blended-bar)...not sure if they are both needed or not;


    [0xf0, 0x00, 0x01, 0x79, 0x04, 0x00, encoder_index, 0x01, 0x02, 0x18, 0x0a, 0x00, 0x0b, 0x01, 0x0c, 0x02, 0x0d, 0x04, 0x0e, encoder_index, 0x0f, 0x00, 0x10, 0x05, 0x11, encoder_index, 0x12, 0x01, 0x13, 0x33, 0x14, 0x00, 0x15, 0x3f, 0xf7]

    [0xf0, 0x00, 0x01, 0x79, 0x04, 0x00, (encoder_index+0x01), 0x02, 0x02, 0x04, 0x16, encoder_mode, 0x17, 0x00, 0xf7]

    encoder_index : one of the 16 encoder indexes, zero-based, so 0x00 to 0x0f
    encoder_mode : 0x00=dot, 0x01=bar, 0x02=blended-bar


    I also managed to isolate what appears to be a message to save/reboot the unit which the MF Util sends at the end of a dump;

    [0xf0, 0x00, 0x01, 0x79, 0x01, 0x00, 0x06, 0x01, 0x01, 0x02, 0x02, 0x03, 0x07, 0x04, 0x02, 0x05, 0x02, 0x06, 0x06, 0x07, 0x02, 0x08, 0x3f, 0x09, 0x7f, 0x0a, 0x00, 0x0b, 0x01, 0x0c, 0x02, 0x0d, 0x04, 0x0e, 0x03, 0x0f, 0x00, 0x10, 0x05, 0x11, 0x03, 0x12, 0x01, 0x13, 0x33, 0x14, 0x00, 0x15, 0x3f, 0x16, encoder_mode, 0x17, 0x00, 0x1f, 0x7f, 0x20, 0x64, 0xf7]

    encoder_mode : not really sure what this is, but it matched the values that I set for the encoder mode in previous messages.



    Sending this isolated sequence of 3 messages works, it updates the settings fine. However after sending the save/reboot message the unit does it's little green-light flashy sequence (same thing you see when you dump settings using the MF Util). Not really practical when you're wanting to change values on the fly in the middle of a set for example. If you don't send this save/reboot message, then the encoders you updated remain unresponsive, like they are in a write-only mode or something.

    It would be awesome if someone with internal brains on the matter could help shed some light.

    DJTT...anyone...please?

  7. #7
    Newbie
    Join Date
    Apr 2017
    Posts
    2

    Default Sysex Protocol for Midi Fighter Twister

    It sure would be nice it the sysex protocol was published. I have different applications for my MFT and would like to uses public domain "sendmidi" to change MFT configurations between apps. Sendmi is a nice little utility that can send midi from the Windows 10 cmd prompt. I could then set up a batch file do send sysex to configure my MFT prior to loading a given application. Right now, I have to go the the MF utility and do it manually.

    Also, in production, I am running through a Iconnectivity Imidi+. The utility does not recognize the MFT when hooked through that interface, so I not only have to run the utility manually I have to switch my connectors any time I want to change configurations. I opened a ticket to see if DJTT would help. Let's see where it goes.



    Quote Originally Posted by noofny View Post
    Today I played a bit with it, didn't really get where I wanted to though.

    Based on a diff between 2 bulk dumps I managed to isolate 2 sysex message that the MF Utility sends to set encoder ring mode (dot/bar/blended-bar)...not sure if they are both needed or not;


    [0xf0, 0x00, 0x01, 0x79, 0x04, 0x00, encoder_index, 0x01, 0x02, 0x18, 0x0a, 0x00, 0x0b, 0x01, 0x0c, 0x02, 0x0d, 0x04, 0x0e, encoder_index, 0x0f, 0x00, 0x10, 0x05, 0x11, encoder_index, 0x12, 0x01, 0x13, 0x33, 0x14, 0x00, 0x15, 0x3f, 0xf7]

    [0xf0, 0x00, 0x01, 0x79, 0x04, 0x00, (encoder_index+0x01), 0x02, 0x02, 0x04, 0x16, encoder_mode, 0x17, 0x00, 0xf7]

    encoder_index : one of the 16 encoder indexes, zero-based, so 0x00 to 0x0f
    encoder_mode : 0x00=dot, 0x01=bar, 0x02=blended-bar


    I also managed to isolate what appears to be a message to save/reboot the unit which the MF Util sends at the end of a dump;

    [0xf0, 0x00, 0x01, 0x79, 0x01, 0x00, 0x06, 0x01, 0x01, 0x02, 0x02, 0x03, 0x07, 0x04, 0x02, 0x05, 0x02, 0x06, 0x06, 0x07, 0x02, 0x08, 0x3f, 0x09, 0x7f, 0x0a, 0x00, 0x0b, 0x01, 0x0c, 0x02, 0x0d, 0x04, 0x0e, 0x03, 0x0f, 0x00, 0x10, 0x05, 0x11, 0x03, 0x12, 0x01, 0x13, 0x33, 0x14, 0x00, 0x15, 0x3f, 0x16, encoder_mode, 0x17, 0x00, 0x1f, 0x7f, 0x20, 0x64, 0xf7]

    encoder_mode : not really sure what this is, but it matched the values that I set for the encoder mode in previous messages.



    Sending this isolated sequence of 3 messages works, it updates the settings fine. However after sending the save/reboot message the unit does it's little green-light flashy sequence (same thing you see when you dump settings using the MF Util). Not really practical when you're wanting to change values on the fly in the middle of a set for example. If you don't send this save/reboot message, then the encoders you updated remain unresponsive, like they are in a write-only mode or something.

    It would be awesome if someone with internal brains on the matter could help shed some light.

    DJTT...anyone...please?

  8. #8
    Newbie
    Join Date
    Mar 2017
    Posts
    3

    Default yes

    Bump to this!

    The utility app is pretty poor and has some frustrating bugs for updating multiple encoder settings.

    Firmware is open-sourced, why can't we have the utlity app open-sourced / MIDI sysex documented?

  9. #9
    Tech Student
    Join Date
    Oct 2011
    Posts
    1

    Default

    I'd really love to be able to change the encoder type between Enc 3FH/41H and 0-127 on the fly. It's easy to change all the settings documented in the User Guide using Max but I guess I need to use Sysex to change the encoder type? Thanks for your progress already...

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •