Devlog #7
While I am waiting for my ship to be reviewed, I have made huge progress. This is mainly because I finally managed to get a Raspberry Pi Pico W, and with that, I was finally able to connect PicoOS to the internet.
What have I actually done?
-
WiFi driver I built this driver on top of the built-in network library.
These are the functions it currently supports:
- Auto connect
- Network configuration
- Network scanning
- Status checking
- Disconnecting -
Ping Yes, you guessed it right — PicoOS can now ping websites and IP addresses.
-
Download system Because I have my own domain, “https://picoos.dev”, and now an internet connection, I created a system where system files and apps are stored online at:
“https://picoos.dev/download/” -
System updates I created a system updater because it is much easier to download only the updated files using the internet.
You can access it by typing the command: “update”
After that, it downloads manifest.json, which contains every system file with its SHA-256 hash.PicoOS compares the local files with the online version and downloads only the files that are different.
The manifest is stored here: “https://picoos.dev/download/system/manifest.json”
-
App installation and updatesThis works almost the same way as the system updater, but it uses: “https://picoos.dev/download/apps/”
When you install an app, PicoOS downloads it and installs it directly into the system. -
Update installer PicoOS already has its own installer that can install and update the system.
However, now that I added support for both the classic Raspberry Pi Pico and Pico W, I need to improve the installer so it can detect the device and install only compatible packages.
What I want to do next:
-
I want to improve the code structure and make the interface look better because the current version was mainly just a test to see if everything works — and it does! :)
-
I also want to add image-to-ASCII rendering, so maybe I can try running some interesting things on it. But that will be a surprise.
-
I want to create something like an SSH / remote access system. This will probably be another project and will work as a downloadable app.
However, before that, I need to create a system that can properly handle input and collect terminal output, so it doesn’t rely only on serial communication.
I think that is everything for this devlog.
Below you can see a preview of the system with some of the new commands.
I also want to ask: does anyone know how long I usually have to wait for a project review?
I reshiped this project about 5 days ago and still haven’t received any feedback.
If anyone knows, please comment on this devlog.
Thank you!
