Save controller values

Hi Midiboxers,

 

Is it possible to save controller values somehow?
My exact usecase would be this:
Button 1 saves current value of encoder 1 and 2
Button 2 recalls values of encoder 1 and 2

Best regards
Marxon
 

I guess that you don’t want to use the snapshot function, because it would store/restore all EVENT values (which are not excluded from snapshot) into/from a single storage, right?

There is a trick which could help in this case: you could use the SET command in a .NGR script to copy the value into dummy events, which don’t listen or send to any MIDI port, but just act as storage units.

E.g. let’s say you’ve defined a dummy LED with:

EVENT_LED id=3000

Then you should be able to copy the value of encoder 1 into this Event with

set LED:3000 ENC:1

And copy back with:

set ENC:1 LED:3000

in a .NGR file

Best Regards, Thorsten.

Hi again,

 

I guess that you don’t want to use the snapshot function, because it would store/restore all EVENT values (which are not excluded from snapshot) into/from a single storage, right?

 

Right!

 

Then you should be able to copy the value of encoder 1 into this Event with

set LED:3000 ENC:1

And copy back with:

set ENC:1 LED:3000

So that’s the purpose of the set command.

I did not really figure out how the multibnk.ngc example works…

Thanks

 

 

Best regards

Marxon

But if i want to save this dummey led/enc values to sd to load them again after restart

there is no other way then using snapshots, right?

Yes, this can only be done with snapshots.

 

Best Regards, Thorsten.

A small suggestion:

What about instead to exclude controllers from dumping with “no_dump=1”

it would be nice to have the option to include controllers with “dump=1”?

Hm… but how to switch between the different behaviours?

I guess that most people don’t want to add “dump=1” to all EVENTs, so that it can only be an optional parser feature.

 

Best Regards, Thorsten.

I guess that most people don’t want to add “dump=1” to all EVENTs, so that it can only be an optional parser feature.

 

Yes, that´s true…

…added about 700x “no_dump=1” :smile:

 

Another question:

Is it possible to have different sets of controllers which get dumped?

 

Best regards

Marxon

 

 

EDIT:

Just an idea:

It should work if i use dummy encoders for dumping too

and copy only the required values into my “real” encoders via an meta event, or?

Sorry for flooding the forum since a while, but this should not give the impression
that i am not trying to do it on my own. :smile:

MIOS Studio shows this error if i want to save a snapshot:

 

[20586.278] SAVE FX 1 1
[20586.281] [FILE] FAILURE: tried to open file '/DEFAULT.NGS' for reading, but previous file hasn't been closed!
[20586.290] [MBNG_FILE_R:455] WARNING: unknown command: p
[20586.290] [MBNG_FILE_R:456] WARNING: unknown command: p
[20586.291] [MBNG_FILE_R:457] WARNING: unknown command: "0
[20586.300] [MBNG_FILE_R:458] WARNING: unknown command: 20
[20586.300] [MBNG_FILE_R:459] WARNING: unknown command: p
[20586.301] [MBNG_FILE_R:460] WARNING: unknown command: p
[20586.302] [MBNG_FILE_R:461] WARNING: unknown command: Z4
[20586.302] [MBNG_FILE_R:462] WARNING: unknown command: 3
[20586.303] [MBNG_FILE_R:463] WARNING: unknown command: 9
[20586.308] [MBNG_FILE_R:464] WARNING: unknown command: 1
[20586.308] [MBNG_FILE_R:465] WARNING: unknown command: t
[20586.310] [MBNG_FILE_R:466] WARNING: unknown command: t
[20586.311] [MBNG_FILE_R:467] WARNING: unknown command: B8
[20586.311] [MBNG_FILE_R:468] WARNING: unknown command: 9
[20586.312] [MBNG_FILE_R:469] WARNING: unknown command: <
[20586.315] [MBNG_FILE_R:470] WARNING: unknown command: <
[20586.315] [MBNG_FILE_R:471] WARNING: unknown command: 
[20586.316] [MBNG_FILE_R:472] WARNING: unknown command: 
[20586.320] [MBNG_FILE_R:473] WARNING: unknown command: 
[20586.320] [MBNG_FILE_R:474] WARNING: unknown command: 
[20586.321] [MBNG_FILE_R:475] WARNING: unknown command: 
[20586.321] [MBNG_FILE_R:476] WARNING: unknown command: 
[20586.321] [MBNG_FILE_R:477] WARNING: unknown command: zc
[20586.321] [MBNG_FILE_R:478] WARNING: unknown command: d
[20586.321] [MBNG_FILE_R:479] WARNING: unknown command: d
[20586.322] [MBNG_FILE_R:480] WARNING: unknown command: tC
[20586.322] [MBNG_FILE_R:481] WARNING: unknown command: VD
[20586.323] [MBNG_FILE_R:482] WARNING: unknown command: {C
[20586.323] [MBNG_FILE_R:483] WARNING: unknown command: D
[20586.323] [MBNG_FILE_R:484] WARNING: unknown command: 'E
[20586.324] [MBNG_FILE_R:485] WARNING: unknown command: .E
[20586.324] [MBNG_FILE_R:486] WARNING: unknown command: E
[20586.324] [MBNG_FILE_R:487] WARNING: unknown command: E
[20586.324] [MBNG_FILE_R:488] WARNING: unknown command: xC
[20586.325] [MBNG_FILE_R:489] WARNING: unknown command: ZD
[20586.325] [MBNG_FILE_R:490] WARNING: unknown command: C
[20586.325] [MBNG_FILE_R:491] WARNING: unknown command: D
[20586.325] [MBNG_FILE_R:492] WARNING: unknown command: +E
[20586.325] [MBNG_FILE_R:493] WARNING: unknown command: 2E
[20586.326] [MBNG_FILE_R:494] WARNING: unknown command: E
[20586.326] [MBNG_FILE_R:495] WARNING: unknown command: E
[20586.326] [MBNG_FILE_R:496] WARNING: unknown command: cB
[20586.326] [MBNG_FILE_R:497] WARNING: unknown command: fB
[20586.327] [MBNG_FILE_R:498] WARNING: unknown command: p
[20586.327] [MBNG_FILE_R:499] WARNING: unknown command: p
[20586.327] [MBNG_FILE_R:500] WARNING: unknown command: "0
[20586.327] [MBNG_FILE_R:501] WARNING: unknown command: 20
[20586.328] [MBNG_FILE_R:502] WARNING: unknown command: p
[20586.328] [MBNG_FILE_R:503] WARNING: unknown command: p
[20586.328] [MBNG_FILE_R:504] WARNING: unknown command: Z4
[20586.328] [MBNG_FILE_R:505] WARNING: unknown command: 3
[20586.329] [MBNG_FILE_R:506] WARNING: unknown command: 9
[20586.329] [MBNG_FILE_R:507] WARNING: unknown command: 1
[20586.329] [MBNG_FILE_R:508] WARNING: unknown command: t
[20586.329] [MBNG_FILE_R:509] WARNING: unknown command: t
[20586.330] [MBNG_FILE_R:510] WARNING: unknown command: B8
[20586.336] [MBNG_FILE_R:511] WARNING: unknown command: 9
[20586.337] [MBNG_FILE_R:512] WARNING: unknown command: <
[20586.337] [MBNG_FILE_R:513] WARNING: unknown command: <
[20586.337] [MBNG_FILE_R:514] WARNING: unknown command: 
[20586.337] [MBNG_FILE_R:515] WARNING: unknown command: 
[20586.338] [MBNG_FILE_R:516] WARNING: unknown command: 
[20586.338] [MBNG_FILE_R:517] WARNING: unknown command: 
[20586.338] [MBNG_FILE_R:518] WARNING: unknown command: 
[20586.338] [MBNG_FILE_R:519] WARNING: unknown command: 
[20586.338] [MBNG_FILE_R:520] WARNING: unknown command: zc
[20586.339] [MBNG_FILE_R:521] WARNING: unknown command: d
[20586.340] [MBNG_FILE_R:522] WARNING: unknown command: d
[20586.340] [MBNG_FILE_R:523] WARNING: unknown command: tC
[20586.340] [MBNG_FILE_R:524] WARNING: unknown command: VD
[20586.342] [MBNG_FILE_R:525] WARNING: unknown command: {C
[20586.342] [MBNG_FILE_R:526] WARNING: unknown command: D
[20586.342] [MBNG_FILE_R:527] WARNING: unknown command: 'E
[20586.343] [MBNG_FILE_R:528] WARNING: unknown command: .E
[20586.343] [MBNG_FILE_R:529] WARNING: unknown command: E
[20586.343] [MBNG_FILE_R:530] WARNING: unknown command: E
[20586.343] [MBNG_FILE_R:531] WARNING: unknown command: xC
[20586.344] [MBNG_FILE_R:532] WARNING: unknown command: ZD
[20586.345] [MBNG_FILE_R:533] WARNING: unknown command: C
[20586.345] [MBNG_FILE_R:534] WARNING: unknown command: D
[20586.345] [MBNG_FILE_R:535] WARNING: unknown command: +E
[20586.347] [MBNG_FILE_R:536] WARNING: unknown command: 2E
[20586.347] [MBNG_FILE_R:537] WARNING: unknown command: E
[20586.348] [MBNG_FILE_R:538] WARNING: unknown command: E
[20586.348] [MBNG_FILE_R:539] WARNING: unknown command: cB
[20586.349] [MBNG_FILE_R:540] WARNING: unknown command: fB
[20586.350] [MBNG_FILE_R:541] WARNING: unknown command: p
[20586.350] [MBNG_FILE_R:542] WARNING: unknown command: p
[20586.352] [MBNG_FILE_R:543] WARNING: unknown command: "0
[20586.352] [MBNG_FILE_R:544] WARNING: unknown command: 20
[20586.353] [MBNG_FILE_R:545] WARNING: unknown command: p
[20586.354] [MBNG_FILE_R:546] WARNING: unknown command: p
[20586.355] [MBNG_FILE_R:547] WARNING: unknown command: Z4
[20586.355] [MBNG_FILE_R:548] WARNING: unknown command: 3
[20586.356] [MBNG_FILE_R:549] WARNING: unknown command: 9
[20586.359] [MBNG_FILE_R:550] WARNING: unknown command: 1
[20586.360] [MBNG_FILE_R:551] WARNING: unknown command: t
[20586.360] [MBNG_FILE_R:552] WARNING: unknown command: t
[20586.364] [MBNG_FILE_R:553] WARNING: unknown command: B8
[20586.366] [MBNG_FILE_R:554] WARNING: unknown command: 9
[20586.366] [MBNG_FILE_R:555] WARNING: unknown command: <
[20586.367] [MBNG_FILE_R:556] WARNING: unknown command: <
[20586.368] [MBNG_FILE_R:557] WARNING: unknown command: 
[20586.368] [MBNG_FILE_R:558] WARNING: unknown command: 
[20586.368] [MBNG_FILE_R:559] WARNING: unknown command: 
[20586.369] [MBNG_FILE_R:560] WARNING: unknown command: 
[20586.370] [MBNG_FILE_R:561] WARNING: unknown command: 
[20586.371] [MBNG_FILE_R:562] WARNING: unknown command: 
[20586.371] [MBNG_FILE_R:563] WARNING: unknown command: zc
[20586.372] [MBNG_FILE_R:564] WARNING: unknown command: d
[20586.372] [MBNG_FILE_R:565] WARNING: unknown command: d
[20586.372] [MBNG_FILE_R:566] WARNING: unknown command: tC
[20586.372] [MBNG_FILE_R:567] WARNING: unknown command: VD
[20586.372] [MBNG_FILE_R:568] WARNING: unknown command: {C
[20586.373] [MBNG_FILE_R:569] WARNING: unknown command: D
[20586.373] [MBNG_FILE_R:570] WARNING: unknown command: 'E
[20586.374] [MBNG_FILE_R:571] WARNING: unknown command: .E
[20586.374] [MBNG_FILE_R:572] WARNING: unknown command: E
[20586.374] [MBNG_FILE_R:573] WARNING: unknown command: E
[20586.375] [MBNG_FILE_R:574] WARNING: unknown command: xC
[20586.375] [MBNG_FILE_R:575] WARNING: unknown command: ZD
[20586.375] [MBNG_FILE_R:576] WARNING: unknown command: C
[20586.376] [MBNG_FILE_R:577] WARNING: unknown command: D
[20586.376] [MBNG_FILE_R:578] WARNING: unknown command: +E
[20586.377] [MBNG_FILE_R:579] WARNING: unknown command: 2E
[20586.377] [MBNG_FILE_R:580] WARNING: unknown command: E
[20586.377] [MBNG_FILE_R:581] WARNING: unknown command: E
[20586.378] [MBNG_FILE_R:582] WARNING: unknown command: cB
[20586.380] [MBNG_FILE_R:583] WARNING: unknown command: fB
[20586.381] [MBNG_FILE_R:584] WARNING: unknown command: p
[20586.382] [MBNG_FILE_R:585] WARNING: unknown command: p
[20586.382] [MBNG_FILE_R:586] WARNING: unknown command: "0
[20586.383] [MBNG_FILE_R:587] WARNING: unknown command: 20
[20586.386] [MBNG_FILE_R:588] WARNING: unknown command: p
[20586.387] [MBNG_FILE_R:589] WARNING: unknown command: p
[20586.387] [MBNG_FILE_R:590] WARNING: unknown command: Z4
[20586.387] [MBNG_FILE_R:591] WARNING: unknown command: 3
[20586.388] [MBNG_FILE_R:592] WARNING: unknown command: 9
[20586.391] [MBNG_FILE_R:593] WARNING: unknown command: 1
[20586.391] [MBNG_FILE_R:594] WARNING: unknown command: t
[20586.392] [MBNG_FILE_R:595] WARNING: unknown command: t
[20586.394] [MBNG_FILE_R:596] WARNING: unknown command: B8
[20586.398] [MBNG_FILE_R:597] WARNING: unknown command: 9
[20586.398] [MBNG_FILE_R:598] WARNING: unknown command: <
[20586.398] [MBNG_FILE_R:599] WARNING: unknown command: <
[20586.399] [MBNG_FILE_R:600] WARNING: unknown command: 
[20586.399] [MBNG_FILE_R:601] WARNING: unknown command: 
[20586.400] [MBNG_FILE_R:602] WARNING: unknown command: 
[20586.400] [MBNG_FILE_R:603] WARNING: unknown command: 
[20586.400] [MBNG_FILE_R:604] WARNING: unknown command: 
[20586.401] [MBNG_FILE_R:605] WARNING: unknown command: 
[20586.402] [MBNG_FILE_R:606] WARNING: unknown command: zc
[20586.403] [MBNG_FILE_R:607] WARNING: unknown command: d
[20586.403] [MBNG_FILE_R:608] WARNING: unknown command: d
[20586.403] [MBNG_FILE_R:609] WARNING: unknown command: tC
[20586.404] [MBNG_FILE_R:610] WARNING: unknown command: VD
[20586.404] [MBNG_FILE_R:611] WARNING: unknown command: {C
[20586.404] [MBNG_FILE_R:612] WARNING: unknown command: D
[20586.405] [MBNG_FILE_R:613] WARNING: unknown command: 'E
[20586.405] [MBNG_FILE_R:614] WARNING: unknown command: .E
[20586.405] [MBNG_FILE_R:615] WARNING: unknown command: E
[20586.406] [MBNG_FILE_R:616] WARNING: unknown command: E
[20586.406] [MBNG_FILE_R:617] WARNING: unknown command: xC
[20586.407] [MBNG_FILE_R:618] WARNING: unknown command: ZD
[20586.407] [MBNG_FILE_R:619] WARNING: unknown command: C
[20586.407] [MBNG_FILE_R:620] WARNING: unknown command: D
[20586.408] [MBNG_FILE_R:621] WARNING: unknown command: +E
[20586.409] [MBNG_FILE_R:622] WARNING: unknown command: 2E
[20586.409] [MBNG_FILE_R:623] WARNING: unknown command: E
[20586.409] [MBNG_FILE_R:624] WARNING: unknown command: E
[20586.410] [MBNG_FILE_R:625] WARNING: unknown command: cB
[20586.411] [MBNG_FILE_R:626] WARNING: unknown command: fB
[20586.413] [MBNG_FILE_R:627] WARNING: unknown command: p
[20586.414] [MBNG_FILE_R:628] WARNING: unknown command: p
[20586.414] [MBNG_FILE_R:629] WARNING: unknown command: "0
[20586.415] [MBNG_FILE_R:630] WARNING: unknown command: 20
[20586.419] [MBNG_FILE_R:631] WARNING: unknown command: p
[20586.419] [MBNG_FILE_R:632] WARNING: unknown command: p
[20586.420] [MBNG_FILE_R:633] WARNING: unknown command: Z4
[20586.420] [MBNG_FILE_R:634] WARNING: unknown command: 3
[20586.420] [MBNG_FILE_R:635] WARNING: unknown command: 9
[20586.422] [MBNG_FILE_R:636] WARNING: unknown command: 1
[20586.422] [MBNG_FILE_R:637] WARNING: unknown command: t
[20586.424] [MBNG_FILE_R:638] WARNING: unknown command: t
[20586.426] [MBNG_FILE_R:639] WARNING: unknown command: B8
[20586.429] [MBNG_FILE_R:640] WARNING: unknown command: 9
[20586.429] [MBNG_FILE_R:641] WARNING: unknown command: <
[20586.430] [MBNG_FILE_R:642] WARNING: unknown command: <
[20586.431] [MBNG_FILE_R:643] WARNING: unknown command: 
[20586.431] [MBNG_FILE_R:644] WARNING: unknown command: 
[20586.431] [MBNG_FILE_R:645] WARNING: unknown command: 
[20586.431] [MBNG_FILE_R:646] WARNING: unknown command: 
[20586.432] [MBNG_FILE_R:647] WARNING: unknown command: 
[20586.433] [MBNG_FILE_R:648] WARNING: unknown command: 
[20586.433] [MBNG_FILE_R:649] WARNING: unknown command: zc
[20586.433] [MBNG_FILE_R:650] WARNING: unknown command: d
[20586.434] [MBNG_FILE_R:651] WARNING: unknown command: d
[20586.435] [MBNG_FILE_R:652] WARNING: unknown command: tC
[20586.435] [MBNG_FILE_R:653] WARNING: unknown command: VD
[20586.435] [MBNG_FILE_R:654] WARNING: unknown command: {C
[20586.436] [MBNG_FILE_R:655] WARNING: unknown command: D
[20586.437] [MBNG_FILE_R:656] WARNING: unknown command: 'E
[20586.437] [MBNG_FILE_R:657] WARNING: unknown command: .E
[20586.437] [MBNG_FILE_R:658] WARNING: unknown command: E
[20586.437] [MBNG_FILE_R:659] WARNING: unknown command: E
[20586.438] [MBNG_FILE_R:660] WARNING: unknown command: xC
[20586.438] [MBNG_FILE_R:661] WARNING: unknown command: ZD
[20586.438] [MBNG_FILE_R:662] WARNING: unknown command: C
[20586.439] [MBNG_FILE_R:663] WARNING: unknown command: D
[20586.439] [MBNG_FILE_R:664] WARNING: unknown command: +E
[20586.440] [MBNG_FILE_R:665] WARNING: unknown command: 2E
[20586.440] [MBNG_FILE_R:666] WARNING: unknown command: E
[20586.440] [MBNG_FILE_R:667] WARNING: unknown command: E
[20586.441] [MBNG_FILE_R:668] WARNING: unknown command: cB
[20586.441] [MBNG_FILE_R:669] WARNING: unknown command: fB
[20586.442] [MBNG_FILE_R:670] WARNING: missing ENDIF command!

I use this code to save snapshot:

 

.ngc

EVENT_BUTTON id=2517 hw_id=1024	if_equal=button:2088:127	type=meta meta=runsection:71 no_dump=1

.ngr

# LINE 450
if ^section == 71
	LOG "SAVE FX 1 1"
	exec_meta SetSnapshot 1
	exec_meta SaveSnapshot
endif

Whats wrong?

Thanks again for support!

 

 

Best regards

Marxon

 

We’ve a problem here: the application can only open one file (because there is only a single read buffer).

This was never a problem before, but now you found a case where it does matter.

 

I’ve to consider to overwork the file handling to cover this case, but this will be a complicated change, and I won’t have the time to do this in the next 3..4 weeks… :-/

 

Best Regards, Thorsten.

Open one file? Do you mean it is not possible to use a script (.ngr) to load a snapshot (.ngs)?

Yes

 

Best Regards, Thorsten.

Does it work if i put everything (set, load, dump a snapshot and trigger a runsection)

into one single .ngc meta event?

Yes, this should work.

 

Best Regards, Thorsten.