ControlBlock install.sh failing during final step (wrong module version?)
I just received the ControlBlock I ordered and am excited to try it out. I am using it with an RPi 3 B+ (March 2018) running RetroPie v4.4 (April 14, 2018). However, when I ran the
install.shscript I saw an error at the end (and the LED that I connected never illuminates nor does the soft power switch do anything). I think this may be due to having run
sudo apt-get upgradeearlier and getting a newer kernel, because the script seems to be looking for something in
uname -rshows that the RPi running
I rebooted (in case the build ran previously on an older kernel despite having loaded the new one via apt) and am re-running
install.shnow in hopes that this will fix it. However, I would like to know if anyone else has encountered this or if perhaps I am missing an obvious step. I can provide more info if applicable.
... Scanning dependencies of target installservice [100%] Installing service. Making sure that spi-dev is contained in /etc/modules ... modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.14.30-v7+/modules.dep.bin' modprobe: FATAL: Module spi_bcm2835 not found in directory /lib/modules/4.14.30-v7+ [ ok ] Starting controlblockservice (via systemctl): controlblockservice.service. [100%] Built target installservice /home/pi/ControlBlockService2 [SUCCESS] The ControlBlock driver binary is installed [SUCCESS] The ControlBlock service is running You can find the configuration file at /etc/controlblockconfig.cfg.
$ ls /lib/modules/ 4.14.30-v7+ 4.14.34+ 4.14.34-v7+ pi@retropie:~/ControlBlockService2 $ ls /lib/modules/4.14.30-v7+/ extra pi@retropie:~/ControlBlockService2 $ uname -a Linux retropie 4.14.34-v7+ #1110 SMP Mon Apr 16 15:18:51 BST 2018 armv7l GNU/Linux
Doh, OK, re-running the script after rebooting fixed it. I must not have rebooted since updating the kernel version. Now I can run
jstest /dev/input/js0and see the buttons work as well as shutdown view soft power switch and see LED indicate status.
I'm not sure if this post will be useful to others, but one never knows. In any case, the process of writing it out probably helped me figure out what went wrong.