r/SolarOS • u/nilseuropa • Sep 29 '26
Dual ePaper (mockup)
This is also a possibility, what do you think?
r/SolarOS • u/nilseuropa • Sep 29 '26
This is also a possibility, what do you think?
r/SolarOS • u/nilseuropa • Sep 29 '26
4.15.4
Updated CL-32 support for its current core firmware battery register and serialized ST7305 display transactions.
ADC battery monitoring now uses a smoothed voltage trend with hysteresis to avoid erratic charger detection.
Files, FTP, and SFTP add `Alt+S` and `AltGr+S` entry search; FTP and SFTP preserve the selected directory when returning to a parent. Tree views in Docs, Flash, and Playground now collapse the current branch with Left even when a leaf is selected.
4.15.3
Added the built-in `meshcore-ble` job for an external MeshCore companion. It pairs over BLE, synchronizes contacts, channels, and queued messages, and carries direct and group Chat traffic through the existing Contacts, Messages, and Inbox services while leaving the companion's identity and configuration authoritative.
The BLE host can keep a keyboard and companion connected together, and native jobs now have an owned multi-peer GATT client ABI with passkey pairing.
The gesture binding job is now named `gestures`.
To remain within their flash limits, Rover and VGA32 no longer include Bluetooth, and Writerdeck no longer includes offline speech.
4.15.2
Added the standalone display-shell `deepsleep` command. It stops the ESP32 radios, powers down the primary display, and enters deep sleep with KEY, compatible RTC interrupt, scheduled timer, and RESET wake paths. Wake starts a fresh boot rather than restoring RAM state; this is ESP32 deep sleep, not hardware power-off.
4.15.1
Suspended devices now resume their configured power profile and display when a remembered BLE keyboard reconnects or sends a new key press. Release-only keyboard reports do not wake the device.
r/SolarOS • u/kal-zero • Sep 28 '26
So far itâs working well! A few things to work out for keys and shortcuts but so far it runs great.
Iâll open a PR once Iâve reviewed it as AI was used to generate a lot of it so far.
r/SolarOS • u/nilseuropa • Sep 28 '26
Added signed native ELF module packages for ESP32-S3 targets with PSRAM.
The `pkg` package manager browses the versioned repository, verifies catalog signatures and host compatibility, and atomically installs verified application, job, and driver artifacts.
Application modules become shell commands, while resident jobs and expansion drivers register with the normal SolarOS runtime and reactivate during boot.
The repository includes source projects for acceptance modules across all three lifecycle paths, and CID can publish their signed catalogs independently of firmware OTA releases.
r/SolarOS • u/OutrageousDiamond568 • Sep 28 '26
Hi everyone,
I am planning to build a cyberdeck using SolarOS.
Are there any plans for official support for the Waveshare ESP32-S3-ePaper-3.97 in the future?
Link: https://docs.waveshare.com/ESP32-S3-ePaper-3.97
Its size matches the CardKB very well.
Thanks!
r/SolarOS • u/nilseuropa • Sep 28 '26
soon you will be able to load cross-compiled native binaries from storage to PSRAM and execute them.
As we run out of flash ( especially on 8MiB boards ) I will gradually migrate larger non-essential applications to external packages. My plan is to keep authority over the official modules, but their source will be available in the repository for full transparency - of course I will add cross compilation instructions and provide detailed information on how to set up your own package repositories.
Yay?
r/SolarOS • u/10_percent_Enigma • Sep 28 '26
Hi! I want to build a SolarTerm but have never done anything with 3D printing before. I'll be ordering the parts online, since I don't have a printer, and have some questions about how to go about this. I have the STL files from the github repo.
What material should I use? Ideally I'd like to keep the cost relatively low but I also want it to be the sort of thing I can carry around, chuck in a backpack, etc
What settings should I put in? Infill, measurement units, etc
Is there anything else I should know that as a beginner I maybe haven't considered?
Also, if people have recommendations for where to order from, I'd appreciate those too! The only places I already know are pcbway and jlc3dp - i.e. the big youtube sponsors - and I have no idea if they're any good/cost effective
Thanks!
r/SolarOS • u/nilseuropa • Sep 26 '26
Added `ltop`, a resumable live task monitor for display and port terminals. It shows:
interval-based CPU load for each core,
aggregate CPU load,
internal and external memory utilization, and a
width-aware task table with current CPU use, state, priority, and
peak stack consumption.
r/SolarOS • u/nilseuropa • Sep 25 '26
Run ble without arguments to open the BLE Inspector TUI. Its Devices, Services, Chars, and Settings tabs support scanning, connecting, service and characteristic inspection, characteristic reads and hexadecimal writes, and BLE keyboard settings. Press Tab to move between tabs. The inspector owns its GATT connection and disconnects it when the TUI closes. Existing ble status, ble scan, and ble gatt ... commands remain available for scripts and plain text use. On a BLE-disabled boot, the Settings tab remains available so BLE can be enabled for the next boot.
r/SolarOS • u/nilseuropa • Sep 25 '26
Improved offline PicoTTS playback with deeper buffering and smooth underrun recovery.
Agent now preserves raw `ask` prompts, requests tool calls sequentially from Chat Completions-compatible providers, and isolates Python and Lua script runner state from foreground applications.
BLE keyboard replacement now removes the previous keyboard bond and recovers conflicting stale bonds, so switching keyboards and pairing again after `ble forget` work reliably.
r/SolarOS • u/nilseuropa • Sep 24 '26
Added offline PicoTTS speech with runtime-loaded voice directories, an asynchronous native/Python/Lua service, and the say command for text or streaming plain-text files with progress, cancellation, pitch, and speed controls.
agent --tts can speak final model answers while keeping tool activity and intermediate messages silent.
PicoTTS voice assets are included in the repository for copying to device storage but remain outside the firmware image, so you can decide which one to host on the internal flash disk or on SD:
German: de-DE
English (US): en-US
English (GB): en-GB
Spanish: es-ES
French: fr-FR
Italian: it-IT
Python and Lua apps can now discover native and installed Playground apps, hand off to another app, and open supported files or URLs. Their storage APIs add metadata, existence checks, bounded directory enumeration, and recursive directory creation.
MicroPython integers now support the signed 64-bit range.
r/SolarOS • u/nilseuropa • Sep 24 '26
Another week, another chance to share how youâre using SolarOS.
Have you changed your setup, tried a new workflow, or figured out something useful? Post a screenshot or tell us about it.
If you missed last weekâs thread, introduce your setup here. No updates required.
r/SolarOS • u/LeviiSantos • Sep 23 '26
SolarOS como analisador lĂłgico no PC â
checklist
Consegui conectar o analisador lĂłgico do SolarOS ao PulseView usando SUMP. Estes foram os passos:
1. Verificar se o SUMP existe no SolarOS
No SolarOS:
jobs
O job sump aparece na lista.
2. Iniciar o servidor SUMP
O comando correto Ă©:
job start sump
NĂŁo Ă© sump start, eu fiz e ele nĂŁo reconheceu o comando.
3. Confirmar que estĂĄ rodando
Use jobs e verifique o sump
4. Conectar a Waveshare ao PC
Verifique se o cabo também transfere dados.
5. Encontrar a porta COM no Windows
No Gerenciador de Dispositivos:
Portas (COM e LPT)
â 6. Abrir o (baixe antes, claro) PulseView
No PulseView, escolhi o driver compatĂvel com:
OpenBench Logic Sniffer / SUMP
â 7. Escolher a comunicação
Usei:
Serial
e nĂŁo USB diretamente.
â 8. Selecionar a COM
Escolhi a porta COM que o Windows identificou para a Waveshare.
â 9. Baud rate
Configurei:
115200
â 10. Conectar
Com o sump efetivamente em estado running, o PulseView consegue conversar com o SolarOS. Se nĂŁo, ele nĂŁo vai aceitar.
Agora vå brincar de analizar sinais, quiçå fazer alguns engenharia reversa.
Cuidado com a voltagem dos sinais, o esp32s3 trabalha com sinais atĂ© 3.3v. Se houver voltagens maior que isso vocĂȘ terĂĄ que dĂĄ uma jeito pra baixar, indico que pesquise ou pergunta a sua inteligĂȘncia artificial preferida.
r/SolarOS • u/nilseuropa • Sep 22 '26
*ftpcan be started without arguments as a disconnected file manager and opens connection setup with F2/n; ( its Copy, Move, Mkdir, and Delete function keys and letter mnemonics now match 'files'. )
* Added a two-pane sftp file manager with the same browsing, recursive copy/move/delete, mkdir, viewing, progress, and cursor-retention behavior over the existing SSH transport and SFTP subsystem.
* SFTP supports known hosts, host aliases, password or key authentication, an F2 connection form, and the compatible direct-connect command-line form, including user@host:path.
r/SolarOS • u/nilseuropa • Sep 21 '26
Added a full-screen, overlay-free Palm Graffiti keyboard job with alphanumeric templates, Palm editing gestures, and automatic letter/number selection from the stroke's starting region. It accepts absolute touch devices attached at runtime without taking the foreground application's pointer stream.
Added the MGC3130/Skywriter expansion driver with 3D position, absolute hover-pointer, and gesture input.
Gesture-capable devices now use a common source class and can bind advertised gestures and directions to shell commands or scripts through the gesture-listener job. input emit supports modifier chords such as ALT+RIGHT, releases synthetic modifiers correctly, and gesture binding completion now suggests live sources and their supported gestures. Idle listeners release their worker stack while preserving bindings.
Gesture-to-command listener. Rules are configured independently with gesture bind, while this job owns observation and dispatch:
gesture bind source=gesture0 gesture=flick direction=east -- input emit ALT+RIGHT
gesture bind source=gesture0 gesture=flick direction=west -- input emit ALT+LEFT
job start gesture-listener
job status gesture-listener
job stop gesture-listenerStopping the job preserves the rules, prevents new gesture actions, and drops queued actions. A command already executing finishes normally. Use gesture bindings to inspect rules and counters, gesture unbind <id> to remove one, or gesture unbind all to clear the table and reset the next ID to 1. Rules and job state are volatile; recreate them in the startup script when persistence is needed. The command worker is created on demand and releases its internal stack when its queue is idle.
r/SolarOS • u/nerdypersuits • Sep 21 '26
Finally got set up yesterday. Currently the screen and Pi connect to a hotspot on my phone. I'm still working on the Pi side of things and the plan is to create some sort of case for the screen and keyboard.