Commit Graph

2594 Commits

Author SHA1 Message Date
pelgraine f6bce4f5ee Max - fix missing -D HAS_4G_MODEM=1 flags. Revised settingscreen so it uses a scroll bar instead of the heading total counter. New brightness scale in settings to control heart button brightness toggle strength, which also persists after reboot. 2026-06-04 22:29:14 +10:00
pelgraine 0a92f5ba48 Max - three touch capacitive buttons wired. Heart = backlight at full brightness. Speech bubble = opens channel picker. Paper plane = opens DM inbox 2026-06-04 21:44:15 +10:00
pelgraine 1613b81004 Max - touch support working!! 2026-06-04 21:24:14 +10:00
pelgraine 4db03adb3a Max - 4G working! 2026-06-04 20:37:53 +10:00
pelgraine 30d2e6aee7 max - fix offset home ui word wrap issue on 3 pages 2026-06-03 20:46:53 +10:00
pelgraine 82bd883723 remove pngdec from audiobookplayerscreen due to ble compilation bug 2026-06-03 20:06:29 +10:00
pelgraine 70e150e9c3 What changed and what to expect:
The fix (six sites: 948, 978, 1519, 1651, 1719, 1906): the indexer now chooses pixel-vs-char wrapping from _display->getFontStyle(), the same basis the renderer (1200), the layout sizing (1336), and the cache key already use. With all four agreeing, the indexer's recorded page boundary lands on the exact byte where the renderer's height-based stop lands — no more swallowed run between pages.
Version bump (INDEX_VERSION 13 → 14): your existing .idx caches were built by the old indexer and would otherwise be reloaded as-is (same font key), so the fix would appear to do nothing. Bumping the version makes the loader discard every v13 cache and rebuild it.

All six edits are in and braces balance (267/267). Here's what changed in Audiobookplayerscreen.h:

PNGdec include (47) and cover size 40→30 (67) — 30 virtual units ≈ 55px.
PNG draw callback coverDrawCallbackPNG (147) — nearest-neighbour downscales the 256px source line-by-line and dithers to 1-bit using the same Bayer matrix as the JPEG path. The decoder is heap-allocated per-decode (new PNG()), mirroring how the JPEG path uses new JPEGDEC(), so there's no permanent BSS cost.
decodeFolderCoverPNG() (419) + tryLoadFolderCover() (505) — reads cover.png from _currentPath into PSRAM and decodes it.
Hooks in both openBook (1099) and advanceTrack (1198), so the cover loads on open and persists as tracks auto-advance within an album. It only loads when there's no embedded cover, so M4B/ID3 embedded art still wins; music (no embedded art) gets the folder PNG.
Layout (1531, 1556) — cover now draws below the artist line, above the status/Paused-Vol line, exactly where you wanted it.
2026-06-03 19:24:19 +10:00
pelgraine 6487fcf4e6 same fix 2026-06-03 18:40:49 +10:00
pelgraine 0d2f27e615 Here's what each does:
target.h — declares meck_audio_route_amp() and meck_audio_codec_init() in the bridge (54-55), guarded by HAS_ES8311_AUDIO, ready for the alarm/voice paths to reuse later.
target.cpp — includes ES8311.h (6) and defines both helpers where board and the codec driver are visible: route+amp (100-102), and the once-only es8311_init_44100_16bit() (108-110).
Audiobookplayerscreen.h — forward-declares both (54-55); ensureI2SInit() now does route+amp and the 5-arg setPinout with MCLK on MAX (268-270); and meck_audio_codec_init() runs right after connecttoFS (1142). The Pro path is untouched.
2026-06-03 18:31:07 +10:00
pelgraine 772e7f9236 Vendor ESP32-audioI2S as real files (replace gitlink with library source) 2026-06-03 18:07:28 +10:00
pelgraine 8c6b3b1029 redid commit e0e011e and also added Vendor ESP32-audioI2S into lib/ with ES8311 APLL + set-once I2S edits 2026-06-03 17:59:38 +10:00
pelgraine 2ffdb5e090 Vendor ESP32-audioI2S into lib/ with ES8311 APLL + set-once I2S edits 2026-06-03 17:58:50 +10:00
pelgraine e91980674c re-apply e-ink offset 2026-06-03 17:41:16 +10:00
pelgraine 0a119eac4f initial audio playback working success - fixed pin 41 guard dac issue for pro variant by guarding with has es8311 audio 2026-06-03 15:10:28 +10:00
pelgraine d66f202081 decoupled the Max from the Pro variant; fixed e-ink offset in the max 2026-06-03 01:52:48 +10:00
pelgraine fc322070ae max - dropped keyboard bl brightness to 8, screen bl brightness to 1 for maximum dark room friendliness. Fix e-ink x offset 2026-06-03 00:16:18 +10:00
pelgraine 6966ae724b max - reduced keyboard backlight brightness to 32 2026-06-02 23:07:32 +10:00
pelgraine ef13cfac7e max - screen backlight dropped to 5, keyboard backlight brightness dropped by half to 128. Will need to revise message flash in settingscreen.h to use buzze instead of keyboard backlight led 2026-06-02 22:54:57 +10:00
pelgraine 4c4efd4cf3 max - alt+b screen front light set to brightness 10 sans diagnostics 2026-06-02 22:49:00 +10:00
pelgraine bc8f36fd0f max - screem brightness set to 10, alt+b working with diagnostics still present currently 2026-06-02 22:44:44 +10:00
pelgraine 6f95884d47 STUPID BACKLIGHT IS WORKING FINALLY AAAH 2026-06-02 22:15:15 +10:00
pelgraine dcbcf1bc1e max - fix max contacts, channels, and firmware version in plaftormio 2026-06-02 18:28:49 +10:00
pelgraine 12dc40db33 max - keyboard backlight works - press both shift keys to turn on and off 2026-06-02 18:16:25 +10:00
pelgraine 590655016a initial max updates - not yet working 2026-06-02 18:03:09 +10:00
pelgraine 4dfefa58ca update readme v1.11 2026-05-23 07:58:54 +10:00
pelgraine 77689870ad T5S3 ui fixes, including bigger minesweeper grid square.
Contact list display bug fix for all devices: MyMesh.h — added onAdvertRecv override declaration (line 214), alongside the other contact-related overrides.
MyMesh.cpp — added the implementation (lines 374-387). It calls BaseChatMesh::onAdvertRecv() first to let all normal processing happen (auto-add, replay guard, path caching, etc.), then unconditionally looks up the contact by pubkey and bumps lastmod to local RTC time. This way, even when the base class's replay guard early-returns (because timestamp <= last_advert_timestamp), the contact still bubbles up in the recency-sorted contacts list since we're actively hearing it.
2026-05-23 07:08:46 +10:00
pelgraine 834cd5fc87 Updated channel sharing so channel is immediately added upon receipt of DM, no additional steps required 2026-05-23 06:51:06 +10:00
pelgraine 4cc15f7ab0 Delete t-echo card and t-echo lite folders as no longer working on those; support json import & export config; new method for creating private and hashtag channels 2026-05-23 04:04:45 +10:00
pelgraine 47a7f2f9d1 add 100 and :D emoji; update firmware version to 1.11;; config json import and export on device to SD now supported 2026-05-22 10:08:24 +10:00
pelgraine 4aae5c9352 Add Ko-fi funding option to FUNDING.yml 2026-05-20 13:27:42 +10:00
pelgraine f7a4e0ad0f updated readme to fix channel picker references 2026-05-18 12:29:24 +10:00
pelgraine 926736016e update readme v1.10 2026-05-15 09:12:54 +10:00
pelgraine ef62b7145c TD Pro - add custom tones for 4G variant 2026-05-15 08:32:36 +10:00
pelgraine f6cc939c4d tdpro add minesweeper game 2026-05-15 07:29:14 +10:00
pelgraine cd2c8ae5b3 tdpro - updated max group channels to 40 for all builds 2026-05-15 07:01:42 +10:00
pelgraine 2907cc64f3 updated firmware build date; added [J] Games to home screen; added game sub screen; added basic Snake game 2026-05-15 06:59:49 +10:00
pelgraine 1e589b3eb9 td pro - custom notification sounds enabled for t-deck pro audio variant 2026-05-12 17:14:11 +10:00
pelgraine b0ad1c4901 selective channel notification functions - off/mute, only at tags, or alll, under channels in settingscreen 2026-05-12 05:25:43 +10:00
pelgraine ceb29ba662 tdpro - channel message history delete function - long press on screen to bring up menu 2026-05-12 04:50:32 +10:00
pelgraine 18b9ab6c4d update firmware version and build date 2026-05-12 04:24:30 +10:00
pelgraine 661157e368 Fix trace screen for t5s3 and add home icon for trace screen to t5s3 v1.9 2026-05-07 20:27:58 +10:00
pelgraine 5cca0e8e50 update readme for v1.9 tr 2026-05-07 18:18:00 +10:00
pelgraine 3596ad558d Fix missing data store persistence updates - font style, scope name and corresponding scope key - now sticks across reboots. Revised tdpro home ui offset to original settings. Fixed tpro hibernate icon positioning. 2026-05-07 17:57:19 +10:00
pelgraine 6de664ea37 Dm message persistence; fixed home ui offset alignment; trace route screen addition 2026-05-07 17:23:04 +10:00
pelgraine 708b96e0e8 T-Echo Card audio support initial stages - codec2 attempts 2026-05-07 05:47:18 +10:00
pelgraine 4b734f1bac updated drivers for t-echo card 2026-05-05 12:43:53 +10:00
pelgraine 20310018d3 updating t-echo card folder 2026-05-05 12:41:24 +10:00
pelgraine 8afe71510e Merge branch 'main' into dev 2026-05-05 11:57:18 +10:00
pelgraine 7adc0283b2 add sponsor link 2026-05-05 11:56:13 +10:00
pelgraine e72e498db9 Set GitHub Sponsors username to 'pelgraine'
Updated GitHub Sponsors username in FUNDING.yml
2026-05-05 11:53:55 +10:00