We decided to install FUZIX onto our picos in order to run programs written in different languages. The Fuzix operating system is a Unix clone made to run on small platforms like the Raspberry Pi Pico. After taking a look at the Github we realized we would need an SD card for FUZIX so we bought a Stemedu SD card module. The Github provided us with the wiring diagram for interfacing the SD card to the pico.
Figure: SD card wiring
For whatever reason we decided to follow the instructions on the Raspberry Pi website, which led us into some trouble. We were able to build the operating system from source but the filesystem was not working properly with problems finding /init.
Figure: Problem finding init
After trying a myriad of things we followed the instructions on the Github and managed to get FUZIX working properly.
Figure: Our first time running FUZIX
Once we got it running, we planned to run a simple program using C. The problem was we didn’t know how to transfer a program into FUZIX. After some digging, we found a solution which requires a tool called UUEncode and UUDecode, which converts a file into a ASCII text, which can be transferred over a terminal. We tried that out and were able to successfully begin the transfer but it was VERY slow. On a file that was around 971KB, it looked like it would take around 2 hours, which was too long, especially to test programs many times.
At this time we reached the point where we had to make a tough call. This brief blog does not enumerate the amount of problems we ran into and the amount of time we spent debugging to get to this point. We had spent too much time on getting the operating system to work instead of producing actually useful code which is why we decided to cancel the use of an operating system. Instead we will focus our time on writing some useful code. As we mentioned on our first blog, since we didn’t get the operating system to work we will write all our code in C. Although we didn’t get it working for this competition, we do plan on picking FUZIX back up for future projects. We would appreciate any pointers in the comments on how to transfer files into the filesystem.