Sines

Can you try loading the script from matron in the browser?

I did. 16 sines it is!
I restarted norns (a shield in this case) and I get 0 sines. Weird.
I reset, connected to maiden and started the script via the norns shield menu, works as well.
So, connecting to matron seems to change something…

Summary

script load: /home/we/dust/code/sines/sines.lua

cleanup

script clear

script run

loading engine: Sines

reading PMAP /home/we/dust/data/sines/sines.pmap
m.read: /home/we/dust/data/sines/sines.pmap not read.
Engine.register_commands; count: 5
___ engine commands ___
env iiiiii
fm_index ii
fm_mul if
sine_freq ii
sine_pan ii
___ polls ___
amp_in_l
amp_in_r
amp_out_l
amp_out_r
cpu_avg
cpu_peak
pitch_in_l
pitch_in_r

script init

loaded Sines engine
pset >> read: /home/we/dust/data/sines/sines-01.pset
pset :: /home/we/dust/data/sines/sines-01.pset not read.

OK cool. I have a shield as well, there must be something different going on between loading on device and loading from matron.

btw - pushed a small fix to the fm index midi mapping feature, run the fetch again to pick it up. midi mapping is tricky when you want to display values in the gui. need to work on this part.

1 Like

If you want me to check a few things, I can do so in the evening (I am in Berlin, CET), I also have a factory Norns at home as well as midi controllers (my 16n is still out of function).

1 Like

This is lovely. I’m definitely experiencing some weird bugs - sometimes the lowest few sines don’t work; sometimes only the even ones; this time the first eight don’t work and the second eight do! I’ll have a dig into it and see if I can figure out what’s awry.

1 Like

Yeah I’m at a loss as to that voices bug. nothing is reported in maiden…

I apologize I don’t have a lot of good debugging advice to offer right now, and my SuperCollider skills are weak. Perhaps just one thing, and assuming I’m interpreting the engine correctly in that it is droning the voices, is to make sure that neither car or amp reaches zero value in a way that cannot be set from the UI, since no amount of multiplication on line 36 of the engine

sig = Pan2.ar(car * amp, sine_pan, 1);

is going to bring them up from there since

0*n=0

Just a thought from some of my prior experiences of making bugs in various programming languages :slight_smile:

For me all the 16 voices are there, I just checked :wavy_dash:

1 Like

Wish I could be a bit more systematic, probably should make a proper testplan first.

What I can report: starting from matron is usually successful, mapping of volume works (port 1, faderfox pc4), however fm mapping does not seem to work (the mapping works but it does not have an effect when on the main page).

Not sure this is helpful:

Summary
/home/we/dust/code/sines/sines.lua:137: in field 'event'
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>

lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:260: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:137: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>

If I hit a certain volume too high, voices get “tilted towards one side”, gets fixed by a reset or sleep.

However, I did not experience any stuck voices anymore.

Happy to test more on the weekend, feel free to send me instructions if there is certain stuff I should look at.

1 Like

there are a few issues:

  • integer spec for command arguments that should be floats
  • attempting to modulate Env arguments which will only be evaluated at synthdef compile time

maybe other stuff

sorry i haven’t had time to specifically test and PR

maybe it would help to take a look this guy

to add FM i would just replace SinOsc with PMOsc rather than explicltly managing the modulator.

3 Likes

this looks like just the thing i need. thank you. i’ll try and refactor using this at the weekend.

3 Likes

@zebra trying out a modifed zsin engine you posted, and i think i’ve removed those errors i was experincing. great!

what would you suggest to implement a basic looping AD envelope?

Using amp_ = LagUD.ar(K2A.ar(amp), amp_atk, amp_rel); from your engine doesn’t see to work, but maybe I don’t understand what it is really doing. changing amp_atk and amp_rel from the lua doesn’t affect the volume of the envelope…

edit:

amp_ = EnvGen.ar(Env.circle([0, 1, 0], [amp_atk, amp_rel, 0.001]), levelBias: 0.0); seems ok.

2 Likes

No more dead voices for me, mapping of vol and fm index works…although fm only works when I am not on the first page of the script… I haven’t tried the envelopes yet.
LOVELY. Thanks so much!

2 Likes

Trying to reproduce midi errors that @doomglue is seeing. Not having any luck. I think I’ve squashed the bad sc development errors described upthread (thanks @zebra).

Anyone care to update and test out midi mapping?

To explain: everything works, however mapped fm control does not work when I am on the first page of the script. No fm changes can be heard. While being on other pages such as the midi map page etc it works fine and has an effect.

Matron output from 1st page when I turn the midi encoder mapped to fm ind1:
lua:

Summary

/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua: /home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>
lua:
/home/we/norns/lua/lib/musicutil.lua:345: attempt to perform arithmetic on a nil value (local ‘note_num’)
stack traceback:
/home/we/norns/lua/lib/musicutil.lua:345: in function ‘musicutil.note_num_to_name’
/home/we/dust/code/sines/sines.lua:257: in function ‘redraw’
/home/we/dust/code/sines/sines.lua:134: in field ‘event’
/home/we/norns/lua/core/midi.lua:409: in function </home/we/norns/lua/core/midi.lua:399>

1 Like

Hi,

tried the latest version of Sines. Using the default midi mappgings (starting with 32) I can select the sines but not adjust the volume, it stays at 0. I checked with the Midi Monitor and my controler mapping is ok.

I also am not clear about how to midi map the fm_index controls. If voice volumes go from 32 to 47 do the fm_index controls start with 48 (and go up to 64)?

Ah, and before I forget: All sines sound (using the encoder controls); so thanks a lot for the fix!

1 Like

Cool. Need to sort the midi mapping obviously :confused:

Will dig in tonight.

1 Like

OK, I’ve pushed a change to fix the silly midi mapping errors.

The script is now totally decoupled from hard-coded 16n cc numbers. Existing saved psets will continue to work, but if you want to use a controller with this script, you will have to set up mappings in the norns map page. You should only have to do the midi mapping once - the last saved pset is automatically loaded on start.

Still working on this, more tweaks to come. Thanks @doomglue for helping me debug.

9 Likes

Everything works as expected. Many thanks for your work!

2 Likes

Yup, all great here as well!

Made a few slight changes and I think this works well now. Midi map for important parameters. Install from Norns project manager.

6 Likes