Wowee! That is super strange
Can you delete and re-install the script?
Wowee! That is super strange
Can you delete and re-install the script?
My memory is hazy here, but I believe this happened to me while developing my own ack-based script when I had a saved paramset that was from an old version of my script. So: maybe try deleting all the
pset files in
data/foulplay/? And make sure your
ack is up to date as well
@SPIKE, i figured out the midi start/stop thing! i’ll have a fix tomorrow
sorry for opening a can of worms!
FWIW, I removed & reinstalled FoulPlay, made sure Ash was up to date and removed pattern data. It still shows up wierd. Is there any other app that uses the same parameter sub-system ?
try updating Ack, not Ash
Cyrene also uses Ack (it’s the app I was developing where I said I saw something similar during development)
have you opened maiden to see error messages when this happens? seeing error logs would be helpful
Sorrt for that, but it was up to date too. here’s the log when I instantiate foulplay:
> 1 > > matron > > sc > > # script load: /home/we/dust/code/foulplay/foulplay.lua > > # cleanup > > # script clear > > ERROR (i2c/hp) failed to write > > pset >> write: /home/we/dust/data/system.pset > > # script run > > loading engine: Ack > > >> reading PMAP /home/we/dust/data/foulplay/foulplay.pmap > > m.read: /home/we/dust/data/foulplay/foulplay.pmap not read. > > Engine.register_commands; count: 31 > > ___ engine commands ___ > > delayFeedback f > > delayLevel f > > delaySend if > > delayTime f > > disableLoop i > > dist if > > enableLoop i > > filterCutoff if > > filterEnvAttack if > > filterEnvMod if > > filterEnvRelease if > > filterMode ii > > filterRes if > > includeInMuteGroup ii > > kill i > > loadSample is > > loopPoint if > > multiKill iiiiiiii > > multiTrig iiiiiiii > > pan if > > reverbDamp f > > reverbLevel f > > reverbRoom f > > reverbSend if > > sampleEnd if > > sampleStart if > > speed if > > trig i > > volume if > > volumeEnvAttack if > > volumeEnvRelease if > > ___ 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 > > ERROR: paramset cannot nest GROUPs > > ERROR: paramset cannot nest GROUPs > > ERROR: paramset cannot nest GROUPs > > ERROR: paramset cannot nest GROUPs > > pset >> read: /home/we/dust/data/foulplay/foulplay-01.pset > > pset :: /home/we/dust/data/foulplay/foulplay-01.pset not read. > > ERROR (i2c/hp) f
And Cyrene shows the same strange behavior in the parameters: Here’s the log for it
# script load: /home/we/dust/code/cyrene/cyrene.lua # cleanup # script clear ERROR (i2c/hp) failed to write ### initializing data folder including /home/we/dust/code/cyrene/lib/sequencer.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua including /home/we/dust/code/cyrene/lib/grids_patterns.lua including /home/we/dust/code/cyrene/lib/euclidean.lua including /home/we/dust/code/cyrene/lib/ui/euclidean.lua including /home/we/dust/code/cyrene/lib/ui/util/label.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua including /home/we/dust/code/cyrene/lib/euclidean.lua including /home/we/dust/code/cyrene/lib/ui/details.lua including /home/we/dust/code/cyrene/lib/ui/util/label.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua including /home/we/dust/code/cyrene/lib/ui/pattern_and_density.lua including /home/we/dust/code/cyrene/lib/ui/util/label.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua including /home/we/dust/code/cyrene/lib/ui/more_density.lua including /home/we/dust/code/cyrene/lib/ui/util/label.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua including /home/we/dust/code/cyrene/lib/ui/euclidean.lua including /home/we/dust/code/cyrene/lib/ui/util/label.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua including /home/we/dust/code/cyrene/lib/euclidean.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua including /home/we/dust/code/cyrene/lib/ui/grid.lua including /home/we/dust/code/cyrene/lib/ui/util/devices.lua pset >> write: /home/we/dust/data/system.pset # script run loading engine: Ack >> reading PMAP /home/we/dust/data/cyrene/cyrene.pmap m.read: /home/we/dust/data/cyrene/cyrene.pmap not read. Engine.register_commands; count: 31 ___ engine commands ___ delayFeedback f delayLevel f delaySend if delayTime f disableLoop i dist if enableLoop i filterCutoff if filterEnvAttack if filterEnvMod if filterEnvRelease if filterMode ii filterRes if includeInMuteGroup ii kill i loadSample is loopPoint if multiKill iiiiiiii multiTrig iiiiiiii pan if reverbDamp f reverbLevel f reverbRoom f reverbSend if sampleEnd if sampleStart if speed if trig i volume if volumeEnvAttack if volumeEnvRelease if ___ 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 ERROR: paramset cannot nest GROUPs ERROR: paramset cannot nest GROUPs ERROR: paramset cannot nest GROUPs ERROR: paramset cannot nest GROUPs pset >> read: /home/we/dust/data/cyrene/cyrene-01.pset pset :: /home/we/dust/data/cyrene/cyrene-01.pset not read. ERROR (i2c/hp) failed to write
so starting from the top:
4642c46in Maiden’s library, respectively)
The stack trace says it’s trying to nest param groups, which implies to me you have the new params system, but somehow your versions of the scripts are trying to add the wrong number of parameters in each group (so it starts the next group before it finishes the prior one).
ack is the library @justmat and I are both using which manages its own parameters and we’re each putting inside our own custom groups-per-track, so the fact a) it’s broken in both of the scripts, and b) groups are what’s broken for you definitely still has me thinking that your
ack is somehow out of date (or has otherwise been modified somehow)
Unfortunately I’m rebooting often and my system is up to date. I’ve just gotten the system and Foulplay was the first community app I installed. Although I don’t know lua, I’m a developer by trade so if it helps, I can try to debug some stuff if you point me in the right direction.
Thanks for your time both of you !
In your video above, I see that you are missing a couple of params that were introduced to Ack back in April. Between,
Filter env mod and
dist, you should have params for
sample rate and
bit depth. That, plus your
track 1 group containing 2 of
track 2s params, definitely makes me think Ack is out of date, even though it’s showing the correct version number.
Maybe try deleting/re-installing Ack and
WOW. That did it
Yay! Glad you got it sorted!
running into an issue with Foulplay tonight.
i was loading samples and after about loading 5 samples it locked up on me.
maiden didn’t give a readout on anything.
norns was frozen.
i left it alone for a minute to set up some other noiz and came back to the frozen norns.
i refreshed maiden and sent it a ;restart.
tried loading samples again.
to test things…i loaded only four samples and it was playing and syncing to MIDI clock.
started loading more samples but when i got to sample 6 it froze on me again.
same thing…left it alone for a minute or two and refreshed maiden.
sent a ;restart.
thanks for any help!
eek! i will poke around with sample loading today and see if i can reproduce.
Love this app!
I’ve been trying to sync up clock and start/stop between Foulplay and a Moog matriarch to no avail.
Is there anyway to implement a clock out in the parameters section like in the rudiments app?
The rudiments app which uses beatclock does successfully send clock and start/stop to my matriarch.
I’m completely new to scripting/lua so any guidance would be greatly appreciated…thx!
Github says midi start/stop was added a couple months ago. Are you updated to the most recent version?
EDIT - although looking at the code, I don’t see actual midi start/stop anywhere - just clock start/stop
Clock should be sent if you have the params CLOCK section set to midi. Start/Stop may NOT be being sent tho… so something like this would be needed in the foulplay script:
(totally untested code)
m.event = function(data) local d = midi.to_msg(data) if d.type == "start" then if stopped then clock.transport.start() end elseif d.type == "continue" then if not stopped then clock.transport.stop() else clock.transport.start() end end if d.type == "stop" then clock.transport.stop() end end
Yeah, the midi start/stop in the commit history is just for Norns clock responding to midi start/stop messages. Foulplay doesn’t send midi s/s… yet. But, I see the value in it, and will try to implement it tomorrow.
Thanks for the code snippet @okyeron!!
Just tried this out on my DIY norns (without grids) , seems amazing but I was somewhat thrown by it auto-saving, unlike most other things on norns. - Is there any way to reset to factory defaults? Want to start from scratch and load new samples without retaining all my initial messing about with the parameters.
This is a good thing to have, and should be super easy to do. I’ll put something together later this morning.