Open danic85 opened 9 months ago
I was able to get it to compile fine, but it still doesn't function. Looking deeper into this, the values in this section (https://github.com/adafruit/Raspberry-Pi-Installer-Scripts/blob/30b4c740b9c96fd8b6853ce64cff2f6d94438c20/i2s_mic_module/snd-i2smic-rpi.c#L99-L114) were originally obtained by running:
sudo cat /sys/kernel/debug/asoc/dais
However, for the Pi 5, only snd-soc-dummy-dai
is returned, so it does not appear that this will run on the Pi 5 without some significant modifications.
I was able to get it to compile fine, but it still doesn't function. Looking deeper into this, the values in this section (
) were originally obtained by running:
sudo cat /sys/kernel/debug/asoc/dais
However, for the Pi 5, onlysnd-soc-dummy-dai
is returned, so it does not appear that this will run on the Pi 5 without some significant modifications.
I did try to update the i2smic.py with PI5 support:
elif pi_model in ("RASPBERRY_PI_5"):
pimodel_select = 3
And snd-i2smic-rpi.c with according initialization:
// Set platform
switch (rpi_platform_generation) {
case 0:
// Pi Zero
card_platform = "20203000.i2s";
break;
case 1:
// Pi 2 and 3
card_platform = "3f203000.i2s";
break;
case 2:
// Pi 4
card_platform = "fe203000.i2s";
break;
case 3:
default:
// Pi 5
card_platform = "1f000a4000.i2s";
dmaengine = "snd_pcm_dmaengine";
}
The 1f000a4000.i2s I was able to get using:
sudo cat /sys/kernel/debug/asoc/dais
before running the i2smic.py script
But after making and installing module I got: [ 4.237997] snd_i2smic_rpi: loading out-of-tree module taints kernel. [ 4.245310] snd-i2smic-rpi: Version 0.1.0 [ 4.245315] snd-i2smic-rpi: Setting platform to 1f000a4000.i2s ... [ 4.305790] request module load 'snd_pcm_dmaengine': 0 [ 4.311105] register platform device 'asoc-simple-card': 0
I also tried default bcm2708-dmaengine with same result
arecord -l Does not return any recording devices
Not sure where to look next and why registration does not workl
It likely doesn't work because they changed the hardware quite a bit. Also, when I run the same command on my Pi 5, I get:
i2s-hifi
107c706400.hdmi
i2s-hifi
107c701400.hdmi
snd-soc-dummy-dai
This is more than before, but still not seeing a consistent value.
yes, it looks like RPI team is currently focused on core0 (main core) and in the near future there will be not much news in regards to RP1 (core1) used to communicate with I2S peripheral More details is here: https://forums.raspberrypi.com/viewtopic.php?t=363644
Hi @makermelissa - trying to get this to run on a Pi Zero 2 W running Bookworm. May I ask what your solution was to get it to compile?
@jerbzz I don't remember exactly what I did at this point, but I likely just followed the instructions at https://learn.adafruit.com/adafruit-i2s-mems-microphone-breakout/raspberry-pi-wiring-test#installer-script-3061600. I think I may have been using a Pi 4 as well. ...No, it was on a Pi 5.
Script Command
Operating System
64 bit Raspberry Pi OS
Hardware
Raspberry Pi 5
Behavior
Board is rejected as it is not explicitly accepted in the installer script. Once added alongside the Pi 4 boards, this is the error:
Description
Following (failed) install, the mic is not available with
arecord -l
.Additional information
No response