Build linux kernel and norns image on macos

Hi there.

Can the linux kernel and norns image build on macos? Can I find some instructions on how to do it?

This is related to norns shield as usb host devices limit - #9 by Daniel_Gorgan, as I want to build the kernel with CONFIG_SND_DYNAMIC_MINORS=y. Has anyone attempted to do that?

Thank you.

i wouldn’t recommend trying. use this instead

Hi @tehn and thanks for the input.

I managed to build the images (seen here) but I’m not sure what to do next. I guess I should build a norns image using this and flash it to an sd card, but I’m not sure how to build the image. Any hint will be appreciated.

Thanks!

My typical workflow is to:

  • Flash an already built image to an sdcard, most recent versions are here
  • Insert the sdcard into a bare metal (or virtual) linux machine
  • Create a directory to use as a mount point such as mkdir /mnt/norns
  • mount /dev/<sdcard-device><root partition> /mnt/norns - to mount the root filesystem
  • mount /dev/<sdcard-device><boot partition> /mnt/norns/boot - to mount the boot filesystem
  • Copy the files from archive generated by the kernel builder into /mnt/norns/
  • umount the filesystems above, stick sdcard in norns, boot the norns

Note that we intentionally disable HDMI output so there is no way to debug boot/kernel failures unless the UART header is installed and a serial connection is setup.

Once upon a time you could get away with writing the kernel builder archive out right on top of the boot files of a running norns but with the rpi4 generations and/or the 5.10 kernel that now trashes the running system more often than not.

2 Likes

Thanks @ngwese. I flashed a sdcard and mounted it on linux using:

sudo mount /dev/sdb2 /mnt/norns
sudo mount /dev/sdb1 /mnt/norns/boot

ls on these folders shows:

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns
total 86
drwxr-xr-x 18 root      root       4096 Feb 24  2022 .
drwxr-xr-x  3 root      root       4096 Mar 28 12:58 ..
lrwxrwxrwx  1 root      root          7 Jan 28  2022 bin -> usr/bin
drwxr-xr-x  5 parallels parallels  5632 Jan  1  1970 boot
drwxr-xr-x  4 root      root       4096 Jan 28  2022 dev
drwxr-xr-x 84 root      root       4096 Feb 26  2022 etc
drwxr-xr-x  3 root      root       4096 Feb 24  2022 home
lrwxrwxrwx  1 root      root          7 Jan 28  2022 lib -> usr/lib
drwx------  2 root      root      16384 Jan 28  2022 lost+found
drwxr-xr-x 10 root      root       4096 Feb 24  2022 media
drwxr-xr-x  2 root      root       4096 Jan 28  2022 mnt
drwxr-xr-x  2 root      root       4096 Jan 28  2022 opt
drwxr-xr-x  2 root      root       4096 Dec 21  2021 proc
drwx------  2 root      root       4096 Feb 26  2022 root
drwxr-xr-x  5 root      root       4096 Jan 28  2022 run
lrwxrwxrwx  1 root      root          8 Jan 28  2022 sbin -> usr/sbin
drwxr-xr-x  2 root      root       4096 Jan 28  2022 srv
drwxr-xr-x  2 root      root       4096 Dec 21  2021 sys
drwxrwxrwt  7 root      root       4096 Mar  7  2022 tmp
drwxr-xr-x 11 root      root       4096 Jan 28  2022 usr
drwxr-xr-x 11 root      root       4096 Feb 24  2022 var

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns/boot
total 63676
drwxr-xr-x  5 parallels parallels    5632 Jan  1  1970 .
drwxr-xr-x 18 root      root         4096 Feb 24  2022 ..
drwxr-xr-x  3 parallels parallels     512 Mar 28  2023 .Spotlight-V100
drwxr-xr-x  2 parallels parallels     512 Mar 28  2023 .fseventsd
-rw-r--r--  1 parallels parallels   18693 Jan 20  2022 COPYING.linux
-rw-r--r--  1 parallels parallels    1594 Jan 20  2022 LICENCE.broadcom
-rw-r--r--  1 parallels parallels   27967 Mar  6  2022 bcm2708-rpi-b-plus.dtb
-rw-r--r--  1 parallels parallels   27307 Mar  6  2022 bcm2708-rpi-b-rev1.dtb
-rw-r--r--  1 parallels parallels   27696 Mar  6  2022 bcm2708-rpi-b.dtb
-rw-r--r--  1 parallels parallels   27581 Mar  6  2022 bcm2708-rpi-cm.dtb
-rw-r--r--  1 parallels parallels   28792 Mar  6  2022 bcm2708-rpi-zero-w.dtb
-rw-r--r--  1 parallels parallels   27441 Mar  6  2022 bcm2708-rpi-zero.dtb
-rw-r--r--  1 parallels parallels   28842 Mar  6  2022 bcm2709-rpi-2-b.dtb
-rw-r--r--  1 parallels parallels   28991 Mar  6  2022 bcm2710-rpi-2-b.dtb
-rw-r--r--  1 parallels parallels   31266 Mar  6  2022 bcm2710-rpi-3-b-plus.dtb
-rw-r--r--  1 parallels parallels   30647 Mar  6  2022 bcm2710-rpi-3-b.dtb
-rw-r--r--  1 parallels parallels   28942 Mar  6  2022 bcm2710-rpi-cm3.dtb
-rw-r--r--  1 parallels parallels   30035 Mar  6  2022 bcm2710-rpi-zero-2-w.dtb
-rw-r--r--  1 parallels parallels   30035 Mar  6  2022 bcm2710-rpi-zero-2.dtb
-rw-r--r--  1 parallels parallels   51543 Mar  6  2022 bcm2711-rpi-4-b.dtb
-rw-r--r--  1 parallels parallels   51675 Mar  6  2022 bcm2711-rpi-400.dtb
-rw-r--r--  1 parallels parallels   52116 Mar  6  2022 bcm2711-rpi-cm4.dtb
-rw-r--r--  1 parallels parallels   48526 Mar  6  2022 bcm2711-rpi-cm4s.dtb
-rw-r--r--  1 parallels parallels   18630 Mar  6  2022 bcm2835-rpi-a-plus.dtb
-rw-r--r--  1 parallels parallels   18506 Mar  6  2022 bcm2835-rpi-a.dtb
-rw-r--r--  1 parallels parallels   18917 Mar  6  2022 bcm2835-rpi-b-plus.dtb
-rw-r--r--  1 parallels parallels   18785 Mar  6  2022 bcm2835-rpi-b-rev2.dtb
-rw-r--r--  1 parallels parallels   18652 Mar  6  2022 bcm2835-rpi-b.dtb
-rw-r--r--  1 parallels parallels   18767 Mar  6  2022 bcm2835-rpi-cm1-io1.dtb
-rw-r--r--  1 parallels parallels   19021 Mar  6  2022 bcm2835-rpi-zero-w.dtb
-rw-r--r--  1 parallels parallels   18578 Mar  6  2022 bcm2835-rpi-zero.dtb
-rw-r--r--  1 parallels parallels   19909 Mar  6  2022 bcm2836-rpi-2-b.dtb
-rw-r--r--  1 parallels parallels   20196 Mar  6  2022 bcm2837-rpi-3-a-plus.dtb
-rw-r--r--  1 parallels parallels   21065 Mar  6  2022 bcm2837-rpi-3-b-plus.dtb
-rw-r--r--  1 parallels parallels   20597 Mar  6  2022 bcm2837-rpi-3-b.dtb
-rw-r--r--  1 parallels parallels   19920 Mar  6  2022 bcm2837-rpi-cm3-io3.dtb
-rw-r--r--  1 parallels parallels   52460 Jan 20  2022 bootcode.bin
-rw-r--r--  1 parallels parallels     145 Mar  6  2022 cmdline.txt
-rw-r--r--  1 parallels parallels     890 Mar  7  2022 config.txt
-rw-r--r--  1 parallels parallels   43118 Mar  6  2022 dt-blob.bin
-rw-r--r--  1 parallels parallels    7223 Jan 20  2022 fixup.dat
-rw-r--r--  1 parallels parallels    5354 Jan 20  2022 fixup4.dat
-rw-r--r--  1 parallels parallels    3145 Jan 20  2022 fixup4cd.dat
-rw-r--r--  1 parallels parallels    8356 Jan 20  2022 fixup4db.dat
-rw-r--r--  1 parallels parallels    8356 Jan 20  2022 fixup4x.dat
-rw-r--r--  1 parallels parallels    3145 Jan 20  2022 fixup_cd.dat
-rw-r--r--  1 parallels parallels   10201 Jan 20  2022 fixup_db.dat
-rw-r--r--  1 parallels parallels   10199 Jan 20  2022 fixup_x.dat
-rw-r--r--  1 parallels parallels     145 Jan 28  2022 issue.txt
-rw-r--r--  1 parallels parallels 4440168 Feb 24  2022 kernel-4.19.127-16-g880f3c34c47a.img
-rw-r--r--  1 parallels parallels 5280208 Feb 26  2022 kernel-5.10.92-18-g284f3ffeaaca.img
-rw-r--r--  1 parallels parallels 5280512 Mar  6  2022 kernel-5.10.92-18-v7l-g458e2253667a.img
-rw-r--r--  1 parallels parallels 6017168 Jan 20  2022 kernel.img
-rw-r--r--  1 parallels parallels 6365472 Jan 20  2022 kernel7.img
-rw-r--r--  1 parallels parallels 6789704 Jan 20  2022 kernel7l.img
-rw-r--r--  1 parallels parallels 7915962 Jan 20  2022 kernel8.img
drwxr-xr-x  2 parallels parallels   22528 Feb 25  2022 overlays
-rw-r--r--  1 parallels parallels 2964864 Jan 20  2022 start.elf
-rw-r--r--  1 parallels parallels 2240608 Jan 20  2022 start4.elf
-rw-r--r--  1 parallels parallels  800028 Jan 20  2022 start4cd.elf
-rw-r--r--  1 parallels parallels 3737928 Jan 20  2022 start4db.elf
-rw-r--r--  1 parallels parallels 2992584 Jan 20  2022 start4x.elf
-rw-r--r--  1 parallels parallels  800028 Jan 20  2022 start_cd.elf
-rw-r--r--  1 parallels parallels 4809800 Jan 20  2022 start_db.elf
-rw-r--r--  1 parallels parallels 3716296 Jan 20  2022 start_x.elf

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns/usr/lib
total 452
drwxr-xr-x 67 root root  4096 Feb 24  2022 .
drwxr-xr-x 11 root root  4096 Jan 28  2022 ..
drwxr-xr-x  6 root root  4096 Feb 24  2022 NetworkManager
drwxr-xr-x  2 root root  4096 Feb 15  2021 X11
drwxr-xr-x  5 root root  4096 Jan 28  2022 apt
drwxr-xr-x 37 root root 36864 Feb 26  2022 arm-linux-gnueabihf
drwxr-xr-x  3 root root  4096 Jan 28  2022 arm-linux-musleabihf
drwxr-xr-x  2 root root  4096 Jan 28  2022 bfd-plugins
drwxr-xr-x  2 root root  4096 Aug  7  2021 binfmt.d
drwxr-xr-x  2 root root  4096 Jan 28  2022 compat-ld
drwxr-xr-x  2 root root  4096 Jan 28  2022 console-setup
lrwxrwxrwx  1 root root    21 Jan 28  2022 cpp -> /etc/alternatives/cpp
drwxr-xr-x  3 root root  4096 Jan 28  2022 crda
drwxr-xr-x  2 root root  4096 Jan 28  2022 dbus-1.0
drwxr-xr-x  3 root root  4096 Jan 28  2022 debug
drwxr-xr-x  3 root root  4096 Jan 28  2022 dhcpcd
drwxr-xr-x  3 root root  4096 Jan 28  2022 diet
drwxr-xr-x  3 root root  4096 Jan 28  2022 dpkg
drwxr-xr-x  3 root root  4096 Feb 24  2022 emacsen-common
drwxr-xr-x  2 root root  4096 Jan 28  2022 environment.d
drwxr-xr-x  2 root root  4096 Jan 28  2022 file
drwxr-xr-x  3 root root  4096 Feb 24  2022 firewalld
drwxr-xr-x 41 root root  4096 Jan 28  2022 firmware
drwxr-xr-x  3 root root  4096 May 15  2020 gcc
drwxr-xr-x  3 root root 12288 Feb 24  2022 git-core
drwxr-xr-x  2 root root  4096 Jan 28  2022 gnupg
drwxr-xr-x  2 root root  4096 Jan 28  2022 gnupg2
drwxr-xr-x  2 root root  4096 Jan 28  2022 gold-ld
drwxr-xr-x  4 root root  4096 Jan 28  2022 groff
drwxr-xr-x  2 root root  4096 Jan 28  2022 ifupdown
drwxr-xr-x  2 root root  4096 Jan 28  2022 init
drwxr-xr-x  3 root root  4096 Jan 28  2022 kernel
drwxr-xr-x  3 root root  4096 Jan 28  2022 klibc
-rwxr-xr-x  1 root root 75224 Jun 10  2021 klibc-krh8Sgsh8PW7Qbsa0KsFm65rfDw.so
lrwxrwxrwx  1 root root    30 Dec  1  2021 ld-linux-armhf.so.3 -> arm-linux-gnueabihf/ld-2.31.so
lrwxrwxrwx  1 root root    24 Jan 28  2022 ld-linux.so.3 -> /lib/ld-linux-armhf.so.3
lrwxrwxrwx  1 root root    16 Nov 11  2016 libident.so.0 -> libident.so.0.22
-rw-r--r--  1 root root  7976 Nov 11  2016 libident.so.0.22
lrwxrwxrwx  1 root root    20 May 24  2012 libsigc-1.2.so.5 -> libsigc-1.2.so.5.0.7
-rw-r--r--  1 root root 23724 May 24  2012 libsigc-1.2.so.5.0.7
-rw-r--r--  1 root root 16500 Aug 29  2016 libsupp.a
drwxr-xr-x  3 root root  4096 Feb 24  2022 locale
drwxr-xr-x  3 root root  4096 Jan 28  2022 lsb
drwxr-xr-x  2 root root  4096 Jan 28  2022 man-db
drwxr-xr-x  3 root root  4096 Feb 17  2021 mime
drwxr-xr-x  2 root root  4096 Jan 28  2022 modprobe.d
drwxr-xr-x  9 root root  4096 Mar  6  2022 modules
drwxr-xr-x  2 root root  4096 Aug  7  2021 modules-load.d
drwxr-xr-x  2 root root  4096 Jan 28  2022 openssh
-rw-r--r--  1 root root   309 Dec 21  2021 os-release
drwxr-xr-x  2 root root  4096 Jan 28  2022 p7zip
drwxr-xr-x  2 root root  4096 Jan 28  2022 pam.d
-rw-r--r--  1 root root    20 Apr 21  2020 pkg-config.multiarch
drwxr-xr-x  2 root root  4096 Apr 21  2020 pkgconfig
drwxr-xr-x  3 root root  4096 Jan 28  2022 pm-utils
drwxr-xr-x  2 root root  4096 Jan 28  2022 policykit-1
drwxr-xr-x  3 root root  4096 Feb 24  2022 pppd
drwxr-xr-x  3 root root  4096 Jan 28  2022 python2.7
drwxr-xr-x  3 root root  4096 Jan 28  2022 python3
drwxr-xr-x 31 root root 12288 Feb 24  2022 python3.9
drwxr-xr-x  2 root root  4096 Jan 28  2022 raspberrypi-sys-mods
drwxr-xr-x  2 root root  4096 Feb 24  2022 raspi-config
drwxr-xr-x  3 root root  4096 Jan 28  2022 resolvconf
drwxr-xr-x  2 root root  4096 Jan 28  2022 rsyslog
drwxr-xr-x  2 root root  4096 Jan 28  2022 runit-helper
drwxr-xr-x  2 root root  4096 Feb  7  2021 sasl2
lrwxrwxrwx  1 root root    19 Mar 13  2021 sftp-server -> openssh/sftp-server
drwxr-xr-x  3 root root  4096 Jan 28  2022 ssl
drwxr-xr-x  2 root root  4096 Jan 28  2022 sudo
drwxr-xr-x  2 root root  4096 Jan 28  2022 sysctl.d
drwxr-xr-x 15 root root  4096 Feb 24  2022 systemd
drwxr-xr-x  2 root root  4096 Jan 28  2022 sysusers.d
drwxr-xr-x  4 root root  4096 Jan 28  2022 tasksel
drwxr-xr-x  2 root root  4096 Jan 28  2022 tc
drwxr-xr-x 16 root root  4096 Jan  1  2021 terminfo
drwxr-xr-x  2 root root  4096 Feb 24  2022 tmpfiles.d
drwxr-xr-x  4 root root  4096 Jan 28  2022 udev
drwxr-xr-x  2 root root  4096 Jan 28  2022 udisks2
drwxr-xr-x  2 root root  4096 Feb 24  2022 valgrind

The content of the kernel I built (actually github did it) is:

(⎈|N/A:N/A)➜  dust ls -al ~/Downloads/kernel-image-rpi4/kernel-5.10.92-18-v7l-g2550dfe7268c-shield/
total 16
drwx------   5 danut007ro  staff   160 Mar 28 13:02 .
drwx------@  8 danut007ro  staff   256 Mar 28 13:01 ..
drwxr-xr-x  37 danut007ro  staff  1184 Mar 27 23:41 boot
drwxr-xr-x   3 danut007ro  staff    96 Mar 27 23:41 lib

(⎈|N/A:N/A)➜  dust ls -al ~/Downloads/kernel-image-rpi4/kernel-5.10.92-18-v7l-g2550dfe7268c-shield/boot
total 12160
drwxr-xr-x   37 danut007ro  staff     1184 Mar 27 23:41 .
drwx------    5 danut007ro  staff      160 Mar 28 13:02 ..
-rw-r--r--    1 danut007ro  staff    27967 Mar 27 23:41 bcm2708-rpi-b-plus.dtb
-rw-r--r--    1 danut007ro  staff    27307 Mar 27 23:41 bcm2708-rpi-b-rev1.dtb
-rw-r--r--    1 danut007ro  staff    27696 Mar 27 23:41 bcm2708-rpi-b.dtb
-rw-r--r--    1 danut007ro  staff    27581 Mar 27 23:41 bcm2708-rpi-cm.dtb
-rw-r--r--    1 danut007ro  staff    28792 Mar 27 23:41 bcm2708-rpi-zero-w.dtb
-rw-r--r--    1 danut007ro  staff    27441 Mar 27 23:41 bcm2708-rpi-zero.dtb
-rw-r--r--    1 danut007ro  staff    28842 Mar 27 23:41 bcm2709-rpi-2-b.dtb
-rw-r--r--    1 danut007ro  staff    28991 Mar 27 23:41 bcm2710-rpi-2-b.dtb
-rw-r--r--    1 danut007ro  staff    31266 Mar 27 23:41 bcm2710-rpi-3-b-plus.dtb
-rw-r--r--    1 danut007ro  staff    30647 Mar 27 23:41 bcm2710-rpi-3-b.dtb
-rw-r--r--    1 danut007ro  staff    28942 Mar 27 23:41 bcm2710-rpi-cm3.dtb
-rw-r--r--    1 danut007ro  staff    30035 Mar 27 23:41 bcm2710-rpi-zero-2-w.dtb
-rw-r--r--    1 danut007ro  staff    30035 Mar 27 23:41 bcm2710-rpi-zero-2.dtb
-rw-r--r--    1 danut007ro  staff    51543 Mar 27 23:41 bcm2711-rpi-4-b.dtb
-rw-r--r--    1 danut007ro  staff    51675 Mar 27 23:41 bcm2711-rpi-400.dtb
-rw-r--r--    1 danut007ro  staff    52116 Mar 27 23:41 bcm2711-rpi-cm4.dtb
-rw-r--r--    1 danut007ro  staff    48526 Mar 27 23:41 bcm2711-rpi-cm4s.dtb
-rw-r--r--    1 danut007ro  staff    18630 Mar 27 23:41 bcm2835-rpi-a-plus.dtb
-rw-r--r--    1 danut007ro  staff    18506 Mar 27 23:41 bcm2835-rpi-a.dtb
-rw-r--r--    1 danut007ro  staff    18917 Mar 27 23:41 bcm2835-rpi-b-plus.dtb
-rw-r--r--    1 danut007ro  staff    18785 Mar 27 23:41 bcm2835-rpi-b-rev2.dtb
-rw-r--r--    1 danut007ro  staff    18652 Mar 27 23:41 bcm2835-rpi-b.dtb
-rw-r--r--    1 danut007ro  staff    18767 Mar 27 23:41 bcm2835-rpi-cm1-io1.dtb
-rw-r--r--    1 danut007ro  staff    19021 Mar 27 23:41 bcm2835-rpi-zero-w.dtb
-rw-r--r--    1 danut007ro  staff    18578 Mar 27 23:41 bcm2835-rpi-zero.dtb
-rw-r--r--    1 danut007ro  staff    19909 Mar 27 23:41 bcm2836-rpi-2-b.dtb
-rw-r--r--    1 danut007ro  staff    20196 Mar 27 23:41 bcm2837-rpi-3-a-plus.dtb
-rw-r--r--    1 danut007ro  staff    21065 Mar 27 23:41 bcm2837-rpi-3-b-plus.dtb
-rw-r--r--    1 danut007ro  staff    20597 Mar 27 23:41 bcm2837-rpi-3-b.dtb
-rw-r--r--    1 danut007ro  staff    19920 Mar 27 23:41 bcm2837-rpi-cm3-io3.dtb
-rwxr-xr-x    1 danut007ro  staff      145 Mar 27 23:41 cmdline.txt
-rwxr-xr-x    1 danut007ro  staff      890 Mar 27 23:41 config.txt
-rw-r--r--    1 danut007ro  staff    43118 Mar 27 23:41 dt-blob.bin
-rwxr-xr-x    1 danut007ro  staff  5280272 Mar 27 23:41 kernel-5.10.92-18-v7l-g2550dfe7268c.img
drwxr-xr-x  254 danut007ro  staff     8128 Mar 27 23:41 overlays

(⎈|N/A:N/A)➜  dust ls -al ~/Downloads/kernel-image-rpi4/kernel-5.10.92-18-v7l-g2550dfe7268c-shield/lib
total 0
drwxr-xr-x  3 danut007ro  staff   96 Mar 27 23:41 .
drwx------  5 danut007ro  staff  160 Mar 28 13:02 ..
drwxr-xr-x  3 danut007ro  staff   96 Mar 27 23:41 modules

Should I merge these folders or overwrite them? I see that lib/modules folder is quite different. I’m not sure how to proceed…

Thank you.

overwrite the folders and unmount

Sorry but it still doesn’t boot. The green light flashes 4 times and that’s about it. Any chance to debug something?

Here’s the ls:

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns/
total 86
drwxr-xr-x 18 root      root       4096 Mar 28 16:36 .
drwxr-xr-x  3 root      root       4096 Mar 28 12:58 ..
lrwxrwxrwx  1 root      root          7 Jan 28  2022 bin -> usr/bin
drwxr-xr-x  4 parallels parallels  5632 Jan  1  1970 boot
drwxr-xr-x  4 root      root       4096 Jan 28  2022 dev
drwxr-xr-x 84 root      root       4096 Feb 26  2022 etc
drwxr-xr-x  3 root      root       4096 Feb 24  2022 home
lrwxrwxrwx  1 root      root          7 Jan 28  2022 lib -> usr/lib
drwx------  2 root      root      16384 Jan 28  2022 lost+found
drwxr-xr-x 10 root      root       4096 Feb 24  2022 media
drwxr-xr-x  2 root      root       4096 Jan 28  2022 mnt
drwxr-xr-x  2 root      root       4096 Jan 28  2022 opt
drwxr-xr-x  2 root      root       4096 Dec 21  2021 proc
drwx------  2 root      root       4096 Feb 26  2022 root
drwxr-xr-x  5 root      root       4096 Jan 28  2022 run
lrwxrwxrwx  1 root      root          8 Jan 28  2022 sbin -> usr/sbin
drwxr-xr-x  2 root      root       4096 Jan 28  2022 srv
drwxr-xr-x  2 root      root       4096 Dec 21  2021 sys
drwxrwxrwt  7 root      root       4096 Mar  7  2022 tmp
drwxr-xr-x 11 root      root       4096 Jan 28  2022 usr
drwxr-xr-x 11 root      root       4096 Feb 24  2022 var

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns/boot/
total 6051
drwxr-xr-x  4 parallels parallels    5632 Jan  1  1970 .
drwxr-xr-x 18 root      root         4096 Mar 28 16:36 ..
drwxr-xr-x  3 parallels parallels     512 Mar 28  2023 .Spotlight-V100
-rw-r--r--  1 parallels parallels   27967 Mar 27 23:41 bcm2708-rpi-b-plus.dtb
-rw-r--r--  1 parallels parallels   27307 Mar 27 23:41 bcm2708-rpi-b-rev1.dtb
-rw-r--r--  1 parallels parallels   27696 Mar 27 23:41 bcm2708-rpi-b.dtb
-rw-r--r--  1 parallels parallels   27581 Mar 27 23:41 bcm2708-rpi-cm.dtb
-rw-r--r--  1 parallels parallels   28792 Mar 27 23:41 bcm2708-rpi-zero-w.dtb
-rw-r--r--  1 parallels parallels   27441 Mar 27 23:41 bcm2708-rpi-zero.dtb
-rw-r--r--  1 parallels parallels   28842 Mar 27 23:41 bcm2709-rpi-2-b.dtb
-rw-r--r--  1 parallels parallels   28991 Mar 27 23:41 bcm2710-rpi-2-b.dtb
-rw-r--r--  1 parallels parallels   31266 Mar 27 23:41 bcm2710-rpi-3-b-plus.dtb
-rw-r--r--  1 parallels parallels   30647 Mar 27 23:41 bcm2710-rpi-3-b.dtb
-rw-r--r--  1 parallels parallels   28942 Mar 27 23:41 bcm2710-rpi-cm3.dtb
-rw-r--r--  1 parallels parallels   30035 Mar 27 23:41 bcm2710-rpi-zero-2-w.dtb
-rw-r--r--  1 parallels parallels   30035 Mar 27 23:41 bcm2710-rpi-zero-2.dtb
-rw-r--r--  1 parallels parallels   51543 Mar 27 23:41 bcm2711-rpi-4-b.dtb
-rw-r--r--  1 parallels parallels   51675 Mar 27 23:41 bcm2711-rpi-400.dtb
-rw-r--r--  1 parallels parallels   52116 Mar 27 23:41 bcm2711-rpi-cm4.dtb
-rw-r--r--  1 parallels parallels   48526 Mar 27 23:41 bcm2711-rpi-cm4s.dtb
-rw-r--r--  1 parallels parallels   18630 Mar 27 23:41 bcm2835-rpi-a-plus.dtb
-rw-r--r--  1 parallels parallels   18506 Mar 27 23:41 bcm2835-rpi-a.dtb
-rw-r--r--  1 parallels parallels   18917 Mar 27 23:41 bcm2835-rpi-b-plus.dtb
-rw-r--r--  1 parallels parallels   18785 Mar 27 23:41 bcm2835-rpi-b-rev2.dtb
-rw-r--r--  1 parallels parallels   18652 Mar 27 23:41 bcm2835-rpi-b.dtb
-rw-r--r--  1 parallels parallels   18767 Mar 27 23:41 bcm2835-rpi-cm1-io1.dtb
-rw-r--r--  1 parallels parallels   19021 Mar 27 23:41 bcm2835-rpi-zero-w.dtb
-rw-r--r--  1 parallels parallels   18578 Mar 27 23:41 bcm2835-rpi-zero.dtb
-rw-r--r--  1 parallels parallels   19909 Mar 27 23:41 bcm2836-rpi-2-b.dtb
-rw-r--r--  1 parallels parallels   20196 Mar 27 23:41 bcm2837-rpi-3-a-plus.dtb
-rw-r--r--  1 parallels parallels   21065 Mar 27 23:41 bcm2837-rpi-3-b-plus.dtb
-rw-r--r--  1 parallels parallels   20597 Mar 27 23:41 bcm2837-rpi-3-b.dtb
-rw-r--r--  1 parallels parallels   19920 Mar 27 23:41 bcm2837-rpi-cm3-io3.dtb
-rw-r--r--  1 parallels parallels     145 Mar 27 23:41 cmdline.txt
-rw-r--r--  1 parallels parallels     890 Mar 27 23:41 config.txt
-rw-r--r--  1 parallels parallels   43118 Mar 27 23:41 dt-blob.bin
-rw-r--r--  1 parallels parallels 5280272 Mar 27 23:41 kernel-5.10.92-18-v7l-g2550dfe7268c.img
drwxr-xr-x  2 parallels parallels   21504 Mar 27 23:41 overlays

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns/lib/
total 452
drwxr-xr-x 67 root root  4096 Feb 24  2022 .
drwxr-xr-x 11 root root  4096 Jan 28  2022 ..
drwxr-xr-x  6 root root  4096 Feb 24  2022 NetworkManager
drwxr-xr-x  2 root root  4096 Feb 15  2021 X11
drwxr-xr-x  5 root root  4096 Jan 28  2022 apt
drwxr-xr-x 37 root root 36864 Feb 26  2022 arm-linux-gnueabihf
drwxr-xr-x  3 root root  4096 Jan 28  2022 arm-linux-musleabihf
drwxr-xr-x  2 root root  4096 Jan 28  2022 bfd-plugins
drwxr-xr-x  2 root root  4096 Aug  7  2021 binfmt.d
drwxr-xr-x  2 root root  4096 Jan 28  2022 compat-ld
drwxr-xr-x  2 root root  4096 Jan 28  2022 console-setup
lrwxrwxrwx  1 root root    21 Jan 28  2022 cpp -> /etc/alternatives/cpp
drwxr-xr-x  3 root root  4096 Jan 28  2022 crda
drwxr-xr-x  2 root root  4096 Jan 28  2022 dbus-1.0
drwxr-xr-x  3 root root  4096 Jan 28  2022 debug
drwxr-xr-x  3 root root  4096 Jan 28  2022 dhcpcd
drwxr-xr-x  3 root root  4096 Jan 28  2022 diet
drwxr-xr-x  3 root root  4096 Jan 28  2022 dpkg
drwxr-xr-x  3 root root  4096 Feb 24  2022 emacsen-common
drwxr-xr-x  2 root root  4096 Jan 28  2022 environment.d
drwxr-xr-x  2 root root  4096 Jan 28  2022 file
drwxr-xr-x  3 root root  4096 Feb 24  2022 firewalld
drwxr-xr-x 41 root root  4096 Jan 28  2022 firmware
drwxr-xr-x  3 root root  4096 May 15  2020 gcc
drwxr-xr-x  3 root root 12288 Feb 24  2022 git-core
drwxr-xr-x  2 root root  4096 Jan 28  2022 gnupg
drwxr-xr-x  2 root root  4096 Jan 28  2022 gnupg2
drwxr-xr-x  2 root root  4096 Jan 28  2022 gold-ld
drwxr-xr-x  4 root root  4096 Jan 28  2022 groff
drwxr-xr-x  2 root root  4096 Jan 28  2022 ifupdown
drwxr-xr-x  2 root root  4096 Jan 28  2022 init
drwxr-xr-x  3 root root  4096 Jan 28  2022 kernel
drwxr-xr-x  3 root root  4096 Jan 28  2022 klibc
-rwxr-xr-x  1 root root 75224 Jun 10  2021 klibc-krh8Sgsh8PW7Qbsa0KsFm65rfDw.so
lrwxrwxrwx  1 root root    30 Dec  1  2021 ld-linux-armhf.so.3 -> arm-linux-gnueabihf/ld-2.31.so
lrwxrwxrwx  1 root root    24 Jan 28  2022 ld-linux.so.3 -> /lib/ld-linux-armhf.so.3
lrwxrwxrwx  1 root root    16 Nov 11  2016 libident.so.0 -> libident.so.0.22
-rw-r--r--  1 root root  7976 Nov 11  2016 libident.so.0.22
lrwxrwxrwx  1 root root    20 May 24  2012 libsigc-1.2.so.5 -> libsigc-1.2.so.5.0.7
-rw-r--r--  1 root root 23724 May 24  2012 libsigc-1.2.so.5.0.7
-rw-r--r--  1 root root 16500 Aug 29  2016 libsupp.a
drwxr-xr-x  3 root root  4096 Feb 24  2022 locale
drwxr-xr-x  3 root root  4096 Jan 28  2022 lsb
drwxr-xr-x  2 root root  4096 Jan 28  2022 man-db
drwxr-xr-x  3 root root  4096 Feb 17  2021 mime
drwxr-xr-x  2 root root  4096 Jan 28  2022 modprobe.d
drwxr-xr-x  3 root root  4096 Mar 28 16:30 modules
drwxr-xr-x  2 root root  4096 Aug  7  2021 modules-load.d
drwxr-xr-x  2 root root  4096 Jan 28  2022 openssh
-rw-r--r--  1 root root   309 Dec 21  2021 os-release
drwxr-xr-x  2 root root  4096 Jan 28  2022 p7zip
drwxr-xr-x  2 root root  4096 Jan 28  2022 pam.d
-rw-r--r--  1 root root    20 Apr 21  2020 pkg-config.multiarch
drwxr-xr-x  2 root root  4096 Apr 21  2020 pkgconfig
drwxr-xr-x  3 root root  4096 Jan 28  2022 pm-utils
drwxr-xr-x  2 root root  4096 Jan 28  2022 policykit-1
drwxr-xr-x  3 root root  4096 Feb 24  2022 pppd
drwxr-xr-x  3 root root  4096 Jan 28  2022 python2.7
drwxr-xr-x  3 root root  4096 Jan 28  2022 python3
drwxr-xr-x 31 root root 12288 Feb 24  2022 python3.9
drwxr-xr-x  2 root root  4096 Jan 28  2022 raspberrypi-sys-mods
drwxr-xr-x  2 root root  4096 Feb 24  2022 raspi-config
drwxr-xr-x  3 root root  4096 Jan 28  2022 resolvconf
drwxr-xr-x  2 root root  4096 Jan 28  2022 rsyslog
drwxr-xr-x  2 root root  4096 Jan 28  2022 runit-helper
drwxr-xr-x  2 root root  4096 Feb  7  2021 sasl2
lrwxrwxrwx  1 root root    19 Mar 13  2021 sftp-server -> openssh/sftp-server
drwxr-xr-x  3 root root  4096 Jan 28  2022 ssl
drwxr-xr-x  2 root root  4096 Jan 28  2022 sudo
drwxr-xr-x  2 root root  4096 Jan 28  2022 sysctl.d
drwxr-xr-x 15 root root  4096 Feb 24  2022 systemd
drwxr-xr-x  2 root root  4096 Jan 28  2022 sysusers.d
drwxr-xr-x  4 root root  4096 Jan 28  2022 tasksel
drwxr-xr-x  2 root root  4096 Jan 28  2022 tc
drwxr-xr-x 16 root root  4096 Jan  1  2021 terminfo
drwxr-xr-x  2 root root  4096 Feb 24  2022 tmpfiles.d
drwxr-xr-x  4 root root  4096 Jan 28  2022 udev
drwxr-xr-x  2 root root  4096 Jan 28  2022 udisks2
drwxr-xr-x  2 root root  4096 Feb 24  2022 valgrind

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns/lib/modules/
total 12
drwxr-xr-x  3 root root 4096 Mar 28 16:30 .
drwxr-xr-x 67 root root 4096 Feb 24  2022 ..
drwxr-xr-x  3 root root 4096 Mar 28 16:38 5.10.92-18-v7l-g2550dfe7268c

parallels@ubuntu-linux-22-04-desktop:/mnt$ ls -al /mnt/norns/lib/modules/5.10.92-18-v7l-g2550dfe7268c/
total 1176
drwxr-xr-x  3 root root   4096 Mar 28 16:38 .
drwxr-xr-x  3 root root   4096 Mar 28 16:30 ..
drwxr-xr-x 11 root root   4096 Mar 27 23:41 kernel
-rw-r--r--  1 root root 295547 Mar 27 23:41 modules.alias
-rw-r--r--  1 root root 310700 Mar 27 23:41 modules.alias.bin
-rw-r--r--  1 root root   7459 Mar 27 23:41 modules.builtin
-rw-r--r--  1 root root      0 Mar 27 23:41 modules.builtin.alias.bin
-rw-r--r--  1 root root   9057 Mar 27 23:41 modules.builtin.bin
-rw-r--r--  1 root root  59217 Mar 27 23:41 modules.builtin.modinfo
-rw-r--r--  1 root root  66931 Mar 27 23:41 modules.dep
-rw-r--r--  1 root root 106346 Mar 27 23:41 modules.dep.bin
-rw-r--r--  1 root root    238 Mar 27 23:41 modules.devname
-rw-r--r--  1 root root  33152 Mar 27 23:41 modules.order
-rw-r--r--  1 root root    269 Mar 27 23:41 modules.softdep
-rw-r--r--  1 root root 118925 Mar 27 23:41 modules.symbols
-rw-r--r--  1 root root 152710 Mar 27 23:41 modules.symbols.bin

your config.txt likely does not match your hardware then.

download the correct image: Release norns 220306 · monome/norns-image · GitHub

and then make the generated config.txt match that of the downloaded image, except for updated kernel entry

:partying_face:

Thank you so much for your help! I managed to do it and it really works. Now my norns can show up to 16 devices in DEVICES > MIDI menu. Here’s a video showing it all.

Maybe this is something which should be enabled by default? Do you accept PRs on monome/linux repository?

that’d be fine to PR, though I’m not expecting we’ll be releasing new kernel builds anytime in the near future.

what would be very helpful is if you’d possibly spend a moment documenting your process of building the kernel with extra steps and PR that to the readme of norns-kernel-builder

My trick was to actually have github build the kernel for me.

The issue was with dtoverlay=monome-snd-4270 line in boot/config.txt where I replaced it with 4271 (as it was in the original image which worked).

I will try to open PRs on both repos.