Install kernel modules for respeaker mic arrays

We are looking to utilize some custom hardware with our rPi that needs a kernel module installed. Could someone point me in the right direction?

Hi @rpaddock, this project might be able to help, let us know when you had a chance to try it out!

Hi! How far did you get with this? I’m going down this road, too. Want to compare notes?

I’m writing down all of my steps… so far I’ve been able to run much of, but it runs out of space while downloading header files to /lib/module. This is what I have so far:

Fix check for sufficient diskspace


Change /boot to /$:

(or change to /mnt/boot ?!)

Temporary to start compling

mkdir /boot

(or change to /mnt/boot ?!)

Fix directory permissions on /lib/modules:

mount -o remount,rw /partition/identifier /lib/modules

You’ll get this utility

apt install wget

Interesting Commands


Hi @diydsp – I’m guessing that the script you’re talking about comes from the original seeed-voicecard repo – is that correct?

Assuming I’ve got that right, there are a couple things to note here:

  • /mnt/boot is probably the partition you want – you can read more about that at our BalenaOS Masterclass.

  • However, the best way to add an out-of-tree kernel module (that is, a module that’s not included in the kernel by default) to your device is by building your own image. You can do that using the repo we linked to above, but there are other threads (like this one) showing other approaches.

  • Edit: Once you have the kernel module in a container, you can load it in a multicontainer application by adding the io.balena.features.kernel-modules label to your docker-compose.yml file - more details on that can be found here.

Hope that helps - please let us know how it works out!

All the best,

I am going to give this a try. I need to leverage a ReSpeaker Microphone x RBPI 4 and I’d love to have it running on BalenaOS.

Any additional tips, tricks or progress from the community is greatly appreciated. Will report back when I’ve made some progress.

Hey guys,

any updates on this? Working on the same challenge.

How does the out of tree modules work? Does it create an own image to flash to or how do I get this onto the device then?

best chris