Skip to content

Releases: PastorCatto/PURR-OS-ESP32

PURR OS Developer Preview 8

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 28 Jul 19:22

This release packs a few new features, fixes, and new bugs (they get squashed eventually)

Heres the rundown

  • Changed our compiler flag (this caused a 3.3x performance increase)
  • added async buffer to the ST7789 driver (this applies to all devices with this display)
  • added a New UI to the mix (Mochi) iOS style design, has a few bugs and is recommended for the ESP32-S3 or stronger (ESP32 P4 Recommended)
  • added the ability to enable/disable modules with modulestrap, test run with a tdeck plus minimal build and saw 2x increase in overall performance (up to 5x compared to a full-feature build)
  • Added MagiDOS (MS-DOS 8086 interpreter. can run dos programs, C is mounted at /sdcard/dos)

And my favorite part of this release:

SPEED DEMON (aka Game mode)

Game mode unloads almost all modules of the system, allowing for a more High Performance mode that requires just a bit more power to run

Speed Demon does the following:

  • Unloads all User based Apps
  • Unloads the SYSTEM UI
  • Unloads Bluetooth and WiFi
  • drops the OS to a direct draw mode, and loads the chosen app
  • Can be enabled for any app with speed_demon=1
  • frees up all of Core 1 for maximum speed
  • can reload the whole system after an app is closed, resuming like usual.

WARNING FOR LUA SCRIPT

There will be a few changes in the next few weeks with LUA script, while i collaborate with a few others to enact a Lua Script Standard for ESP32, making scripts more Device/OS agnostic, making it even more portable and usable!

{5CFE403F-8C81-4537-ADB0-4EA6777E4745} {417E5519-707F-47BE-AC69-B49F081C6AE2} {00437AAB-08C7-43DA-BAFD-78A356197CAC} {7E27B8AA-1D63-4845-B08D-0BF22069F5BF} {D5526AB7-31F2-488D-A692-65F14BE0A304}

the source of the slowdowns

{33DA6B31-5F01-433B-B4E5-B9F7B45A976A}

Developer Preview 7 (or 7.1)

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 20 Jul 20:41

Developer Preview 7 (or 7.1, lol)

This is a proper release of Developer Preview 7

The reason for the last rushed update was due to issues with purrstrap, and users having issues compiling builds, this one is more of a proper tested, and refined update.

Confirmed Soak test of 13 hours stable. (T Deck Plus)

This release builds on top of the Rushed Release 7 prior, with the following:

  • Fixed Cupcake UI lag, changing the UI design seems to have an improvement, looking into it more
  • MSN has also added the new UI, same thing, seems like my design choice can be optimized more, might branch off the System UI into its own package (for custom launcher support)
    (The SystemUI was split in DP8)
  • Proximity Remote app support for bigger and smaller screens, and enabled for small/no display devices (was disabled)
  • MilkBottle Fixes (untested), should show up as an app in milkbar when connected to a heltec V3 or smaller display device (running PURR OS)

a Developer note, when compiling, please use ESP-IDF 5.3.5! (or 5.3.X) as we compile in Arduino libraries, and thats the latest with Arduino support, when a later release adds it back, the IDF version will be bumped to match

sidenote, this project is supported on Linux and Windows, as the first few Developer Preview releases were compiled on linux, and the last 3 releases have been compiled on Windows 11, and i switch back and forth between the two platforms.

PURR OS Developer Preview 7 (RUSHED RELEASE)

Choose a tag to compare

@PastorCatto PastorCatto released this 18 Jul 05:39

This release was a last minute thing and has NOT been soak tested, so i can not promise it wont crash, after 2 days of issues, and bugs being pointed out, i wanted to push this to get more feedback, as well as push a M5Stack Tab 5 release!

There will be a Second Developer Preview 7, with a more tested and debugged build!

There may be a delay with the next few updates while i deal with the forest fires in BC Canada, as well as some personal issues, bear with me, and any help is welcome with the project!

Big shoutout to @dmatking for helping get a proper tested build of the M5Stack Tab 5, as well as help with certian drivers!

This release brings a few bug fixes (after sending me on a loop for two whole days)

What this update covers:

  • a SPI race condition causing issues on the T Deck Plus (fixed)

  • a system driver recovery system, a misbehaving driver gets restarted when a crash is detected.

  • Purrstrap fixes, causing issues with compiling, those were fixed last minute

  • MSN fixes and additions (added icon support, and telemetry data, battery status etc, disabled for now, but its there, at least to read the data)

and my favourite part, Milkbar.

"where do kittens like to go after a long day? the milk bar!"

Milkbar is the UI app for remotely connecting to other PURR OS nodes(more that 2!), and running apps remotely, powered by ESP-NOW, with the ability to set a node as a "home base"

the concept idea is, you come home, and the nodes auto connect to each other, and your sending messages from that host node, your controlling it, running apps from it, a bit like Remote Desktop.

MSN out the gate has some support, its a work in progress, also need testers to see if meshcore works or is just broken (untested)

i do plan on expanding to Remote GPIO support, and a bunch more control in the future, but the main goal for now is meshtastic.

"ive seen those ESP32 powered drones, i do plan on adding support for that as more of a feature we can do, i think it would be funny as heck!"

I heard your complaints about build issues, please re-clone the repo and see if that helps, also open an issue if you have catastropic bugs!

PURR OS Developer Preview 6

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 14 Jul 20:45

This release is a big one, packing several new features!

To start, we have:

  • Proximity and Nearby! (these are yet to be named, still deciding) these handle the ESP-NOW connection between PURR OS devices, with message forwarding semi enabled, still a work in progress, devices connect for now!
  • MeshCore initial support (untested)
  • Staggered App launches to reduce the load on the system at boot time
  • CPU Core pinning fixes to help balance the tasks running on each core
  • ESP32-P4 Initial support (M5Stack Tab 5, all revisions)

This release brings initial support for the M5Stack Tab 5, i dont have the device to test myself, so expect the following

  • Touch
  • Display
  • SDCard
  • Lua Script Support

Thats about it here. everything is in testing and not yet built, will be a part of Developer Preview 7

Please use purrstrap to monitor the boot logs and to copy paste that in a github issue for me to check out!

as always, let me know about any issue you may have!

Thanks for stargazing!

wallpaper

PURR OS Developer Preview 5

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 12 Jul 17:39

Dev Discovery: There is an active race issue in this build and prior as well, where all user apps (P3 level) attempt to load at the same time as System apps (P2 Level), causing a race condition and hindering performance to a degree. with Developer Preview 6, first testing appears to be working a lot better across the board, and the OS appears more responsive, will continue to test! Thanks for Stargazing!

This release is a bit of a mixed bag full of updates, Here's what's changed since DP4:

  • Memory fixes (Moved some One-time boot services to PSRAM, moved LVGL to PSRAM, this freed the IRAM, 32k ->121K at first boot)
  • Added Proper Heltec V3 support, and support for small screens in general.
  • Added Proper OS shutdown support
  • investigated a DMA issue with the Display/LoRa/SDCard sharing the same SPI Bus and dropping frames (reduced Buffer from 38000 -> 32786, seemed to help a bit)
  • Updated Cupcake UI to newer style design (Lollipop) and made apps Fullscreen by default (the biggest changes are here)
  • increased the overall display buffer (LVGL) from 20000b to 80000b (this seemed to help performance by about 5%)
  • addressed issues with the LUA Script breaking SD and window calls, has been confirmed working with Lollipop UI

Developer Preview 5 should have a semi-noticeable performance increase, but there are still bugs that need to be worked out, like:

  • Meshtastic inconsistent connection (some messages drop, others stay up, it all depends, and also doesnt broadcast correctly, seems like some sleep issues happening as well, will look into)
    -The Cupcake/Lollipop UI breaking when 8+ apps are open simultaneously (open the recent apps menu and close the app thats currently open, system will recover)
    -no module control. (this leads to my next point)

Developer Preview 6 will add proper system module management to start/stop/disable everything other than core system functions.
Heres my plans that i have in mind for the next few releases

  • Add MeshCore Support
  • Add the ability to toggle and reboot between Meshtastic and MeshCore (co-existing)
  • Add Proximity support between PurrOS devices (utilizing ESP-NOW framework with our own handshake and proximity detection, and later on, encryption)
  • Add support for PurrOS devices to remotely control other PurrOS based devices, read messages, communicate with meshtastic/meshcore remotely as well as add LoRa support for more secure management.
  • Add proper ATAK support with android (Android Tactical Awareness Kit)
  • Add proper on-device storage encryption
  • Add a panic button/Dead Mans switch (the OS would then go into a locked down status and broadcast a heartbeat signal with GPS data in a set interval, prioritizing power efficiency and connectivity above all else)

This is a big one, and also....

BIG WARNING!

This release REQUIRES PSRAM! if your device isnt supported and does not have PSRAM, then please wait until Developer Preview 6!

CYD has not been tested.

Enjoy!
wallpaper

PURR OS Developer Preview 4

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 11 Jul 01:55

This update is mainly focused on getting Meshtastic working. heres the rundown

we got:
end to end encryption
direct messages
LongFast support (easiest part)
Known Node Memory
Custom Rooms (channels)
hop support (confirmed sees up to 4 hops)
randomized PURR-XXXXXXX identifier
automatic node discovery
more is planned, this is the main changes this update alone

This release also adds basic Heltec Support, and addresses some critical issues that have been present since 0.12
Display works now, and also basic launcher support

Developer Preview 5 is already in the works, and has already had a bunch of fixes, keep a tab while i get more done!

This is the Landmark update, now that everything is in a semi usable state, so youll be able to send and receive from Heltec V3 and Tdeck Plus, more devices planned

Full Changelog: DevPre3...DevPre4

PURR OS Developer Preview 3

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 10 Jul 06:55

This is more of a minwinwm hotfix update.....

who am i kidding, this is the MESHTASTIC update!

Thats right! Inital meshtastic support, and even comes up as a Heltec V3 and with a PURR-XXXXXXX Node name! and can see other nodes! (thats about it for now, actively working on fixes, those will be with developer preview 4)

we now use radiolib to get LoRa and meshtastic working, and with our own client for meshtastic, MeshChat (soon to be replaced by the MSN Messenger, Meshtastic Social Network!)

this update brings auto-run signed kernel extentions, if you dont have developer mode enabled, you arent running anything unless marked with a tag from me (nothing special, just a flag) but you can now call KITT directly! OR Enabling Developer mode in the settings app! reboot and the unsigned extensions should run!

Developer Preview 4 will focus more on the Cupcake UI (the mobile UI) and bringing meshtastic to a level of stability, then ill look at the offical release!

as always, reach out, and refer to the git commits for changelogs, theres always alot!

Developer Preview 4 will also focus on Heltec devices, and smaller screens, bringing the same uniform expierence to smaller screens!

PURR OS 1.0 Developer Preview 2

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 09 Jul 06:43

This one is a bit more loaded to the brim, this version now actually has working wifi, and bluetooth ( to a degree) and my favourite part....

LUA script Runner 2.0

This version brings more proper support for HID devices and now sees keyboards, and we have a working notepad as a demo app, and like with the 1.0 release, we support native basic lua script, as well as more custom scripts that call APIs.
with 2.1, we will be bringing in a version, treated as a kernel extention, and autoruns on boot from an SDCard, making it easier to write apps and scripts, and maybe even a maps app, who knows.

Developer preview will bring a new UI for even better performance, with a keyboard/mouse first UI to start, with more custom and adapted UIs

Heltec V3 is currently not supported as we dont have a UI for that device, if you wish to write a UI that handles those lone soldiers, open an issue and id be happy to reach out! sorry for the delays!

With Developer Preview 4, Heltec V3 support was brought in offically, we have a basic UI now!

see my vlog of the development and for updated features, and to see what im working on! https://www.youtube.com/@Pastorcatto
image
(services app on Minwinwm! Developer Preview 2)

PURR OS 1.0 Developer Preview 1

Pre-release

Choose a tag to compare

@PastorCatto PastorCatto released this 04 Jul 23:38

This release is very much UNSTABLE and untested.

This brings a pure IDF based build, powered by our own in-house kernel, drivers, window managers and UI options, with universal apps supported across all UIs, for a simpler and more streamlined expierence.

Developer Preview 2 already is in the works and has a bunch more features, so anything built against this version will be compatible, but with more features and goodies.

This build does not support multitasking yet, DP2 has that enabled, as well as better app management.

we've hit a point where now its just polishing everything and getting meshtastic support stable (Included in DP1)

any issues, please open an issue, and ill take a look when i can.

this build has known bugs for the following devices:
LilyGo T Deck/Plus (SDCard Inits before the slot initializes, already fixed in DP2)

thanks for waiting!

Note, Arduino support will be dropped in Developer Preview 2, to make room to support the ESP32-P4 series of devices (M5 Stack Tab5 is the main target, just gotta get myself one!)

PURR OS 0.11.0 (KITT 0.8.0) PRE-RELEASE DEV BETA

Choose a tag to compare

@PastorCatto PastorCatto released this 12 Jun 20:40

DEVELOPER WARNING! Due to changes in 0.12.0 and newer, apps written for 0.11.0 and older WILL NOT BE COMPATIBLE! (to an extent) Lua scripts may need minor tweaks, other custom C apps WILL NO LONGER WORK! SORRY!

I am prepping 3 new SDKs, currently in a testing phase. keep a tab on the repo for details!

This is a pre-release version of PURR OS 0.11.0

THIS WAS PUSHED BY SPECIAL REQUEST, I WILL RELEASE MORE WITH A 1.0 RELEASE!

this image is compatible with https://github.com/bmorcelli/Launcher
just drop the purr_os_core.bin file to your SD Card, and flash using Launcher.
for other devices, refer to the Howto doc in the docs folder (04_FlashingGuide.md)

THIS IS A PRE-RELEASE, THERE WILL BE BUGS

lilygo-tdeck and tdeck plus DO NOT HAVE TRACKBALL AND KEYBOARD SUPPORT (WIP)

if you find any bugs, open an issue, or wait for a release, as i test them myself (CYD and T Deck Plus)

Happy flashing, shoutout to the dev of minwinwm! the window manager used in this project (https://github.com/miniwinwm/miniwinwm)

WARNING!!!! Certian devices seem to be unbootable for now, with the giant kernel overhaul (PT2) we are changing how we handle them this will be updated in the future!

Thanks for helping make PURR OS better!