# Install kernel modules for respeaker mic arrays

**URL:** <https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820>\
**Category:** Product support\
**Created:** [March 26, 2018, 4:11pm UTC](https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820 "2018-03-26T16:11:21Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![rpaddock](https://avatars.discourse-cdn.com/v4/letter/r/ce73a5/32.png) [@rpaddock](https://forums.balena.io/u/rpaddock)\
**Post date:** [March 26, 2018, 4:11pm UTC](https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820/1 "2018-03-26T16:11:21Z")

</div>

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?

> **[respeaker/seeed-voicecard](https://github.com/respeaker/seeed-voicecard)**
>
> 2 Mic Hat, 4 Mic Array, 6-Mic Circular Array Kit, and 4-Mic Linear Array Kit for Raspberry Pi - respeaker/seeed-voicecard

---

<div class="post-metadata">

**Author:** ![imrehg](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/imrehg/32/36_2.png) [@imrehg](https://forums.balena.io/u/imrehg)\
**Post date:** [March 26, 2018, 5:55pm UTC](https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820/4 "2018-03-26T17:55:44Z")

</div>

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

> **[balena-os/kernel-module-build](https://github.com/balena-os/kernel-module-build)**
>
> Example project for building an OOT kernel module in resin - balena-os/kernel-module-build

---

<div class="post-metadata">

**Author:** ![diydsp](https://avatars.discourse-cdn.com/v4/letter/d/6de8d8/32.png) [@diydsp](https://forums.balena.io/u/diydsp)\
**Post date:** [April 28, 2020, 7:27pm UTC](https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820/6 "2020-04-28T19:27:11Z")

</div>

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 install.sh, 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

In install.sh:

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

lsblk

---

<div class="post-metadata">

**Author:** ![saintaardvark](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/saintaardvark/32/3390_2.png) [@saintaardvark](https://forums.balena.io/u/saintaardvark)\
**Post date:** [April 29, 2020, 4:04pm UTC](https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820/7 "2020-04-29T16:04:53Z")

</div>

Hi @diydsp – I’m guessing that the `install.sh` script you’re talking about comes from the original [seeed-voicecard](https://github.com/respeaker/seeed-voicecard/blob/master/install.sh) 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](https://www.balena.io/docs/learn/more/masterclasses/host-os-masterclass/#13-state-partition-and-the-root-overlay).

- 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](https://github.com/balena-os/kernel-module-build/), but there are other threads (like [this one](https://forums.balena.io/t/how-to-build-custom-kernel-modules/24098)) 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](https://www.balena.io/docs/learn/develop/multicontainer/#labels).

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

All the best,  
Hugh

---

<div class="post-metadata">

**Author:** ![dedline](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/dedline/32/3639_2.png) [@dedline](https://forums.balena.io/u/dedline)\
**Post date:** [May 7, 2020, 3:50pm UTC](https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820/9 "2020-05-07T15:50:44Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![chriswoj](https://sea2.discourse-cdn.com/balena/user_avatar/forums.balena.io/chriswoj/32/4329_2.png) [@chriswoj](https://forums.balena.io/u/chriswoj)\
**Post date:** [November 6, 2020, 6:43pm UTC](https://forums.balena.io/t/install-kernel-modules-for-respeaker-mic-arrays/2820/10 "2020-11-06T18:43:25Z")

</div>

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
