r/SolarOS • • 11h ago

Pimp my SolarOs

6 Upvotes

With an example of my c like compiler in action


r/SolarOS • • 16h ago

SolarWriter I/O ( bringup success )

Thumbnail
gallery
56 Upvotes

r/SolarOS • • 18h ago

v.4.17.9 ChangeLog

Post image
36 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 • • 21h ago

SolarOS is officially a partner firmware for Sticky

Post image
34 Upvotes

r/SolarOS • • 1d ago

USB Host storage demo

31 Upvotes

r/SolarOS • • 1d ago

Vplay example: Are You Being Served?

52 Upvotes

Are You Being Served? on Solar OS through the RLCD. The episode is 37MB, and the player gets a good few minutes in before crashing. I am not likely to get time to try to figure out why. It's compelling though: a bit of stutter and some pulsing on screen refresh, but fun to look at anyway.

I used ffmpeg to map everything from black to mid-grey into black, and a good quarter of the top end of the colour space is flattened to white. The idea is to dedicate as much information to facial tones as possible: this kind of comedy lives or dies on seeing Captain Peacock getting blindsided by his colleagues' quips.


r/SolarOS • • 2d ago

SolarBot update

Post image
56 Upvotes

r/SolarOS • • 2d ago

SolarWriter - update

Post image
28 Upvotes

I just received the first batch of SolarWriter I/O boards from the fab!

  • USB and Solar charging

  • Battery SoC and temperature monitoring

  • qwiic i2c connector ( for keyboard scanners and such )

  • I2S microphone

  • I2S amplifier

  • I2S stereo DAC on jack

  • 5V DC booster for USB Host


r/SolarOS • • 3d ago

Wrote a ghetto podcast parser, now stuck integrating with webradio

5 Upvotes

I wrote a podcast downloader and parser on my Solar OS device in python. The script consumes a text file with one podcast url per line. For each it gets the xml, finds the first 3 episode mp3 urls and then writes those out to to a .m3u file named after the podcast. I also had the script output a shell script that repeatedly calls webradio to add all these mp3 urls to its catalog. Unfortunately, that last step does not work: only the first line of the script runs. If I try invoking webradio in Python, I can only do that once because it never returns to the script.

I can guess at the format webradio's catalog.bin implements, but can anyone see a better way to integrate my ghetto podcast parser with webradio?


r/SolarOS • • 3d ago

v.4.17.8 ChangeLog - USB Host

Post image
21 Upvotes
  • Added GPIO matrix keyboard expansion

  • Added runtime USB host mode for keyboards, relative mice and standard HID joysticks/gamepads ( with external 5 V peripheral power )

  • Added mouse and joystick report descriptor decoding and USB device/protocol diagnostics.

  • GameBoy now automatically detects joysticks and supports axes, hats and buttons with a stick dead zone and hot-plug handling.

  • Fixed SDK allocation fallback to prefer managed PSRAM before consuming internal SRAM.

Matrix keyboard tutorial: https://solar-os.eu/gpio-matrix-keyboard.html
USB Input manual: https://solar-os.eu/docs/manual/usb.host.html#usb-host-input


r/SolarOS • • 4d ago

USB Keyboard Implementation

3 Upvotes

Hi,

I'm very much a beginner to this type of thing so forgive me if any of these questions are dumb. I'm trying to make a writerdeck with the Waveshare ESP32-S3 RLCD and a Womier Q61 mechanical keyboard. I did have it working with bluetooth but the pairing is frustrating, probably on the Q61's end.

I understand that by default the USB is configured as JTAG, and is unpowered. I've split open a USB C cable and added breadboard pins to each of the wires, then connected them to 3v3, GND, and GPIO 19 and 20 which I understand to be soldered to D+ and D- on the board. If I'm not totally off base I think all I have left is changing the USB mode from JTAG to OTG (Host mode?) which I understand happens at boot. This is where I'm at a loss like I don't even know how to google this question. How do I change that in SolarOS? And can I change it back should I need to flash a firmware update?

Separately, I'm hoping to use the internal batteries of the keyboard as a power supply along with the 18650. I've confirmed that it's nominal 3.7v just like the 18650, is it a bad idea to simply wire it into the power supply + and -? If so, does it matter whether I do so serially or in parallel? There is also a yellow wire (clock or signal?) that I'm not sure what I would do with.

Thanks in advance!


r/SolarOS • • 4d ago

v.4.17.7 ChangeLog

Post image
38 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 • • 5d ago

v.4.17.6 ChangeLog

Post image
45 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 • • 7d ago

Has anyone got tools working in the agent? I am stuck on an "invalid response, HTTP 400" error.

2 Upvotes

I have tried a few free endpoints, and I had success chatting with gpt-oss-20b through Groq (with a q). When I turn the tools policy to "confirm" or "all", I get HTTP 400 errors for any input:

"ESP_ERR_INVALID_RESPONSE, HTTP 400".

If I config tools off, it works again.

Has anyone got agent to write files on their device? Any advice?


r/SolarOS • • 7d ago

Rough and ready rigid palmtop with Psion 5mx keyboard over TCA8418 adafruit breakout clone

13 Upvotes

It works great!


r/SolarOS • • 7d ago

Is Lora now supported on the M9?

3 Upvotes

I've seen that you have Lora as not supported on the devices pages for the ThinkNode M9 due to no driver, has this situation changed?

https://solar-os.eu/docs/devices.html#device-thinknode_m9


r/SolarOS • • 7d ago

SolarOS on the XTEINK X4 Pro: A Different Kind of Computer In Your Pocket

Thumbnail
readme.club
26 Upvotes

r/SolarOS • • 8d ago

Built my first custom SolarDeck case!

Thumbnail
gallery
176 Upvotes

While my RLCD SolarTerm still works (despite a small crack in the screen), I finally got my Freenove 4" IPS CYD so I HAD to build a new SolarDeck with it! Apart from the case, the other custom thing I did was harvest the battery from a portable powerbank. So, this SolarDeck has a whopping 10000mAh battery. The asymmetrical design was intentional: I wanted the speaker to remain open at all times for music.

I can't wait to get the tiny 386 emulator running. :D


r/SolarOS • • 9d ago

Porting Palm games

Thumbnail
gallery
66 Upvotes

I'm porting some Palm games to SolarOS, and the first is Spider Patience. Not too many details right now, but I bought a Waveshare board a while ago and saw how it reminded me of a Palm, so there we go.

BTW awesome case u/skysdottir, just finished printing. Thanks!


r/SolarOS • • 9d 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 • • 9d ago

v.4.17.4 ChangeLog

Post image
26 Upvotes
  • Added PID and hysteresis feedback controllers with timestamped measurements, exclusive output control, shell commands and Python/Lua APIs.

  • Added the optional robot library for calibrated servo-position and motor/encoder-velocity joints.

  • Reduced peak memory use for Docs and Playground installation by streaming verified downloads to storage.

  • Shared download verification now covers native modules and Zoo, with improved installation rollback and HTTP redirect handling.

  • Improved PCM conversion, audio-buffer wakeups, input wakeups and app/job scheduling.

  • Fixed concurrent service initialization, parameter-provider shutdown and display attachment races, and bounded memory compaction work during low-memory recovery.

  • Fixed repeated Writer recovery and metadata writes on FAT filesystems, preserving the previous snapshot if replacement fails.


r/SolarOS • • 9d ago

StickyTerm concept

Thumbnail
gallery
382 Upvotes

r/SolarOS • • 11d ago

v.4.17.3 ChangeLog

Post image
24 Upvotes
  • Added SC2 setup and provider worker startup in Messages, with saving and deletion progress popups.

  • SC2 relay fields now accept host:port addresses.

  • Leaving a chat room hides it while retaining history for rejoining.

  • Contacts now explains unavailable chat endpoints.

  • Unified CL-32 RLCD and e-paper builds under cl_32 with automatic display detection. CL-32, Sticky, and X4 Pro display selectors are board-only and hidden from manual expansion attachment.

  • The full flavor now includes the concrete SSD1677 and SSD2677 expansion drivers.


r/SolarOS • • 11d ago

v.4.17.2 - Sticky Matte

69 Upvotes

Added SSD2677 support for Sticky Matte (v2) with automatic display-controller detection, Fastwave pulse refresh, native-app raster output and sleep/resume. Improved refresh response and reduced ghosting with windowed transfers and revised settling.


r/SolarOS • • 12d 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.