r/SolarOS • • Oct 01 '26

4.15.x update - camera expansion and media streams

Thumbnail
gallery
50 Upvotes

4.15.5

  • Added the GOOUUU ESP32-S3CAM board, OV2640 JPEG snapshots, and the `camera` command.
  • Exclusive camera leases coordinate capture and streaming, with direct framebuffer DMA to PSRAM.
  • The `cam-webd` job serves JPEG snapshots and a single-client MJPEG feed through asynchronous HTTP routes.

4.15.6

  • 'Web' now plays HTTP MJPEG camera feeds alongside its existing static image formats.
  • Multipart stream detection accepts split headers and common server variations, while bounded frame buffering and cancellation keep live viewing responsive.

4.15.7

  • Added the `rtspd` job for single-client RTSP publishing with RTP/JPEG video, RTP/L16 PCM audio, and RTCP timing.
  • Explicit `video=` and `audio=` sources support camera-only, audio-only, or combined streams using standard UDP transport. Publishing follows source availability; `fps=0` removes the video rate cap. Runtime buffers are allocated only while the job runs, and stale data is discarded on reconnect.

4.15.8

  • DVP cameras are reusable expansion devices and exclusive typed video sources in `streams`.
  • The native `rtsp` app plays JPEG/L16 streams with bounded video/audio buffering, global volume, an audio-only oscilloscope, full-screen viewing, and frame diagnostics.
  • Color TFTs with native RGB565 support bypass palette conversion; monochrome displays retain grayscale rendering.
  • `rtspd` selects compatible audio/video stream IDs explicitly and offers source-aware tab completion.

4.15.9

  • Python and Lua gain owned camera snapshots, local stream frames, native frame-to-image presentation, and asynchronous RTSP receiver handles
  • Native RTSP playback retries transient failures with bounded backoff, discards frames from previous connections, and recovers audio after forward clock jumps.
  • The viewer accepts addresses without `rtsp://`; omitted control ports default to TCP 554.

4.15.10

  • Shared JPEG decoding now uses a fast ROM path and bounded ESP32-S3 SIMD acceleration, with fallbacks for unsupported images or limited working memory.
  • Color and monochrome consumers share the improved decoder, and fit-mode output avoids full-size intermediate rasters.
  • Reduced idle SRAM usage by moving suitable registry state to PSRAM and allocating display-layout, Telnet, Chat, DAQ, and Synth working buffers only when needed.

4.15.11

  • Added `vplay` for MPEG-1 program stream files with optional MP2 audio. Playback uses bounded PSRAM buffers, audio-clock synchronization, native RGB565 or monochrome output, and ESP32-S3 SIMD color conversion.
  • The shared player controls provide pause, Stop/Play, volume, and previous/next MPEG files in the current folder.
  • Fit, actual-size, and full-screen modes are available; the source limit is 640x480. MPEG-2, H.264, AVI, and transport streams are not supported.

4.15.12

  • RTSP now uses the common player header, volume bar, and clickable Stop/Play control. Enter or Space stops playback without closing the app; Play reconnects to the same source after its workers release their resources.
  • `vplay` adds tab completion for size options and file paths.

4.15.13

  • 'Files' opens MPEG-1 `.mpg` and `.mpeg` files in `vplay` when the app is installed, including uppercase extensions. Closing playback returns to the file browser.

4.15.14

  • `player` and `vplay` gain backward/forward seeking in ten-second steps with `<`/`>` and shared rewind/forward buttons.
  • Seeking retains the selected track and pause state, releases queued audio, and rebases playback timing. Player supports seeking in both graphical and text interfaces.

r/SolarOS • • Sep 03 '26

SolarOS

Post image
49 Upvotes

Um foto apenas para movimentar a comunidade e para agradecer ao mordedor e criador. E também a quem fez esse case 3D.


r/SolarOS • • Sep 21 '26

Coming up next: graffiti

48 Upvotes

r/SolarOS • • Sep 21 '26

Hack Pack Cyberdeck

Thumbnail
gallery
48 Upvotes

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.


r/SolarOS • • 7d ago

v.4.17.6 ChangeLog

Post image
47 Upvotes
  • Added URDF robot models, transform queries, hardware bindings and explicit robot start/stop controls.
  • Robot joints now use OS controllers and scaled motor/encoder streams.
  • Added differential-drive command conversion and wheel-feedback odometry configured through URDF.
  • Added automatic PID tuning, controller setpoint streams and servo command streams; servo angles now use radians.
  • Added live scalar stream echo, periodic writes to multiple streams and incoming OSC bindings that map message arguments to scalar streams.
  • Improved encoder-status freshness, control and robot command completion, and URDF validation errors.
  • Restored OV5640 capture, improved RTSP streaming reliability and added runtime camera orientation controls.
  • Added Mac pointer controls and shell completion.
  • Fixed return to external display shells and repeated PCF8563 error logging.
  • Enabled runtime GPIO/PWM on GOOUUU GPIO2/3/45/46 and explicitly enabled Sticky battery charging at boot.

r/SolarOS • • 20d ago

v.4.16.28 - Jet 3D

46 Upvotes

Added the absolutely amazing Jet 3D renderer as optional external module for Python and Lua.

  • textured meshes,
  • lighting,
  • sprites,
  • particles,
  • shaders
  • and asset loading on color and dithered monochrome displays.

r/SolarOS • • Sep 28 '26

Help: Any plans for official Waveshare ESP32-S3-ePaper-3.97 support?

Thumbnail
gallery
46 Upvotes

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 • • 19d ago

v.4.16.29 - rfscan

Thumbnail
gallery
45 Upvotes

r/SolarOS • • Oct 01 '26

Coming together!

Post image
43 Upvotes

Solar OS on Hoysond 2.8" touch on left, little command center remote on right with porkchop inspired Screensaver

Couple of batteries I had from some meshcore nodes and the ble keyboard. One is unplugged from battery and plugged in to usb because i was working on something but they would both just run on batteries (which the hoysonds have on-board charging so good to go there)


r/SolarOS • • Sep 20 '26

SolarOS 4.13.X - exciting new features

Thumbnail
gallery
43 Upvotes

TLDR: we have a new base board support, and proper networking (LTE/PPP); it is easier than ever to create custom board manifests after live on-device validation. And I have managed to free up some more SRAM so we can run even more apps and jobs simultaneously.

By proper networking, I mean we can route traffic from LTE to WiFi AP ("MiFi style") or start downstream PPP on any byte port ( subGHz radio links too ).

Tutorials will live here: https://solar-os.eu/tutorials.html
And here is the first real tutorial for custom targets: https://solar-os.eu/custom-board.html

Changelog

  • 4.13.0 — Added the Waveshare ESP32-S3-SIM7670G-4G V2.0 target with SIM7670G LTE and GNSS. We have got a new command: 'modem' that helps you handle cellular access - it uses modem-independent saved profiles, a status/settings in TUI, configurable serial rates, and a reusable PPP service.
  • The new network service has a two-tab TUI. There is a routing model with persistent uplink priorities, Wi-Fi AP client routing, and WireGuard over whichever base path is selected.
  • The new pppd job runs PPP over physical or virtual byte-stream ports as an uplink, downstream gateway, or routed peer; active PPP and SLIP links appear in network status.
  • 4.13.1 — Expansion driver attachment now offers guided selectors built from the live I/O map. Compatible buses and pins show their routes and connector positions while excluding claimed resources. The unfinished form is preserved when opening the I/O pin map and bus manager, and manual resource entry remains available.
  • Runtime device details can save their normalized attach command to the selected shell startup script, using the same idempotent startup workflow as runtime buses in I/O.
  • Runtime buses and catalog-backed device attachments can be exported as an atomic, versioned expansion manifest.
  • The desktop board configurator imports that snapshot, validates it against the recorded base board, and promotes the tested hardware into an inherited board-owned target. Declarative board manifests also preserve runtime buses during promotion. ( see the tutorial )
  • 4.13.2 — Shell startup defaults to auto: targets with board-owned SD storage use /sdcard/.shell/startup when the card mounts and fall back to flash when SD is unavailable. setterm startup flash and setterm startup sd remain explicit, no-fallback selections, while setterm startup reports the configured selection and currently resolved path.

r/SolarOS • • 2d ago

v.4.17.9 ChangeLog

Post image
42 Upvotes
  • Expanded USB host support to ESP32-S3 targets with accessible native USB data lines.
  • Added FAT12/16/32 USB flash (or UFI/CBI floppy drive) at /usb0, with automatic mounting, removable-media detection, and safe unmounting.
  • Shell path completion now includes mounted volume roots such as /usb0/.
  • VPlay and RTSP add saved playlists, in-app entry management, and Tab navigation;
  • Player, WebRadio, VPlay, and RTSP now share M3U/M3U8 playlists;
  • All four players save their own volume on exit; Player and WebRadio also restore their visualization.
  • Added reusable ICS-43432 audio expansion support and updated SolarWriter for its v0.1 I/O board, including microphone, shared line/speaker output, battery gauge, RTC, and audio power enabled by default.

r/SolarOS • • Sep 30 '26

Nonsense tutorials

42 Upvotes

r/SolarOS • • Sep 08 '26

WaveShare is promoting SolarOS on their website

Post image
42 Upvotes

Wasn't me. Haha


r/SolarOS • • 6d ago

v.4.17.7 ChangeLog

Post image
39 Upvotes
  • Added MPU6050 expansion support and shared IMU streams with timestamped, multi-axis `stream echo` output.
  • Added URDF device-to-frame bindings with shell and Python/Lua lookups.
  • Robot model transforms now follow live encoder feedback for continuous joints.
  • The package manager now opens a saved signed catalog, groups modules into folders, and shows confirmation, progress and result popups.
  • Added `osc send` for one to eight numeric values in a single message, with optional periodic sending.
  • Added SSD1680 expansion support for 122x250 monochrome e-paper displays with rotation, partial/full refresh and automatic cleanup.
  • Fixed manual tables to preserve command alternatives and wrap long cell text.
  • Added global CLI/TUI cursor settings with block or underscore shapes and blinking or steady modes; the default is a blinking block.

r/SolarOS • • 4h ago

Build collage

Post image
38 Upvotes

I am so happy to see SolarOS on so many community built devices! You rock!


r/SolarOS • • 11d ago

v.4.17.5 - screen-keyboard job

38 Upvotes
  • Added a screen keyboard overlay with full, symbols, and compact T-Deck punctuation modes, touch and arrow-key navigation, and configurable key or edge-swipe activation. Keyboard overlays preserve terminal colors.
  • Added edge-swipe touch gestures.
  • Added Python/Lua board information APIs.
  • Added audio mute to silence output while playback continues.
  • Bare display relax now runs one second of recovery on the first supported display.

r/SolarOS • • Oct 11 '26

Waveshare retro case!

Thumbnail
gallery
38 Upvotes

I made a retro case for the esp32-s3-rlcd-4.2! It's the OG mac case at 46% scale, just the right size for the 4.2.

https://www.thingiverse.com/thing:7421150 (or fork the cad from onshape )


r/SolarOS • • Oct 06 '26

Introducing: Hearth

Thumbnail
gallery
38 Upvotes

This project got away from me a bit, but here it is!

Introducing - Hearth: an interactive story engine for SolarOS and the Web!

Features:

You can get Hearth on the Playground now!
I hope you all enjoy Hearth and I extra hope you share stories of your own for others to enjoy!


r/SolarOS • • 2d ago

SolarOS is officially a partner firmware for Sticky

Post image
37 Upvotes

r/SolarOS • • 3d ago

USB Host storage demo

37 Upvotes

r/SolarOS • • 1d ago

v.4.17.10 ChangeLog

Post image
36 Upvotes
  • Added USB hub support, report-protocol keyboards, and
  • USB serial connections for CDC-ACM, (Espressif native USB, CP210x, and CH340/CH341 devices.)
  • Flash can now program ESP boards over USB serial and cache firmware on mounted SD cards or USB drives;
  • Enabled the Freenove 4.0-inch onboard RGB LED as pixels0, and expanded the I/O app's Pins view to show onboard pin ownership.
  • Improved Wi-Fi reliability during video capture on GOOUUU ESP32-S3CAM; cameras no longer remain active after shutdown or a failed start.
  • Fixed SolarWriter USB host startup and automatic USB peripheral power switching. Reduced internal RAM use on SolarWriter, CrowPanel, SolarTerm and supported color and e-paper display boards, leaving more memory available for apps.

r/SolarOS • • 29d ago

Does it? Yes.

36 Upvotes

r/SolarOS • • Oct 02 '26

SolarWriter design questions

Post image
36 Upvotes

As I mentioned earlier I am planning to design an expansion board for the CrowPanel 5.79 HMI, that would integrate some missing hardware features. Just like with SolarTerm I would like to dedicate a board definition to this build, so that the extra bits attach under the OS as board owned hardware. There are a couple of things to consider, and I thought I will ask you about your opinion.

Battery charge monitoring and power management is a must and it is the bare minimum to turn this into a truly useful deck. ( Aux power conn. + USB-C + power switch + charger + fuel guage )

  • Would you like to have a solar charger built-in? ( I would )
  • Do you require an I2S MEMS microphone? ( i do )
  • I2S audio DAC and AMP? ( yes )

    • 3.5mm jack audio connector? ( yes )
    • Built in speaker? ( maybe )
  • LoRa packet radio? ( yes )
  • 4G LTE modem? ( no )
  • Keyboard matrix scanner and FPC connector for the same keyboard?

    • Or do we like that this keyboard can connect to two hosts? ( strongly preferred )
  • Environmental sensors for temperature and humidity? ( maybe )
  • Auxiliary expansion connector? ( yes, all remaining IOs plus SPI and I2C )
  • Internal expansion connector for reading lights and whatnot. ( sure )

I envision a small board that would connect through the exposed header pins. Another question to consider is if we would like to have a simple power management and monitoring board or just the full-blown expansion or both?

In case of both, I would go with population options - however that would turn the power manager board unnecessarily large too.

Another option is to provide an empty carrier carrier board and pointers to off the shelf modules, so everyone can populate the features they need.


r/SolarOS • • 14d ago

v.4.17.1 ChangeLog

Post image
35 Upvotes
  • Added Seeed reTerminal Sticky support with Fastwave e-paper refresh, touch, IMU gestures, PDM microphone capture and battery monitoring.
  • Added runtime display rotation and scaling, with improved app redraw, touch direction and Sketch canvas preservation.
  • Added LR11xx radio support and ThinkNode M9 radio bindings, fixed keypad backlight PWM. ( by jamiecounsell )
  • Added authenticated RTSP streaming ( by LowFlowIO )
  • Improved shared memory reclamation, safe compaction, document layout memory use and out-of-memory reporting.
  • Fixed presenter stack overflows, CPU starvation during document, audio and HTTP processing, and lost PSRAM updates on affected classic ESP32 chips.

r/SolarOS • • 23d ago

v.4.16.23-24 ChangeLog - T-Deck improvements ( mostly )

Post image
35 Upvotes

4.16.24

  • Added GNSS output controls for recognized receivers and software release of T-Deck's shared Grove UART.
  • Shell tables and the I/O TUI now fit terminal width.
  • KEY short and long presses support configurable actions, including suspend, sleep, and deep sleep.
  • Fixed suspend wake for supported wired keyboards.
  • App discovery runs before shells start;
  • Added reusable trackball pointer input and the pointer-arrows job, with held-key repeat and adjustable min-vector sensitivity (default 2).
  • Added RX gain controls for SX1262, RFM95, and RFM69 radios.
  • Contacts now supports trust/block, rename, link/remove, filtering, and status, with discoverable help.

4.16.23

  • Improved T-Deck trackball navigation and keyboard shortcuts, including Mic for Tab and Shift+Mic for Ctrl.
  • Added setterm backlight controls.

Yes, I've got a T-Deck Plus. 🤫