Connecto

Connecto

Connecto is a script that allows the Norns to connect its audio inputs and outputs to USB audio devices.

Inspired by Connect-OPZ by @xmacex, Connecto was created as a tool to allow for the connection of any USB audio device to Norns, not just an OP-Z. It is a basic tool for choosing which audio device will be used for input into Norns, and which will be used for output from Norns. Please note that Connecto only supports one device for Norns audio inputs and one device for Norns audio outputs, and provides access to only the first two audio channels of the connected USB device.

Requirements

  • Norns
  • USB class-compliant audio devices / OPZ / etc…

Documentation

At startup, Connecto automatically recalls previous connections if the same audio devices are connected.

  • K1/E3: to select whether the modification affects the device or the sampling rate.
  • K2: to change device / sampling rate for INPUT
  • K3: to change device / sampling rate for OUTPUT
  • E1: long pressing: to make the connection
  • E2: to run audio test

Download

In maiden/repl:

;install https://github.com/totoetlititi/connecto

v1.0.1
https://github.com/totoetlititi/connecto

#norns

62 Likes

for x-polination there is also the autojack mod that lives in the same problem space.

10 Likes

This looks wonderful!!! Can’t wait to try this with the ES-8 in my rack (yes, well aware it’s 2-in, 2-out)! Thank you!!!

1 Like

Much love to USB audio. Thanks for taking this on.

2 Likes

Thank you very much for this. I´m sampling a lot from Youtube nowdays and not having an analog output on my phone anymore makes sampling from it to norns messy. Connecto will be very helpful to solve the annoying scenario!

4 Likes

autojack is perfect for input only! would be possible to have connecto as a mod??

2 Likes

i’m about to test it myself but: do the settings selected by connecto persist when switching to another app?

1 Like

Just wanted to say thank you very much for your work on this script.

Got bidirectional audio and midi running to and from the m8 and it’s quite awesome.

3 Likes

Yes! It is persistent until the Norns are shut down or if another script changes Jack settings.

2 Likes

This is something I have in mind.
However, Jack seems to not handle disconnection of a running USB device well. Making a mod implies allowing hot-swapping USB devices without causing the Norns to hang indefinitely or crash. As @xmacex mentioned, using systemctl/udev rules would be a more elegant solution.

4 Likes

I had a play with this today and it’s great - a less noisy way to get audio to and from my digitakt and 200323 norns shield. Thank you!

A couple of things I noticed:

  • the output volume control on the mixer page didn’t seem to have an effect as far as I can tell.
  • the sample rate defaulted to 44.1kHz, but I think the digitakt requests 48kHz. The connection silently failed as a result until I changed the sample rate. I realised what was going on after checking the error messages in the maiden console.
2 Likes

Hi @chrisl, can you update to the latest version of Connecto ? It should resolve the issue with mixing and output volume control.

Regarding the sampling rate, I would like to propose by default the sampling rate of the USB sound device.
If you are familiar with SSH, could you run the following tests to help me :

  1. get the index of you Digitakt by running:

cat /proc/asound/cards

  1. post the result of the following command, replacing X in cardX with index in step 1:

cat /proc/asound/cardX/pcm0p/sub0/hw_params

2 Likes

Great and an elegant ui too, digging the subtle animation. I tested Connect-OPZ a while back with various usb sound gadgets but never with an actual soundcard. Some resource heavy scripts seem to compete with Connecto causing small glitches (but it can be my shady powersupply too). Sampling is a joy now!

1 Like

Thanks a lot for making this, I am excited to see if my sp-404mk2 will work with this. It uses usb-c and is picky sometimes with what it connects to.

1 Like

Sure thing! I’ll do this in the next couple of days, thank you for looking into it.

Thank you so much for sharing this! This is the first time a script has resulted in my workspace being a bit less cluttered and I love it. So much more convenient having the norns I/O in my rack with my patchbay and everything else. :heart:

2 Likes

With the latest commit (7fd84a) the out volume control on the mixer page in working as I expected, thank you! The digitakt doesn’t have a way of reducing USB input only increasing it, so this is a great workaround.

Here’s the parameters of the digitakt (card1)

$ cat /proc/asound/card1/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 48000 (48000/1)
period_size: 1024
buffer_size: 2048
1 Like

Just tried this out with a Roland TR-06 and got the following error:

Cannot lock down 82287136 byte memory area (Cannot allocate memory)
Cannot use real-time scheduling (RR/90)(1: Operation not permitted)
JackClient::AcquireSelfRealTime error
Cannot lock down 82287136 byte memory area (Cannot allocate memory)
Cannot lock down 82287136 byte memory area (Cannot allocate memory)
Cannot lock down 82287136 byte memory area (Cannot allocate memory)
Cannot lock down 82287136 byte memory area (Cannot allocate memory)

Not sure if this is just a permissions thing that needs tweaking or if the TR-06 is not a viable target (I’m not sure it is class compliant) - either way I figured it’s worth sharing the error.