Sad - Updating Breaks Raspbian For Robots (Buster) Sound System

Carl was reporting 301 updatable packages, having last taken an OS update in February of this year (2021)…and they have been scaring us with the Log4j vulnerability, so “why not give it a shot?”

Always practicing “Safe Updates”, I ran a backup “sudo rpi-clone sda” which only took two minutes, and then launched into the great adventure land of updating the OS.

Initial looks can be deceiving, but I noticed right away that Carl was not sporting his deep blue “I’m listening” LED, and didn’t seem as talkative as usual when starting up.

Sure enough, the update completely revamped the Linux audio stack, stealing Carl’s tongue and disconnecting his ear.

Purging pulseaudio and reseting the alsamixer control seemed to be promising at first as Carl could play wav files again, but his TTS voice remained silent and speech recognition remained impossible.

Only one thing to do - boot the backup and record the update failure in Carl’s life.log.

I’m just going to have to freeze Carl’s OS at Feb 2021 forever. It took three years to create and checkout every nook and cranny of Carl’s brain. I don’t have it in me to rebuild him over the Legacy PiOS and test every function again.

Total Life:  25918.9 hrs since Aug 22,2018
Life this year:  5334.95 hrs (BOY Aug 22)
Days Booted This Year:  7
Average Time Between Reboot:  762 hrs
Total Dockings:  2587
2 Likes

Reminds me of a story I read a few years ago as companies were migrating to Windows 10 that the Pentagon still had a substantial amount (>50% I think) of critical infrastructure still running XP.

Of course with new vulnerabilities coming out the excuse of “If it ain’t broke…” no longer holds true. On the other hand - should Carl fall victim to ransomware you can always just reinstall from a known good back up :slight_smile:

/K
/K

2 Likes

Or, you could mark the audio packages, (along with pigpio) as “hold” and update the rest.

One of the things that’s not helping the GoPiGo gain friends is the - apparent - brittleness of the system, and I suspect that a certain amount of that is because everything of interest is “curl’d” in, rather than being installed via the package manager, which causes problems when things get updated.

Based on the limited research I have been able to do so far, things installed by “curl’ing” them in should not be allowed to change or conflict with an installed package - and to the greatest extent possible, packages should be used natively.  To the extent that this is NOT possible, potential conflicts should be marked “hold”.

2 Likes

Oh that it would be so easy. Debian changed the whole sound stack and the kernel but still called it a minor update. The kernel change is needed for both the sound and all the non-sound-stack changes, So holding the sound stack and the kernel are required, and that means practically nothing can be updated.

2 Likes

You mean Raspberry Pi Foundation?

Last I heard Debian doesn’t release, or even control, the Raspbian releases and it is up to the Raspberry Pi folks to determine what goes into an update or what to call it.

This is on one of the older Raspbian for Robots images?

I would be tempted to ask “minor with respect to what?” - re-programming the entire thing bare-metal from the ground up?

Well, “kernel” updates happen all the time, and they’re often considered “minor” depending on what got updated.

I’ve been getting pretty regular kernel updates on my Linux Mint install, and they’re not considered “major” because the system version doesn’t change - it’s still 19.3.

2 Likes

Any idea why?  What was wrong with the previous one?

2 Likes

Just like Linux video handling experienced a major change in PiOS Bullseye, audio has been quite a free for all for years. The “Linux Strategy Team”, whoever they are, decided to try to “standardize video and audio across all Linux flavors” which trickled down to Raspbian Buster and PiOS Buster.

I don’t know the players, but over the years I’ve been battling finding what audio configuration for what kernel will allow text-to-speech, wav file playback, and speech recognition through a mic and speaker connected directly or through an USB digital audio interface on each different flavor of Solaris/HPUX/Aix/RedHat/SuSe/Ubuntu/Mint/Raspbian/PiOS. With every update comes another “check record and play, check TTS, check speech reco”, with some combination of pulseaudio, ALSA, and Jack.

I just don’t have it in me at the moment to figure it all out, all over again so Carl is going to remain frozen and very happily talking and listening to me.

image
image

Except to get my stuff working I have always had to go direct to ALSA, avoiding Jack and Pulse. Bluetooth? Never managed to get that reliable either.

2 Likes