BKOS
The software of the onboard computer. Formally it is firmware, but it is built to feel like an operating system.
More than a program
BKOS runs on the onboard computer and handles everything: the screens, the modules, the network, updates and apps. Because the modules cannot do anything themselves, all the logic lives here.
The aim is that it feels as natural as the system on a phone. That is why you can also install programs of your own, without flashing the whole software again.
An impression, not a screenshot. Real photos of the 7-inch panel will follow.
What it can do
Sailing modes
Harbour, sailing, motor and anchor. Each mode has its own set of lights and devices.
Lighting
Interior and exterior lights are separate. An automatic mode switches the exterior lights on when it gets dark.
IO channels
Up to 240 channels through the modules. Every channel has a name; the first characters decide how it is shown.
Tides and currents
Tide data and a current atlas of the Wadden Sea, made with a map generator of my own.
Network and updates
WiFi, time over NTP and over-the-air updates from GitHub. A recovery menu during start-up helps when things go wrong.
Remote control
A web app to operate the panel from your phone. In development.
Programs in Lua
The way an operating system should.
You write small programs in Lua and they run in a sandbox, so a bug in an app does not bring the onboard computer down. The apps live in an app store of their own.
- You install an app without new firmware
- New apps arrive through a pull request, with automatic checks and a review by me
- Have an idea for an app? You are welcome to send one in
From breadboard to now
Software and hardware grew together.
The first test, from a breadboard with a Raspberry Pi Pico.
Soon working from circuit boards of my own.
Far more possible than in the first version.
Worked out more neatly.
Effectively version 3, rebuilt to work well with an ESP32 from the start.
A new BKOS, built with the help of AI. I had AI look at BKOS 4 and learn how I drive the screen and the modules, and make much nicer software from it.
I tried several AI tools, and not all did this to my satisfaction. In my opinion Claude has made something really good of it.
What belongs to BKOS
BKOS is more than the firmware alone. Everything around it belongs to this project.
v0.2.3
Stable versions have been tested on my own boat. Test versions appear in between.
BKOSS
Add-on that gives an ESP32 screen (and perhaps others later) a UTP port, so it talks to the modules with my protocol. There is a variant for the small and the large screens.
What is coming
These are plans, not promises.
- Sub-controllers that send commands to the main computer over ESP-NOW
- A phone app, and a web app with a public page and a protected control page
- Support for screens other than the ESP32 screens