Editing the json file

Thanks Christian for the nice update.

I'm trying to make sense of the new midi configuration method. Here are a few observations and questions:

1. I guess we should not rename the edited json file. In my first attempt I gave my edited file a custom name and it did not work at all.
2. What exactly are the allowed values for Ranged Controls? The comment in the file says "Pick a continuous range of 25 notes... and a continuous range of 16 values..." The default values are -1 for selected loop and 1, 2, 3 and 4 for the individual loops. But those are not ranges. -1 isn't even a valid midi value. Please explain.
3. For now, I am just using 1 loop. Can I just delete the corresponding parts of the file? This way, I wouldn't have to worry about midi messages accidentally triggering unwanted actions.
4. Would it be possible to have a midi control for the 'Bounce' action? (I know that's a feature request. Sorry ;-) )



  • Hey Axel,

    1. Yes, don't rename the JSON file... Sorry, I did not have time to create a UI for selecting different files. This was a quick and dirty way to get the file code working. Worst case, I figured people could keep different copies of the file in different directories or something. Sorry for the confusion.

    2. The ranged controls may be a bit buggy at the moment... I did not have time to test those as much as the other ones... The current default settings for selecting the undo history (which divides one CC into 4 different ranges) should work as is without editing. Let me know what configuration you are trying and I can investigate further.

    3. I would re-assign any MIDI controls you are not using to MIDI values you are not using. Loop 1 will get parsed by Everest first, but subsequent entries will override any MIDI assignments. So, it is best to push them to dummy values you _know_ you will not be hitting/using/etc.

    4. Bounce _should_ be active when hitting Undo on an empty loop. I will investigate this and see what is wrong... I can't remember off hand because Bounce was a very special case and is definitely different from the other loop messages.
  • So, the ranged controls are always CC messages? I'm afraid, I still don't get it. In the default file, History and Keyboard have the same number assigned for each loop ("History" : 1, "Keyboard" : 1). Is this the CC number?

    Maybe you could give me some examples:

    1. At the default setting, what CC message and value should I send to select, e.g., slot number 2 in the history of loop 3?
    2. What message and value should I send to transpose loop number 1 one octave lower?

    At the moment, no CC between 1 and 4 seems to be doing anything at all.
  • Different contiguous value ranges of CC #70 should trigger the history of each loop. Ex: 0-15 will trigger the undo history for loop 1, 16-31 for loop 2, and so on... (there is a little more info in the MIDI implantation documentation under the Settings/MIDI menu of Everest). This feature has actually been in Everest for a few versions, but this is the first time I created a UI for it.

    The musical keyboard ranged MIDI control probably have bugs in it, so I have to investigate and get back to you. Again I expect the default CC#70 to work for each undo history.

    I tested the CC #70 implementation using both hardware and other apps. I used Lemur to great effect on the same device for that. You have to assign each button in the device/app to not only transmit on CC #70, but also pick the exact CC #70 _value_ (i.e. a number between 0 and 127) for that button. So, to control all loop histories, you would use 64 buttons, each sending a different value for the same CC#.

    Just for completion: MIDI CC Messages have two relevant components of the three byte MIDI message: The first is the channel/type/status byte, the second is the CC number, and the third is that CC number's value. So, for this feature, the second byte would be the same for each undo history element/point, 70, but the third byte would be different.

    [ CC Number, CC Value ]

    [ 70, 0 ] -> Loop 1 Undo History Slot 1
    [ 70, 1 ] -> Loop 1 Undo History Slot 2
    [ 70, 2 ] -> Loop 1 Undo History Slot 3
    [ 70, 15 ] -> Loop 1 Undo History Slot 16
    [ 70, 16 ] -> Loop 2 Undo History Slot 1
    [ 70, 17 ] -> Loop 2 Undo History Slot 2
Sign In or Register to comment.