Storing values/data in Axoloti, and ability to recall it


#1

Hey smile

Have been trying to store some values in a table. It works great the first time I make the patch live and send the values to the table, but when I make the patch "unlive" and then make it live again, I have to feed the table with new numbers. The table does not remember the values.

Is there a way to store some values in Axoloti that I would be able to recall every time I make the patch live? I tried with a table with no luck though, but I am open to other ways of doing it.

Any ideas are welcome smile

Table modulation INPUT.axp (3.9 KB)

Edit: I am thinking a bit of a different approach: If I create a sequencer/string of random numbers (from here for example https://www.random.org/integers/), would I be able to use that string of numbers in Axoloti as a modulation source?


Storing data as a sample?
Long delay for control data
#2

how many numbers?
If it is just a few then it could be done with some knobs and internal midi. it is a somewhat ugly hack though.

(are you trying to make presets like on a regular synth?)


#3

table/save and table/load?
should be able to save/load the contents of your table to/from SD card.
last time I tried it was a bit buggy though, especially with larger tables...


#4

Well a fair amount of numbers like 256 or 512 would be awesome, but I could do with less like 128, but not much less than that. I also thought of doing it with a few knobs and midi, but it has to be more advanced than that.

I am not trying to make presets. I am trying to make some random patterns that is 100% recallable. If you are familiar with Nord G2, it has got a module called random patterns and it is kind of that I am trying to recreate. Doesn't have to be an exact match to the G2 module, but it is essential that it is 100% recallable.


#5

Hey Tim smile

I tried the patch you posted here a while ago, and it is really cool, But it does not remember the exact values..... Everytime I make the patch live, it has to be feed with new numbers and is therefor not recallable. It is this one I am taliking about:

https://sebiik.github.io/community.axoloti.com.backup/uploads/default/original/1X/77e9db92679525242d73d932e9d6fbc4cf44aec6.axp

I tried adding resets functions for yours but I havent been able to make it play the same everytime.

Havent tried table/save table/load yet. Maybe that is a way to go. If I can store the table to SD card, that might be the way to go. Then it should be recallable. EDIT; How does that work, exactly?


#6

maybe something like this? (haven't actually tested, let me know if it works)


rndpatterns.axp (8.4 KB)


#7

Thanks smile Will check it out right away smile

EDIT:
I tried using it like this:
1. Push button in top left corner to feed the table with random notes.
2. Push save button
3. Push load button
4. Nothing happens smile

I think I am not doing it right....... I connected a display to the output of the load table. That is where new stored signal should be send out, right?


#8

I think the way to test is:
fill the table with random values, push save, fill the table again with different rnd values, then push load, and it should fill the table again with the first rnd values.
Not sure what the outlet of table/load is for, seems to have something to do with error messages.
And error messages I do get:
Axoloti says: Open failed
Axoloti says: Write failed
Axoloti says: Close failed
There is a help file for table/load and table/save, but inside load.axo it redirects to
<helpPatch>table.axh</helpPatch>
instead,
that should probably be:
<helpPatch>table_load_save.axh</helpPatch>


#9

Just tried what you wrote. I am pretty sure that when I fill the table with random numbers the second time, I can not recall the numbers I filled in the first time. Anyway that is what I experience here. I made the test really simple with the pattern length set to 4 so I know for sure if the pattern is loaded again.

Also when I "unlive" the patch and make it live again, I cannot recall anything form the load button.


#10

@alex

After reading what you suggest with knobs and midi I got a bit curious about your idea. Could you post an example? Just a very simple one. Thanks wink


#11

dont you need to allocate memory for the table first *
oh wait you did.
Probably needs to be in top left corner though for the operation execution order to work correctly.


#12

well maybe its the indexer - it works fine (i guess) with a simple string.
I can save and load the table file.


Feeding random pitches into a sel_fb_16?
Newbie Questions about Patch Loading, Preset saving, Polyphony, Midi Channels of standalone patches
#13

YES @alexk that works smile even when I unlive and live again it works. Freaking awesome. THANKS wink But also big thanks to @timvets for helping me realize my idea.

I am not 100% sure what those strings do and how they work..... But it works. Couldnt find any help file for the string objects....


#14

so i wonder if this is the way to build a preset save load system...


#15

Actually after REALLY testing it, I am back to zero.... It does not recall the exact numbers that I saved, so still just random, not really random patterns. Anyway, I have another idea to make it happen, which I am going to try out.

@allexk, about the save/load preset system: I am not sure what you mean? Have you tested the presets system that comes with axoloti? I tried and to me it works pretty ok. Still need to do some more testing.

What is you idea with preset load/save system?


#16

are you saying table/save, table/load doesn't work?
if so, perhaps we can create a simple test case to prove this...
e.g. fill a table with a sequence 1 to N, save, then load it....
(don't use random numbers as its hard to debug and prove whats going on)

more specifically in your case, are you saying that you want a random sequence, but that you want it repeatable? if so the usual solution to this is to use random seeds. this would allow 'repeatable' random patches.
(the only disadvantage, is if you want to have some 'really random sequences' mixed in with repeatable random sequences ... as there is only one random seed , on the flip side this is often an advantage, as you can have lots of things being pseudo random)


#17

i need to save presets while the synth is live since i want to build a hardware interface that lets me noodle without a pc or the patcher. I was thinking of using a table to save all of the values of knobs into a string and then parse it out and feed it back to the knobs when loading different tables (presets).

weird you weren't getting the same number loaded back in. i think it worked fine for me.


#18

this would probably be better done at the the parameter level... the firmware already maintains a list of all parameters and their values, so it would just be a matter of persisting this to the SD card, and then being able to reload it. Id also store it as binary... much faster to read/write.
(note: there are some limitations in parameters, but this will need to be resolved mid term anyway)

one complication, would be ensuring it worked, even if the patch changed.... not impossible, but a complication. (it knows the names of the parameters too)


#19

im still a little bit away from writing that design doc in the other thread about what i wish to do..since im still info-diving about all the wavetable synths out there and making the sound engine. but cant wait hehe.


#20

I am not saying table/load table save doesnt work.... I wouldnt go that far smile

Will do test again now... but a few days ago I also tested it with a pattern length of 4 so I can see if the exact pattern is repeating. As I save it and load it again it is not the same pattern that is reproduced. That is what I noticed.... You can push load button but it is not the pattern that was saved.

To me it makes no point trying with not random numbers, cause I want to use it with random numbers. Also if you set the pattern length to only 4 it should be possible to trouble shoot...

But maybe it does remember the numbers but doesnt play them back in the right order?

Will do the test again now.

But yes I am looking for random patterns or sequences if you will. Not just random..... Random has no pattern... Random patterns is made of random numbers, but it has an order on what and when it is played....... Take a look a bit up in this thread there is an explanation on the G2 module I am trying to recreate..

Anyway, I think I have found another approach which doesnt include tables. New idea is much more DSP friendly too.