Repository navigation
v1.5.0
1.5.0 (2026-08-20)
Features
- audio: MP3 player + ID3 metadata; cross-player playlist nav (1277d12) - @lthiagovs
- badusb: accept SUPER as an alias for the GUI modifier (f74f5c5) - @anarchyysm
- badusb: add Amiga ASCII art payload; map grave/backslash/apostrophe/pipe in US layout (2052ff5) - @anarchyysm
- badusb: complete ABNT2 coverage with missing symbols and full accent table (63fc412) - @anarchyysm
- badusb: scan SD payload subfolders recursively, list all in one view (d30ea28) - @anarchyysm
- doom: port doomgeneric as an Applications component with HighBoy platform layer (bcc47a0) - @anarchyysm
- games: Game Boy (DMG) emulator + ROM picker (6dc2066) - @lthiagovs
- images: immersive image / GIF viewer (e91d0da) - @lthiagovs
- sniffer: save fragmented pcap with radiotap to SD card (f1511d8) - @anarchyysm
- storage: USB Mass Storage — expose the SD as a USB drive (e29f52d) - @lthiagovs
- subghz: add a came brute force sweep (0073f6a) - @lthiagovs
- subghz: publish decoded captures through a poll api (df706b2) - @lthiagovs
- subghz: replay saved captures over the air (0f623fa) - @lthiagovs
- subghz: share rx preset and frequency across screens (e96118f) - @lthiagovs
- subghz: store captures as real sub files on the sd card (cb838fa) - @lthiagovs
- ui: add DOOM entry to the games menu (d73669d) - @anarchyysm
- ui: apply screen rotation live by rebuilding the active screen (5274998) - @lthiagovs
- ui: c5 update progress modal and imu entry (05e3df4) - @lthiagovs
- ui: drive the subghz screens from the real radio (2ae98d0) - @lthiagovs
- ui: Home/menu navigation affordances (1adc348) - @lthiagovs
- ui: rotate d-pad input to match the screen in landscape (0d2ac8a) - @lthiagovs
- video: MP4 player + media thumbnails (590c21e) - @lthiagovs
Bug Fixes
- badusb: correct ABNT2 apostrophe and add backtick so ASCII art renders on BR hosts (ebf99fa) - @anarchyysm
- badusb: END before ENTER in amiga payload to stop auto-indent accumulation (43dcd2b) - @anarchyysm
- badusb: raise HID ready timeout to survive host stalls so HOME is not dropped (ca37977) - @anarchyysm
- bridge: give the BLE lifecycle commands enough SPI timeout (130533a) - @lthiagovs
- cc1101: serialize spi3 transactions through the shared bus lock (94b12df) - @lthiagovs
- console: firstboot arms next-reset flag without wiping (24b2051) - @lthiagovs
- display: drive SPI3 SCLK/MOSI harder to stop radio-EMI garbling (84e23bc) - @lthiagovs
- lora: chat ui (7523634) - @lthiagovs
- lora: sx1262 and meshcore rx robustness (01ddba6) - @lthiagovs
- lvgl: complete LVGL flush in direct mode so the render task never hangs (b9e4606) - @anarchyysm
- mesh: show BLE pairing PIN and gate "linked" on subscribe (43ccd75) - @lthiagovs
- mesh: stop the Meshtastic/MeshCore phone-app connect crashes (c87c6e9) - @lthiagovs
- nfc: nfc read ui (d2f622c) - @lthiagovs
- radio: demote SX1262 RX-error hot-path logs; stop needless RX re-arm (a897595) - @lthiagovs
- radio: harden SX1262 RX against errored packets and flaky SPI3 (5b05467) - @lthiagovs
- radio: retry the SX1262 bring-up until it lands in STDBY_RC (6876fc4) - @lthiagovs
- radio: shared SPI3 bus lock between SX1262 and ST7789 (1bf4b3c) - @lthiagovs
- storage: create parent dir for SD writes, not the file path (5647297) - @anarchyysm
- subghz: pace the analyzer sweep to release the spi bus (8b6710b) - @lthiagovs
- subghz: transmit on gdo0 to match the async rx pin (4395e68) - @lthiagovs
- ui: async-delete the keyboard to avoid a self-delete use-after-free (9433574) - @lthiagovs
- ui: clamp per-screen layouts to landscape (fc3ce61) - @lthiagovs
- ui: drop wifi toggle and mock networks from connection settings (e05afb0) - @lthiagovs
- ui: fit the wifi channel-analysis spectrum to landscape (b0e9c5d) - @lthiagovs
- ui: flip the landscape d-pad remap direction (fef7fc2) - @lthiagovs
- ui: image viewer loading card, fit-to-screen and psram decode (80715fb) - @lthiagovs
- ui: led notify config (6f97fc5) - @lthiagovs
- ui: make per-screen layouts rotation-aware (phase 3-4) (24d39fe) - @lthiagovs
- ui: make the dropdown rotation-aware (nav + height) (6190730) - @lthiagovs
- ui: make the onboarding wizard rotation-aware (5c43a3a) - @lthiagovs
- ui: make the shared chrome, menu and modal rotation-aware (9582ecf) - @lthiagovs
- ui: prevent tutorial double-click passthrough (f97b30b) - @lthiagovs
- ui: remove home wallpaper (5caa38f) - @lthiagovs
- ui: resolve theme by name and central input pump (c3cb8a4) - @lthiagovs
- ui: stop coverflow opacity animation from leaking local styles (WDT) (420ae41) - @lthiagovs
- usb: advertise MSC only in mass-storage mode to stop TinyUSB crash on native USB (07c16dd) - @anarchyysm
- wifi: drop blocking led in c5 deauther and evil-twin hot paths (e242689) - @lthiagovs
Performance Improvements
- badusb: pace HID reports by tud_hid_ready for max drop-free typing speed (2e7b397) - @anarchyysm
- mem: move large static UI/app buffers to PSRAM (EXT_RAM_BSS_ATTR) (a2de548) - @lthiagovs
- render: double buffering + larger strip + full-screen takeover hook (645203b) - @lthiagovs