A work in progress NEOS Driver for the LILYGO T-Deck, which gives full support for the NEOS app ecosystem
  • Nix 53.5%
  • Rust 40.6%
  • Shell 5.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-22 14:30:42 +02:00
.cargo feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
.zed feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
src feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
.envrc feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
.gitignore feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
build.sh feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
Cargo.lock feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
Cargo.toml feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
flake.lock feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
flake.nix feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00
README.md feat: add simple code to power on the backlight 2026-08-22 14:30:42 +02:00

NEOS Driver for T-Deck Plus

This repository implements NEK's HAL API for the LILYGO T-Deck Plus. Installing this file alongside the NEK generic image gives the T-Deck Plus full support for the NE Operating System.

Compilation

Note

Just like with every other part of the NEOS project, you need the ESP32 Rust toolchain to compile this program.

Nix (and NixOS) users can use nix develop to automatically get the toolchain. For anyone else, if you don't already have it installed, check out the official guide:

https://docs.espressif.com/projects/rust/book/getting-started/toolchain.html

Compilation is best done with the build.sh script, simply because it automates an extra optimization step, but it can also be done with cargo:

./build.sh
## OR
cargo build --release

The optimization done in build.sh is removing some heavy (but unused) LLVM sections from the final binary. If these sections are present, they take up a lot of space, so removing them significantly reduces the file size.

If you don't have bash, you can still run this optimization step manually (actual path to binary might vary):

xtensa-esp32s3-elf-objcopy \
    --remove-section=.llvmbc \
    --remove-section=.llvmcmd \
    target/xtensa-esp32s3-none-elf/release/neos-driver \
    target/xtensa-esp32s3-none-elf/release/neos-driver

Installation

Warning

This part is a Work in Progress and is currently being investigated :)