beta-0.1.33
Pre-release
Pre-release
SlopOS T-Deck Firmware — beta-0.1.33
Flash with esptool
# Full flash (first install):
esptool.py --chip esp32s3 --port /dev/ttyACM0 write_flash 0x0 firmware-merged.bin
# App update (keep settings):
esptool.py --chip esp32s3 --port /dev/ttyACM0 \\
write_flash 0x10000 firmware.binWeb Flasher
Use the manifest at webflasher/manifest.json with esptool.js.
| File | Use |
|---|---|
firmware.bin |
App only (flash at 0x10000) |
firmware-merged.bin |
Full flash (flash at 0x0) |
webflasher/slopos-tdeck-firmware.bin |
App update |
webflasher/slopos-tdeck-full.bin |
Full flash |
webflasher/slopos-tdeck-bootloader.bin |
Bootloader |
webflasher/slopos-tdeck-partitions.bin |
Partition table |
webflasher/manifest.json |
Web flasher manifest |
What's Changed
- fix: batch resolve 8 potential bugs from code audit by @hermes-gadget in #51
- fix: properly truncate channel preview text to avoid timestamp/badge overlap by @hermes-gadget in #55
- feat: add term-submit and term-log for remote test controller by @hermes-gadget in #57
- feat: add help command with detail lookup to terminal screen by @hermes-gadget in #58
- Signal bars: per-node RSSI pixel-art indicator by @hermes-gadget in #60
- Debug: log RSSI/SNR on received packets by @hermes-gadget in #62
- feat: add debug level system and display-always-on for debug builds by @hermes-gadget in #53
- fix: UTF-8 safe truncation for emoji multi-byte codepoints in send path by @hermes-gadget in #68
- docs: audit KNOWN_ISSUES.md — remove fixed entries, add 5 new bugs by @gadgethd in #70
- fix: address 5 bugs from KNOWN_ISSUES audit by @hermes-gadget in #72
- fix: add stub implementations for term_* functions (fixes remote_test build) by @hermes-gadget in #74
- Add pull request CI for firmware build and native tests by @n30nex in #52
- docs: remove fixed/stale entries from KNOWN_ISSUES.md by @hermes-gadget in #76
- Universal trackball back-swipe (two-swipe commit) by @hermes-gadget in #78
- Fix: dangling s_back_btn pointer causes crash on screen navigation by @hermes-gadget in #80
- feat: per-feature debug flags with independent compile-time and runtime control by @hermes-gadget in #82
- fix: call mesh::init() in remote_test to prime shared SPI bus for SD card by @hermes-gadget in #87
- docs: add MISSING_FEATURES.md — MeshCore capability gap reference by @gadgethd in #85
- docs: add MISSING_FEATURES.md references to agent onboarding and contributing guide by @hermes-gadget in #88
- reorg: move reference docs into docs/ folder by @hermes-gadget in #89
- fix: ensure correct I2C clock speed per device (touch 400kHz, keyboard 100kHz) by @hermes-gadget in #91
- fix: add rate limiting to sendAdvert() at API layer by @hermes-gadget in #93
- fix: compare full 32-byte channel hash instead of first byte only by @hermes-gadget in #95
- fix: unconditionally null-terminate short payloads in onPeerDataRecv by @hermes-gadget in #97
- fix: move display to SPI2_HOST to prevent GPIO matrix pin-remap conflict with mesh/SD by @hermes-gadget in #114
- docs: comprehensive feature documentation for all screens (Closes #115) by @hermes-gadget in #116
- docs: add phased implementation plan to MISSING_FEATURES.md (Closes #117) by @hermes-gadget in #118
- [codex] fix gps empty nmea fields by @n30nex in #119
- docs: mark already-fixed items in KNOWN_ISSUES.md by @hermes-gadget in #121
- fix: correct sendTrace indentation (merge artifact) by @hermes-gadget in #122
- docs: mark debug.h guards as FIXED by @hermes-gadget in #125
- fix: use lv_obj_del_async in trace event handler (Closes #123) by @hermes-gadget in #124
- fix: rename slopos_keyboard_has_new_event to clarify destructive semantics by @hermes-gadget in #126
- docs: mark GPS NMEA checksum as FIXED by @hermes-gadget in #132
- docs: mark board/Module fixes as FIXED by @hermes-gadget in #135
- fix: reset map screen drag/render statics on every screen entry by @hermes-gadget in #127
- fix: replace hardcoded child index with user_data for contact name lookup by @hermes-gadget in #128
- refactor: extract shared dispatch_screen helper from navigate_to/go_back by @hermes-gadget in #129
- fix: replace non-thread-safe setenv/tzset with direct date-to-epoch by @hermes-gadget in #130
- fix: GT911 touch polling — read status register before releasing on INT HIGH by @hermes-gadget in #131
- fix: call board.begin() in mesh::init() so radio driver detects deep-sleep DIO1 wake by @hermes-gadget in #133
- fix: defer RadioLib Module/radio allocation to init() with null checks by @hermes-gadget in #134
- docs: mark 7 fixed known issues with PR references by @hermes-gadget in #136
- feat: split REPEATERS/CONTACTS/FINDER into separate screens by @hermes-gadget in #137
- fix: clean up Finder screen — centered Ping Nearby, show local repeaters by @hermes-gadget in #140
- docs: add screenshots table to README with all 14 UI screens by @hermes-gadget in #141
- [codex] parse contact locations from adverts by @n30nex in #143
Full Changelog: beta-0.1.32...beta-0.1.33