Norns 2.0 beta

norns

#230

somewhat random tip, to capture a screenshot/ from maiden/REPL:

s_export_png(filepath)

the png will be tiny. to scale up the pixels and give it a nice border, use imagemagick (installed on your laptop, not norns probably)

magick convert $1.png -gamma 1.25 -filter point -resize 400% -gravity center -background black -extent 120% $1-m.png

replace $1 with your filename


#231

Been enjoying the beta so far, I’ve run into some bugs but so far they’ve all been ones that have been fixed before I got to reporting them. I’ve ported all of my scripts to 2.0, but am gonna take some time adding more features. One of those features being MIDI note out on my sequencer scripts. I actually don’t have any midi capable instruments, so testing has been a little difficult. If anyone wants to some MIDI things out for me I’d appreciate it.

Also, there are some many useful norns-related tips scattered about lines, would it be useful if I started a collection of tips in the norns wiki?

I favorite all sorts of posts like this, but find it a bit of a hassle to go back and find them when I need them.


#232

this fixed it for me thanks for the tip. this hasn’t changed, but the other thing to try would be make sure you are trying to access http://norns.local, not https://norns.local. ssh we@norns.local also seems to work (after accepting the fingerprint)


#233

It is very cool that softcut level is controllable, I’m curious if it would be possible to break out the non-cut norns audio stream onto the levels screen (so you can get the fully-wet softcut signal)–or maybe there is already someway to do that that I’m not seeing.

Also the softcut delay is a cool addition to awake!

EDIT:

O wow, the way the we repo is set up makes updating extremely easy! for those who haven’t tried it:

ssh we@norns.local
// enter sleep as password
cd dust/scripts/we
git pull

That’s it! I didn’t even have to restart.


#234

oh man… I should put imagemagick on the pi-norns and run some wacko image<–>audio transformations or something… :laughing:

Speaking of which… There’s some neato new functions - you can read PNG files and display them on the norns screen!

screen.display_png (filename, x, y)

In theory you can also save a screenshot as a PNG, but I’m not sure the lua side of that is done yet (@tehn does this still need doing?)


#235

Typo: should be git pull


#236

updated, thanks! 20 char


#237

just needs to be added to screen.lua (i’ll add it for nicer syntax)


#238

i flashed the CM3+, or so i thought, following these steps with the latest image.

after putting the norns back into run mode and trying to boot, i get the light on the back to turn on (corresponding with my button presses).

if i put it back into disk mode and run

sudo ./rpiboot
diskutil list

the norns shows up

28%20PM

suggestions?


#239

type this into your command line app:

sudo diskutil unmountDisk /dev/disk5

sudo dd if=norns190303.img of=/dev/disk5 bs=32m conv=sparse

#240

i did that, picked my nose etc, and then switched to run. held button1 and only get lit up light on back.


#241

did you try logging in with tty/screen to see if it’s booting at all?

screen /dev/ttyUSB0 115200 (or whatever path in /dev)

(i don’t have a CM3+; AFAIK it’s been only minimally tested)


#242

hm, no i’m afraid not. there are some levels that aren’t made available on mix screen UI, but that is not one of them: the engine level is (probably confusingly) called ext. that level controls engine level at the input (from the point of view of the mixer process.) there is an additional level for engine -> softcut, which is applied after the first.

i suppose it would be a simple / low-impact change to make engine->softcut route before the engine->DAC level. (is this always a good idea? not sure.) in any case, engine->cut level is not on the mix screen (it should be set with other softcut routing params.)


#243

It does seem the external input routes directly into softcut (in other words you can turn monitor down completely but still be able to hear that signal going into softcut). So if I’m understanding correctly that change would probably make the ux there a bit more consistent on the levels screen for those two middle faders—though really I haven’t thought through the implications of this or really feel strongly about it. Just something curious I noticed as I was exploring.


#244

varispeed audio buffer-manipulation framework

i’d like to extend mlr with a “keylock” feature, where tempo changes but pitch remains constant. maybe possible by scripting softcut? curious about its use as a granulator.

i’m assuming the buffer data recorded by softcut is off-limits to supercollider?


#245

i ran the following command

sudo ./rpiboot

followed by

diskutil list

to find the correct location and then

/dev/tty.usbTAB 115200 where TAB is push TAB.

i got a blank screen and then entered

help

and got the following screen with options to choose.


#246

It does seem the external input routes directly into softcut (in other words you can turn monitor down completely but still be able to hear that signal going into softcut)

i double checked (been a few months since this code was written), but it really doesn’t:
ext input level is applied first to the ext source bus; this is the level set by the mix menu page
[ https://github.com/monome/norns/blob/dev/crone/src/MixerClient.cpp#L23 ]
then the ext_cut level is applied to that bus as it is mixed to softcut input, after the main ext level
[ https://github.com/monome/norns/blob/dev/crone/src/MixerClient.cpp#L35 ]

if you are listening to the halfsecond configuration as applied in awake, it has a pretty long decay (about -2.5 dB per repetition), so that could be confusing the effect. also, you might be hearing engine routed through reverb. (dig down into audio settings to see this)


i’d like to extend mlr with a “keylock” feature, where tempo changes but pitch remains constant. maybe possible by scripting softcut? curious about its use as a granulator.

not a very “proper” granulator - it’s not massively polyphonic. you can arbitrarily change / retrigger the loop position without glitching, creating a scrubbing effect. it’s not a terribly sophisticated method for “time stretching” but might be useful for you. each “voice” has two overlapping heads for position changes. if a pos change comes in during a crossfade, it is queued until the end of the xfade, but this doesn’t stack.

i’m assuming the buffer data recorded by softcut is off-limits to supercollider?

that’s correct. sorry. i suppose you could write it to disk and read it back into SC. or just do something else with SC. like maybe look at the Glut engine as a basis for your MLR-like application.


@zfigz i’m not sure what you’re showing me there. i’m suggesting that maybe the norns linux system is booting but not sucessfully launching all the stuff that draws to the OLED, runs audio &c. the mini-USB port gives you a serial terminal, so you can use that to troubleshoot such situations with screen or kermit or minicom or whatever. the baudrate is 115200 and the other serial settings are “the usual” (8b, no parity, whatever i forget)


#247

Ah gotcha—yea that is what I was experimenting with earlier this evening. Thanks for sharing how all this fits together. Excited to explore more!


#248

thanks for the info, i realized i was just connecting to my mechanical kb with

screen /dev/tty.usbmodem14244404

i’ll wait to hear back from tehn to see what to do next.


#249

screen /dev/tty.usbmodem14244404 115200 (looks like you are on a mac)

you get a blank screen, that’s normal, hit Enter. if norns booted successfully you should get a login prompt (we/sleep) and then you can poke around. if it’s totally borked then you might be out of luck.