Beryllium OS, a unix-like operating system for CircuitPython powered microcontrollers. (Formerly known as ljinux)
GPL-3.0 License
A unix-like operating system for CircuitPython powered microcontrollers. (Formerly known as ljinux) Important notes: This project is still in it's early developement! The kernel API is undergoing massive breaking changes every day. This project is NOT a linux distribution. This project is NOT compatible with any linux code / binaries.
We also now have a discord server! If you need support or want to hang out, feel free to join in!
We also work with Github Discussions.
Runs on CircuitPython 9.0.X, 9.1.X and 9.2.X. Currently the supported boards are:
Espressif:
Raspberry Pi:
Nordic:
SAMD:
Installation from windows using scripts is only supported through WSL. Though, if you are windows user, this project really isn't for you. Linux and MacOS will work much better.
Most of what you need to use your board is already included with the stock installation. (Whatever drivers are implemented, are preloaded) However it's possible to install 3rd party packages using the Beryllium OS' package manager JPKG. You will have to install them seperately through the jpkg package manager. You can find beryllium packages in the jpkg github topic.
To connect to the board it's recommended to use Putty for Windows and Tio for Linux/MacOS. A console that works with ANSI escape commands is REQUIRED (aka, not arduino ide).
For Putty, select connection type to be Serial, select the port to be COMX where X is the number of the serial port allocated by the board, and set the speed/baudrate to 115200. (You can find which com port is allocated from within the Device Manager, it usually is COM3 or COM4)
For Tio if you are on linux, you need to be in the dialout or uucp user group and to connect, run: tio /dev/ttyACM0 If you are on a Mac instead, run: ls /dev/tty.usb* to find the device name, and connect to it by running: tio /dev/tty.usb<Device name here> To disconnect, press Ctrl + t, q. To be added to the dialout group, run sudo usermod -a -G dialout <your username here> and restart.
Wi-Fi boards by default start a Wi-Fi hotspot by default and a telnet server. The default wifi credentials are: beryllium-ap/CHANGEME WIFI PASSWORD and can be changed from &/settings.toml The default hotspot IP is 192.168.4.1.
https://github.com/beryllium-org/OS/blob/main/Manual.txt
https://gist.github.com/fnky/458719343aabd01cfb17a3a4f7296797 https://en.wikipedia.org/wiki/ANSI_escape_code https://github.com/todbot/circuitpython-tricks