MODEP no longer running following rpi-update

Hey Craig,

I did a bit more testing at home, and found that I too had (different, non-wifi) issues with rpi-update and an Audioinjector sound card (the Octo). I can confirm that on my system as well, after an rpi-update (or now also, apt-get upgrade s as well), the sound card is not detected any longer. This did not keep my WiFi hotspot from working, but it did break everything else that I cared about!

You will probably want to log in to your pi, run the dmesg command, and review the output. Problems generally highlighted in red, to draw your attention there. You might see something like this:

[    6.701854] audioinjector-octo soc:sound: ASoC: CODEC DAI cs42448 not registered - will retry
[    6.701870] audioinjector-octo soc:sound: snd_soc_register_card failed (-517)
[    8.261814] audioinjector-octo soc:sound: ASoC: CODEC DAI cs42448 not registered - will retry
[    8.261827] audioinjector-octo soc:sound: snd_soc_register_card failed (-517)

That’s how it looks when the kernel can’t deal with setting up the sound card (the Octo at least).

It appears that some changes in the most recent 4.19 kernels are also causing issues for these cards. Fortunately, this fix is not too involved.

It is possible to use the rpi-update command again, and point it at an older commit to revert back to an older kernel. You can review the available commits here: https://github.com/Hexxeh/rpi-firmware/commits

I decided to roll back to the last kernel in the 4.14 branch where things seemed to all work before: 4.14.98:
sudo rpi-update a08ece3d48c3c40bf1b501772af9933249c11c5b

After the upgrade (downgrade) back to the 4.14 branch, and a reboot, my Octo is happily recognized again, as expected.


Now, the other half of this problem is that if you like to keep your packages up to date (apt-get update / apt-get upgrade), then you can run into this problem there as well.

The raspberrypi-kernel and raspberrypi-bootloader serve as packages that update the kernel, similar to what rpi-update does. In my testing, it appears that the kernel that’s now provided by raspberrypi-kernel is causing problems for my audioinjector card as well. (package version 1.20190517-1)

To prevent those packages (and their related packages) from updating during an apt-get upgrade, we can put those packages on hold:
sudo apt-mark hold libraspberrypi-bin libraspberrypi-dev libraspberrypi-doc libraspberrypi0 raspberrypi-bootloader raspberrypi-kernel

To review what packages you have held, we use apt-mark showholds:

modep@modep:~ $ apt-mark showholds
libraspberrypi-bin
libraspberrypi-dev
libraspberrypi-doc
libraspberrypi0
raspberrypi-bootloader
raspberrypi-kernel
modep@modep:~ $ 

With those packages marked as held, they should not be able to be installed, upgraded, or removed, until they are explicitly unheld. In case you need it in the future, the syntax for that would be:
sudo apt-get unhold <package list>

I won’t be able to fully reimage my system and test this all again until later, but between the other post with all the wifi info, and the kernel revert, you should hopefully have a working audioinjector setup again.

Let me know if that sorts it out for you