Raspberry Pi Video Communications Terminal
I've been configuring a Raspberry Pi 3B+ to be a video terminal, using a ZeroCam and a ReSpeaker 2Mics PiHat to provide the interface. This should be simple. Dear reader, it is not.
Problem 1: Raspbian Buster
Turns out Raspbian Buster doesn't like to make the ZeroCam available to Jitsi and Cheese etc, so I downgraded to Raspbian Stretch, ran an apt-get upgrade
, enabled the camera, rebooted to check it and carried on.
Problem 2: The Kernel
So the ReSpeaker Installer doesn't like the latest kernel. Luckily, it can load a backup. Unfortunately the backup is newer and causes a whole host of issues. After some digging I found where the backups were loaded from and tried older ones. This led to another problem in that once you start experimenting, the automated way the script knows where to find the archives stops working, so I had to edit that. I was still having problems (though I forget the exact details), so, long story short, I found the last released version of the installer rather than the last commit, edited the makefile to use my chosen kernel, edited dkms.conf to make it compile (it needed MAKE="ARCH=arm 'make' "
added to it, though I also used this to pass the new kernel version through), and tried kernel 4.19.42-v7 (raspberrypi-kernel_1.20190517-1_armhf.deb). This compiled but gave weird dmesg
errors. Luckily, a search found this and, after trying various fixes, I just downgraded to the version before (raspberrypi-kernel_1.20190401-1_armhf.deb / kernel 4.14.98+v7), re-edited my hacks, ran the script again and it worked!
Problem 3: Camera has stopped working
The ReSpeaker may have worked using this setup, but the camera did not. I examined dmesg
to no avail, but remembered a problem I'd seen mentioned somewhere about /dev/video0
disappearing. I had a look and, sure enough, it was gone. A quick search found this thread and sudo modprobe bcm2835-v4l2
seemed to fix it (though weirdly only on the second attempt). I added it to /etc/modules
, rebooted and finally success!
Where from here
I need to make Jitsi open automatically. Sadly I can't get Jami on Stretch, so it can only be Jitsi, but that's better than nothing.