mapping out a list into a multislider object from a .csv file
Hey guys,
this is my first time writing on this forum. I am working on a project in which i measure voltage differences happening in mushroom/mycelium and transforming the data into a sound wave which is then played out.
i am taking a .csv file that has two columns of info, on the left is the sample number and on the right is the voltage difference in microvolts. this is then put into a coll object which then produces a list using zl.group object and thresh object then using scale object to scale the list into -1. 1. so that it can be seen in multislider.
i am having trouble with the information, somehow it is not giving me a perfect graph, there are values missing or added. it is as if its reading one value and the next not reading it. i cant wrap my head around the problem.
the newone.txt file is the values i have from the mycelium voltage measurments.

Thank you,
Hicham
This is because you are including the timing (sample number) column with the voltage in the list you send to the scale then to the multislider. The values you circled in red are the sample numbers (and the rest is your voltage). Just use [unpack s f] after the [coll] and take only the rightmost output (corresponding to the float, or you voltage value.
Also, no need for thresh as your zl.group just sends one message (the list of all values) once the dump is done.
TFL,
thank you so much, I've been trying for hours to figure it out. i feel so stupid now hahaha. honestly thank you so much for the help.
if you dont mind helping me with one more thing as i cant seem to figure out the problem. im using the poke~ object to write in samples from the multislider into a buffer~ with @samps of 512 but somehow it seems to only get the first 250 values and then the rest isnt sampled in the buffer~ object. do you know how i can have the whole graph to be sampled into the buffer~? i tried changing the sample size, didnt work. im running max at 44.1kHz if that helps at all.

Hello.
maybe because you have to specify a higher "zlmaxsize".
ZL objects, by default only work with list lenght of max 256.
You have to replace your [zl lookup] by [zl 512 lookup]
Hey Schlam,
changing the [zl.lookup] object with [zl 512 lookup] worked perfectly, thank you so much. do you mind explaining what's the difference between both?
thanks again for the help.
There is tab about that in the zl.object help
@ Hisham
Interesting, what kind of measurement do you use ?
[zl 512 lookup] is equivalent to [zl.lookup @zlmaxsize 512], or even [zl lookup @zlmaxsize 512] or [list.lookup @zlmaxsize 512]. It is quite common that some attributes (here zlmaxsize) can be written as a argument (as in [zl 512 lookup]). But the ability to write the object name with or without point, with list instead of zl, or with the function (lookup) as a second argument is very idiosyncratic to the zl/list objects, due to historical reasons, if I understand correctly.
As of why to increase the zlmaxsize in this case, I assume you already know it as you already did it for [zl.group] bteween the [coll] and [multislider].
I'm also interested to see more of the big picture of your project, if you don't mind to share!
Hey guys,
So this is my whole project at the moment (sorry if it's messy). The plan is to gather voltage differences happening in the mycelium (Fungi) and transforming them into sound waves using poke~ and buffer~. different data each having a different voltage graph will form the sound scape.
in addition, once the mushrooms (fruit of the fungi) grow. i'll be taking data of the mushrooms itself and the data taken will control what frequency the sounds will be at using the phasor~ and the 2d.wave~ objects.
the way im gathering data is using a data logger called picolog ADC 24 which can measure down to 39 mv with really low noise and high precision.
hopefully at the end i'll have a 10 mins song of sound generated purely by the mushrooms and mycelium.
the plan is to try to translate the world of mycelium as much as possible.
im growing B+ psylocibian mushrooms.
if you find anything in the patch that is wrong or isnt neccesary please do share as im pretty new to max and still learning.

@ Hisham,
thanks for your posting about your project, fascinating.
Briefly look in your patch, there are two [r freq1], one should be [r freq], and why you use the mc~ objects, plain ~object would be sufficient. ? For more instances look in the poly~ object.
@ Klangschmied
so the [r freq] should be the same for both to have a more cohesive sound. but that doesn't matter at the moment as the [r freq] object will be getting data from the mushroom itself (which i don't have at the moment, still waiting for them to grow).
i tried the mc~ objects to see if i could create a more spacey sound, tried to delay one of the 2 channels to give it a stereo feel, but didn't help that much. I'll try maybe the poly~ object to see if that works.
thanks for your feedback and your interest in the project