Skip to content

Meck v1.11 -- T-Deck Max Support

Choose a tag to compare

@pelgraine pelgraine released this 04 Jun 18:56
· 18 commits to main since this release

⚠️ Files from 2+hrs ago have now been patched with the correct bootloader. Please re-download fresh copies if you've been having trouble booting for the first time⚠️

This release adds the LilyGo T-Deck Max as a supported device. It runs the full Meck v1.11 feature set with the same on-device UI, keyboard controls, and screens as the T-Deck Pro -- all of those apply unchanged. The firmware version stays at v1.11 because the core feature set is the same, but the Max has hardware the other boards don't, so this build exposes several capabilities the standard T-Deck Pro builds can't.

If you are on a standard T-Deck Pro, T-Deck Pro 4G, T-Deck Pro Audio, or T5S3, use the v1.11 release builds instead.


What the T-Deck Max Adds

The headline difference is hardware: the Max carries an A7682E 4G modem and an ES8311 audio codec at the same time, wired through an XL9555 I/O expander. On the T-Deck Pro the modem and the audio DAC share one hardware slot and are mutually exclusive; on the Max you get the SMS & Phone app, the audiobook player, the alarm clock, and cellular data on a single device. The Max also adds a CST328 capacitive touchscreen, three capacitive front buttons, a DRV2605 haptic motor for vibrate alerts, an e-ink frontlight, and a 1500 mAh battery with a BQ27220 fuel gauge.

4G and Audio at the Same Time

Every Max build includes both the 4G modem and the audio codec -- there is no "audio vs 4G" split like the T-Deck Pro. The home screen carries the full app set: Audiobooks (P), Alarm (K), Phone & SMS (T), Browser & IRC (B), Discover (F), and Voice Messages (Mic). Audio output runs through a shared speaker mux that switches between the modem (calls, ringtones, modem tones) and the ES8311 codec (audiobooks, alarms, notification MP3s) automatically.

The Max records and plays voice notes through its ES8311 codec (the same output path that drives audiobooks and alarms). Sending a recorded note over the mesh is not yet verified -- see Known Limitations below.

Antenna (Internal / External)

The Max has both an on-board internal antenna and an external MMCX antenna connector, with a switch in Settings to select between them. Internal is the default -- if you want to use an external MMCX antenna, change the switch in Settings first.

E-Ink Frontlight with Adjustable Brightness

The Max has an e-ink frontlight -- a first for the T-Deck line. The on-level is set in Settings → Backlight Brightness, adjustable from 5% to 100% in 5% steps (default 100%); this setting only appears on the Max. You can switch the frontlight on with the new Heart capacitive button (turns on at the configured brightness) or with Alt + B (turns on at minimum brightness).

Capacitive Touch Buttons

The Max adds a CST328 capacitive touchscreen plus three capacitive buttons along the front bezel, none of which the T-Deck Pro has:

  • Heart -- toggle the e-ink frontlight (see above)
  • Speech bubble -- jump straight to the channel picker (same as pressing M)
  • Paper plane -- jump straight to the DM inbox

Buzzer (Vibrate) Notifications

The Max's DRV2605 haptic motor can be used for silent alerts. In Settings → Channels, highlight a channel, press T to open the notification tone picker, and choose the new Buzzer (vibrate) entry (just below "Default (silent)"). Incoming messages on that channel pulse the motor instead of sounding a tone -- useful for silent alerts. The Max also supports custom MP3 tones from the /alarms/ folder, like the T-Deck Pro audio variant.

Multi-Constellation GPS

The Max's GPS is configured for multi-constellation positioning -- GPS, Galileo, and BeiDou (via the $PCAS04,7 command) -- for faster fixes and better coverage than single-constellation GPS.

Keyboard Backlight

Press both Shift keys together to toggle the keyboard backlight on and off.

Audiobook .m4b Filtering

The audiobook player now hides .m4b files from the file list. M4B (chaptered audiobook) playback is not supported yet, so filtering them out keeps unplayable files from cluttering the explorer. This applies to all audio-capable builds, not only the Max.


Known Limitations

  • Voice-note sending is unverified. Voice-note recording and playback both work on the Max -- capture runs through the ES8311 ADC and playback through the ES8311 output. Sending a recorded note over the mesh is implemented but has not yet been verified end to end on the Max.
  • No audio under the M5 Launcher. The -merged.bin images boot and run correctly when flashed through version 2.7.2 of bmorcelli's M5 Launcher, but audio playback does not currently work in that configuration. bmorcelli is aware of the issue and working on a fix.
  • Gyroscope not yet supported. The Max has a Bosch BHI260AP gyroscope (I2C address 0x28) that the T-Deck Pro does not have. Meck does not use it yet; support is planned for a future release. See the LilyGo T-Deck-MAX hardware repo.
  • Higher average power draw than the T-Deck Pro. Each Max environment variant currently draws more average power than the equivalent T-Deck Pro build. This is under investigation and will be refined in future Meck firmware releases.

First-Time Flashing -- Read This First

Each firmware is provided in two formats:

  • filename.bin -- the application firmware only. Use this for updating an existing Meck install (including OTA updates from your phone).
  • filename-merged.bin -- includes the bootloader, partition table, and application firmware in a single image. Use this if you are flashing Meck for the first time, coming from a different firmware, or if your device is not booting correctly after an update.

If in doubt, use the -merged.bin file. It will always work regardless of what was previously on the device.

Flashing with the MeshCore Web Flasher (recommended)

  1. Go to https://flasher.meshcore.io/
  2. Select Custom Firmware
  3. Load the .bin or -merged.bin file and click Flash
  4. Select your device in the popup and click Connect

Flashing with esptool.py

esptool.py --port /dev/ttyACM0 --baud 921600 write_flash 0x0 firmware-merged.bin

T-Deck Max Firmware Variants

Three companion firmware variants for the LilyGo T-Deck Max. Every variant includes both the 4G modem and the ES8311 audio codec, the web reader / IRC client, and up to 2,000 contacts and 40 channels.


v1.11-Meck-Max-BLE.bin
Full-featured build with BLE companion app support -- messaging, contacts, direct messages, repeater admin, e-book reader, notes, emoji, multi-constellation GPS, map viewer, SMS & Phone app, IRC client, web browser, OTA firmware update, custom notification tones, buzzer (vibrate) alerts, games, config export/import, private channels, the audiobook player, alarm clock, and voice notes (record and play). Up to 2,000 contacts and 40 channels.

Note: BLE is toggled off at boot to save battery. Navigate to the Bluetooth home page and press Enter to enable it when you want to connect to the app.

v1.11W-Meck-Max-WiFi.bin
Same as the Max-BLE build but with WiFi replacing BLE as the companion transport -- connect via the MeshCore web app, iOS/Android app, meshcore.js, or Python CLI over your local network (TCP port 5000). No BLE companion app support. Up to 2,000 contacts and 40 channels.

v1.11-Meck-Max-Standalone.bin
No BLE or WiFi companion -- maximum battery life. Full standalone operation with all on-device features, including the audiobook player, alarm clock, voice notes (record and play), and SMS & Phone over the 4G modem. The web reader and IRC client remain available via the modem's data path. Up to 2,000 contacts and 40 channels.


Meck_README_v1.11.pdf is included in this release -- it covers all keyboard controls, touch gestures, screen navigation, settings, and feature documentation for all platforms, provided in PDF form for convenience.

MeshCore Companion Apps

The BLE variant connects to the standard MeshCore companion apps:

The WiFi variant connects via TCP on port 5000: