What does it do?
Ubo app:
- offers a GUI (shown inside browser or hardware) to control your Raspberry Pi and Linux utilities.
- helps with setting up WiFi even if your credentials change after initial setup.
- gives your Pi virtual speakers, (and soon) microphones, and camera. That means, you can play audio on Pi without any audio hardware and hear the audio out of your phone/laptop speakers (virtual speakers). Same for mics and camera.
- lets you set up remote access (RPi Connect and VSCode Tunnel) using the GUI and configure different system/app settings, install Dockerized applications, etc.
Here's a quick example of installing a Dockerized app (e.g. Jupyter Notebook) in a few seconds:
It also offers a language agnostic API that you can communicate with from any programming language.
For example, with a few lines of code, you can show error messages or notifications on LCD screen, or get input from user with keypad (such as yes/no prompt), scan barcode, etc.
Here's an example in typescript.

Why should I care?
You can easily run this on your Raspberry Pi and make it portable and easier to use for self-hosting apps or development. Specially if your application requires audio, video, user interaction, sensor readings, etc.
If you are working on a code written on any programming language other than python and your program needs to interact with some hardware/UI, this would be a life saver.
We are not introducing our own OS. The app runs in user space and installs on the latest Raspberry Pi OS (with latest linux kernel 6.12.25).
Ubo app is fully open source and free. If you like it, please consider supporting our efforts by making code or coffee contributions.
Let's set it up. Is it hard?

Do you have MicroSD card and reader? Then no. All you need to do is to download the lite or full image from the release section under GitHub repo:
https://github.com/ubopod/ubo_app/release
To flash the image onto a MicroSD card, follow the steps here:
https://github.com/ubopod/ubo-image
You can follow the steps in the video below to use Ubo app right away:
You can also run the installer script under repo readme if you would like to install it on your existing OS.
One thing to note here is that not everything can be emulated in software. To use hardware specific features, such as working with sensors, infrared receiver/transmitter, etc you need to use Ubo pod or add your DIY hardware.
Vision
The vision for Ubo Project is to create a unified human computer interface. An everything app in a sense where users can easily interact with computers through simplified multi-modal UX.
We are working to bring control through natural languages through LLMs and Ubo MCP server.
We would love to be able to do (almost) everything on-device and offline.
What makes this unique
I would say this deserves a separate post since there's a lot to say on this topic.
The underlying software architecture implements a centralized state store with a Redux-based message bus that connects services, processes, and user interfaces. The system follows reactive and event-driven design patterns.
The diagram below shows the high-level block diagram of the system architecture.

.png)
 4 months ago
                                19
                        4 months ago
                                19
                     
  

