i already disabled built in soundcard. behringer uca222 is connected.

what do you mean by “running jackd from command line”
this is what i got

we@norns:~/norns $ jackd
jackdmp 1.9.12
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2016 Grame.
Copyright 2016-2017 Filipe Coelho.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details

Usage: jackdmp [ --no-realtime OR -r ]
[ --realtime OR -R [ --realtime-priority OR -P priority ] ]
(the two previous arguments are mutually exclusive. The default is --realtime)
[ --name OR -n server-name ]
[ --timeout OR -t client-timeout-in-msecs ]
[ --loopback OR -L loopback-port-number ]
[ --port-max OR -p maximum-number-of-ports]
[ --slave-backend OR -X slave-backend-name ]
[ --internal-client OR -I internal-client-name ]
[ --internal-session-file OR -C internal-session-file ]
[ --verbose OR -v ]
[ --clocksource OR -c [ h(pet) | s(ystem) ]
[ --autoconnect OR -a ]
where is one of:
’ ’ - Don’t restrict self connect requests (default)
‘E’ - Fail self connect requests to external ports only
‘e’ - Ignore self connect requests to external ports only
‘A’ - Fail all self connect requests
‘a’ - Ignore all self connect requests
[ --replace-registry ]
[ --silent OR -s ]
[ --sync OR -S ]
[ --temporary OR -T ]
[ --version OR -V ]
-d master-backend-name [ … master-backend args … ]
jackdmp -d master-backend-name --help
to display options for each master backend

i’ve also done all the comment out i2cset stuffs.
yeah i’m thinking about ordering pisound actually.
I’m not really a coder and this is pretty much first time doing this… just to experience norns before ordering one.

you’ll need to do something like
/usr/bin/jackd -R -P 95 -d alsa -d hw:abc -r 48000 -n 3 -p 256 -S -s

where abc is your soundcard as reported by aplay -l

what are you going to use for screen/encoders and buttons? you can’t drive norns without these, since you cant launch ‘scripts’

this seems to be a common theme, perhaps @tehn / monome should be more involved if its being used as a pre-sales activity - perhaps a downloadable image.

(I’ll admit when i hear this, ive got reservations about spending lots of time helping getting it running on a rPI - if the user then plans to ditch it in favour of a hardware unit - seems like a bit of a waste of my time )

1 Like

hmm i got this

we@norns:~/norns $ /usr/bin/jackd -R -P 95 -d alsa -d hw:0 -r 48000 -n 3 -p 256 -S -s
jackdmp 1.9.12
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2016 Grame.
Copyright 2016-2017 Filipe Coelho.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
`default’ server already active
Failed to open server
we@norns:~/norns $

i thought i maybe be able to use with regular hdmi monitor?.. maybe i’m wrong…
pisound sounds def needed then
even if i got this working, i wouldn’t ditch rpi norn def.

maiden runs independently of matron and crone - it should run without problem regardless of what the other two are doing.

you’ll need to kill the existing jackd first.

are you sure the audio device is hw:0 ? check this with aplay -L
once you have jackd running without complaints (you might need to play with buffer sizes) you’ll need to then copy those parameters into norns-jackd.service.

no, this needs a bit of coding,
its actually relatively straightforward, I had it running under X11 before, my only issues were it being corrupted by various ‘widgets’ running on the desktop (battery/cpu monitors) … I think there may be some notes early on in this thread about this… but I’ve not come back to it, as I always use it with my Push2.

this is kind of the problem at the moment with the rPI I think everyone has a custom setup, that uses what hardware they have available, and to get a custom setup working they have to be reasonably technical.

theres nothing stopping a more generic solution being built, for people to try norns out, but as yet no-one has been interested/had time to do it.

1 Like

norns is being very actively developed right now. once we settle down a bit i will find time to think about the stock rPi. but what @TheTechnobear said is very important:

perhaps there can be some consensus about what a good “generic” solution should be. (pisound seems reasonable.) putting a pre-built image online seems like it’d then be trivial.

7 Likes

tricky, as most are going to want to use what they have …

I guess the minimum possible seems like the starting point - an hdmi monitor (most have a tv) with an interface thats works for mouse/touchscreen.

from there, users could navigate the menus, start scripts - so any midi controller would work.

though I’ll argue, without a grid of some sort , a user is still getting a limited norns experience, as some of the better scripts need a grid… so next step, is something like launchpad support (or others grids) ,

but that gets quite quickly into the question, how can the scripts be made less hardware dependent?
so 8x8 grids can be used (both monome and others) without programming as most end users are not programmers.

having just done a MLR port to the push 2 with 8x8, I can say expecting users to do this is not really a viable option.

But Ive shown with the Push2 that you emulate a 16x8 grid happily, with a couple of guidelines pretty much without compromise…

again though, there is a bigger picture behind this, emulation/virtual grid help smaller grids - but virtual grids spaces allow those with bigger grids to benefit (e.g. monome 256 users)

the ‘good news’ about supporting other devices, as Ive tried to explain in the past, is this not only benefits rPI norns user, but also Norns hardware users…
sure some can afford a monome grid as well, others cannot OR perhaps they’d like another grid (to supplement their monome) with other features like colour/velocity/pressure support.

anyway this does need a bit of consensus, which may not be there. so, I completely accept whilst these are directions I think Norns should be going - there are others who have completely different opinions for also very good reasons - which is why I stepped back from it all .

3 Likes

Ok guys… I’ll bite: precisely what would it entail to create a “standalone” console/thing with the right screen, keys, and encoders such that a pisound norns could reasonably be created?

I am not looking for a whole tutorial here… just some general direction (arduino or teensy, stuff like that). I am not too intimidated by coding, but am very amateur in soldering, but it seems like a great little diy project to learn some things.

Further, is it possible at all to make a little box with knobs and a screen, have it connect through usb or something else to the pisound, and use it to not only have a functioning norns type device, but also emulate an organelle (presumably switching out an sd card in the pi)? That is, it seems a little versatile module of sorts with screen and encoder would have very broad use for not just norns but organelle and even axoloti.

It seems to me the organelle would be simpler to implement (or maybe I am just more familiar with pd), because all the information sent in from knobs and keys are just send and receive objects, and the oled information is immanent in a given patch. Early organelle patches are easily reproducible with a “desktop mother” patch, but I am talking about emulating things where the screen becomes more important and the main encoder can cycle through “pages” in a patch. I know @TheTechnobear 's orac is probably aiming to make something like this a little superfluous… but still would be curious to see that.

But it seems like a solid little module with screen and encoders/buttons would at least suit my poor graduate student needs, and be versatile for things outside of just pi/norns

I know this is a very goes-without-saying kind of thing for a lot of people who have already done a lot to implement this in their own way. And I recognize that as far an monome is concerned this is not quite the right time to lay down canon documentation of such things…

So really just voicing the idea for the “module” or whatever we could call this, and ill just ask this: if I wanted to make this hypothetical screen/controller module that could at the very least do norns stuff with a pisound, what should I consider buying first? Just ingredients, and I can figure out the tools as I go. Is it getting an arduino, a breadboard, the screens and encoders and stuff I see linked to in this thread so far, and just going from there? Or are there problems with the idea of such a standalone little module from the start? Will I need to use some gpio pins in the pi and as such this is all for not?

1 Like

Don’t need an Arduino, the Pi has gpio and a display interface built-in. The PiSound is for latency/quality

1 Like

I don’t know how to design a circuit but I like this idea of a module or “hat”, I don’t know how to call it. A “simple” PCB with Oled (this one ?), encoders, buttons.

1 Like

Do you think something like this could work ? Sorry, this is my first attempt at using an ECAD software :face_with_hand_over_mouth:
I’m not sure if the connections for the OLED display are correct and wether I need to add resistors for the buttons or not… anyway this display NHD-2.7-12864WDW3 looks good but is probably too large, it’s almost the size of a Raspberry Pi 3

Encoders and buttons:

  • KEY1 = GPIO16
  • KEY2 = GPIO20
  • KEY3 = GPIO21
  • ENC1A = GPIO17
  • ENC1B = GPIO27
  • ENC2A = GPIO05
  • ENC2B = GPIO06
  • ENC3A = GPIO13
  • ENC3B = GPIO26
3 Likes

I recommend debouncing those buttons with an RC circuit, at minimum, or a Schmitt trigger if you’re feelin’ fancy.

1 Like

I’d think it would be easier debounce them in software.
The buttons should be ok without a resistor.

1 Like

I wholeheartedly agree.

And to respond to @TheTechnobear’s concerns about needing a grid, @okyeron and @jedgar have been doing some interesting DIY explorations around the adafruit trellis…

@okyeron also has some interesting not-arc DIY ideas.

One challenge with pisound is that you’d still need a way to get encoders and buttons and a screen sorted out. Seems like a standard image would need standard hardware to use. So perhaps pisound alone isn’t sufficient…

Easier than a few cents worth of caps and resistors? Use pull-up resistors at the very least. I don’t know why you’d skip an opportunity for making the hardware design more robust.

Thanks for your replies @desolationjones and @widdly
It’s my first attempt at designing a circuit, that’s valuable information, I was not sure about the resistors.
Which value would you recommend ? I’m experimenting with the traces etc at the moment. I’m not sure wether I should put a ground plane or not. Well, I’m learning and experimenting at the same time :slight_smile: + Do you think the OLED connections are correct ?

1 Like

To pick a pull-up resistor find a value which would pull a tiny but safe amount of current from the source. Looks like the Pi was designed for <3 mA per pin, so let’s target ~1 mA:
I = V / R = 3.3 V / 4700 Ohms = 0.0007 A
Pulling up to the Pi’s 3.3V rail with a 4.7k resistor would draw about 0.7 mA, seems good. Checking power dissipation:
P = V ^ 2 / R = 0.002 Watts
So you could use an itty-bitty resistor here and not worry about exceeding its power rating.

I’m not an EE so I won’t comment on ground plane best practices… You should breadboard the circuit first :slight_smile:

2 Likes

Thanks !

Yes, absolutely, that would be more reasonable :slight_smile: I think I have the components in stock (except the OLED display), I will try.

The breadboard is almost ready, I don’t have a through-hole 4.7K resistor, only SMD, I’ll try to create something with these. I’ve found an SPi OLED, but it’s SH1106 I will follow the instructions posted by @okyeron + the encoders and buttons overlay.

I hope I can do all that on top of the Norns install that I already have (Norns for Push2) or do I need to make a fresh install ?

I have a question about the display: If I use a display with SSD1322 later (the same as a factory Norns), will I only have to change the GPIO reference or is it more complicated than that ?

# change the gpios below to what you have wired for your display
    sudo modprobe fbtft_device custom name=fb_sh1106 debug=1 speed=2000000 gpios=reset:25,dc:24

Thanks.

4 Likes