I “dusted off” an older PI, A model B+ 1.2 hoping to have it work for a Romi. The 40 pin connector is fine, the image loads fine, however the gap is no integrated WiFi. No big deal as I have a dongle to be used.
However the image, while it loads and boots, it never kicks off the Webpage configuration service. I think it is due to not having the WiFi module as you can see a Failure upon start up.
Now where I am struggling is it locks the file system, and to unlock you have to use the webpage configuration. Does anyone know of the back end command that is used to unlock the file system for writing?
If I can get the file system unlocked I can perform an ABT Update, add the driver for the wifi dongle and see if it will correct start after that. Currently the dongle is seen via lsusb but no driver is being loaded.
Anyone attempt to use a Pi B+ 1.2? Or a Pi that does not have an integrated WiFi module with the WPILib Romi build?
At the console you can use the rw and ro command aliases to make the filesystem read/write and read-only respectively.
The webserver not starting is likely not due to wifi not being present. For non-Romi use we actually disable the built-in wifi module. It’s more likely something more fundamental with the older Pi model. What version of the WPILibPi image are you trying to use? The 2023 image is built with newer toolchains and targets that might not work on the armv6. You might want to try using the 2022 image instead (note the 2022 image will interoperate with desktop 2023 WPILib just fine).
I went back to the this version: WPILibPi-v2022.1.1_2022-03-14-Romi
The Wifi is starting, I see the connection, and I can connect to it using the key listed in the WPA_Supplicant conf file. However the webserver does not seem to work.
I do not see any errors around it during start up, the only error I see is Failed to start regenerate SSH host keys. However I can SSH fine using the ethernet connection.
I have not tried directly running the romi yet or pushing code, as I can not get started with the webserver configuration steps I do not want to skip that.
What webserver is used on the WPILib build? Is there a way to kick it off manually or check the status?
Thanks for the help so far!
As 2022 doesn’t work either, I have bad news and good news.
The bad news: assuming the problem is what I think, it will be a decent amount of work to get the webserver (and anything else WPILib including image processing/camera streaming) running. You can try running the webserver directly to confirm (/usr/local/sbin/configServer --romi as root). My guess is you’ll get some kind of illegal instruction error because it’s trying to run armv7 code on an armv6 processor.
The good news: if you just want to use it to drive, you don’t have to get the config webserver running. As long as the Romi service is running (you should see node somewhere in top), you can load the Romi firmware manually (instead of using the config webserver). The webserver runs /usr/src/wpilib-ws-romi/scripts/uploadRomi.py as root to do the firmware update process, so you can just run this manually.
Thanks for the help. You are right the configServer is erroring out with an invalid instruction. I guess I will give up on using the 1.2 b+ and order a 3 b+ for in home testing.