is it a poll error?

Sounds like https://github.com/monome/norns/issues/615

1 Like

It sounds exactly like that.

@tehn here is the error:

# script init
### SCRIPT ERROR: init
/home/we/dust/code/wip/loops6.lua:96: attempt to index a nil value (global 'poll_l')
stack traceback:
	/home/we/norns/lua/core/norns.lua:185: in metamethod '__newindex'
	/home/we/dust/code/wip/loops6.lua:96: in function 'init'
	/home/we/norns/lua/core/script.lua:71: in function 'core/script.init'
	[C]: in function 'xpcall'
	/home/we/norns/lua/core/norns.lua:186: in field 'try'
	/home/we/norns/lua/core/script.lua:160: in function 'core/script.run'
	/home/we/norns/lua/core/script.lua:146: in function 'core/script.load'
	(...tail calls...)

My poll code is:

  poll_l = poll.set("amp_in_l")
  poll_l.callback = function(val) in_l = val end
  poll_l.time = 0.025
  poll_l:start()

the fundamental polls (amp/pitch) are handled by crone (not supercollider) so this should no longer be an issue.

@Justmat i’ll have to dig into this

2 Likes

Is there a way to quickly show the levels screen in 2.0 from a script? I’m imagining turning encoder 2 and automatically switching out to the levels screen to control the output volume. Or encoder 3 controlling the input volume. I’d like the visual feedback of the level meters without have to code them myself.

sorry, this is not true. amp and pitch polls are the sole remaining task of the CroneAudioContext supercollider class (plus providing aliases to the main I/O busses.)

(i agree that we should move amp and pitch polls to the crone process. the amp poll is actually duplicated effort right now and would be easy to move. the pitch poll uses Pitch.kr from SC, but adding analysis directly to crone - including autocorrelation pitch tracker after katja’s helmholtz~ - is high on my list of improvements.)

so yes, it’s the same issue and the posted workaround still applies (don’t use amp, pitch polls without loading an engine.)

fwiw, i have never made a “proper script” without engine. functionality that doesn’t rely on an engine can be broken out into a separate file (in a lib folder, probably) and added to top-level scripts in a modular fashion with include() or dofile().

3 Likes

warning to those on 2.0 beta - be careful about installing duplicate engines if downloading from library (specifically molly the poly and passersby, in my case).

I had never wanted to until softcut 2.0 came around :slight_smile: Now there is quite a lot that can be done without an engine.

2 Likes

this had me daydreaming the other day about scripting a mlr mod to add a simple earthsea like page to play into the softcut buffers

3 Likes

adding a midi-controlled synth to mlr is an entirely reasonable project goal in 2.0.

2 Likes

right but i mean the “script launching” construct is really opinionated - when you launch a script, many things are torn down and rebuilt, including polls. there are good technical reasons for this and we’re actually likely to move further in this direction. (allowing, among other things, a workaround to the SC duplicate class problem.)

a script without an engine isn’t a good idea right now. but i agree this isn’t well documented and since it’s come up a couple times, we should just fix that behavior (by instantiating an “empty” engine in SC, if none is specified.)

but again, i’d strongly suggest that functionality that doesn’t interact directly with an engine, be placed in a module in your lib and included with include() or dofile(). (the former is more portable; it first checks your local lib, then checks global locations if it doesn’t find the requested file. so it’s like require without caching and with a more limited/specific search sequence.) tehn’s awake/lib/halfsecond is a basic example of this pattern.

(and sorry, this is probably better topic for ‘develpoment’ thread. like some other topics here)

3 Likes

just a short question from a user perspective without coding skills: will there be a step by step guide on how to add/update scripts? This would be very, very helpful, as for a Norns beginner this can all sound very confusing right now…
Hopefully, someone will have the time to do this …

First, understand transferring files (in this case the various scripts) to norns requires either familiarity with FTP and/or SSH. Apologies if you are already familiar with this.

The norns docs have the necessary details, but it’s really a first step to gain familiarity with one or both of the above. And I should clarify, that your FTP app should be able to use the secure method SFTP. They work the same from a user perspective for the most part. But I note this because not all FTP apps have SFTP.

For SSH, you’ll use a terminal app on you computer. If not familiar, its just a small little text editor especially designed for issuing system commands. You don’t have to be an expert to use this for norns’ purposes. If you don’t know where your terminal app is, search Google for your specific operating system.

Hope this helps.

you can change any of the “mix” params from the SYSTEM > AUDIO screen using the param functions, ie: mix:set('master',1.0) or mix:delta('master',d)

1 Like

no need to google anything. already linked in the main docs:

https://monome.org/docs/norns/sftp/

this process is very straightforward, just like any file manager on your native OS.

this process makes infinitely more sense than doing some weird USB drive syncing which is prone to various disasters.

final beta ahead of tomorrow’s release:

https://monome.nyc3.digitaloceanspaces.com/norns190404.tgz

your dust will be copied to dust-v1

you’ll need to manually install via serial as described in the top post. (note, 1.x users can use the UPDATE system option, but if you’re still 1.x please just wait until tomorrow.)

last minute changes happening now, “ext/external” being renamed to “eng/engine” for clarity

please check out the beta 2 doc: https://github.com/monome/docs/blob/norns2/docs/norns/index.md

suggestions/edits welcome!


note: i’ve sometimes seen a fresh startup with “audio engine fail” after update. either reboot or RESET through the menu and everything will be happy. trying to locate the reason for the first-up error (that then goes away)


bug— hotspot password set incorrectly, it’s 22222222 on this build. just fixed it in the repo back to nnnnnnnn (as seen in the docs). will be fixed tomorrow

5 Likes

I’ve been getting this a bunch with git pulls from a day or so ago. Is there a github issue for this already?

there is now
[ https://github.com/monome/norns/issues/799 ]

i have a theory (exploded)

1 Like

Still the case? Super stoked!!

2 Likes

so, i probably messed up my cm3+.

instead of flashing it with “img 190303” i followed the “here (more thorough, for macos)” link all the way through.

so after i finished the line
sudo dd if=norns181008.img of=/dev/disk4 bs=32m conv=sparse
(my cm3+ 32gb drive was listed as /dev/disk4)
terminal successfully advanced (after 15 or so minutes) to the command prompt, and i switch my norns to RUN and tried booting. not only will it not boot, but wont recognize as a drive when i try to redo the process correctly.

so, did i break my new CM3+?