3.1 KiB
3.1 KiB
Work in progress
This is a custom firmware being developed for the LilyGo T-Deck, currently it is experimental & buggy.
I am terrible at C++ and still am trying to wrap my head around the language's logic, so most of this code has been shit out and written like a cowboy.
The project started out with as IRC bridge for Meshtastic over MQTT, just so I could say "we have IRC over radio", which later led to me modifying the official Meshtastic firmware to add extended features. I am deep in the rabbit whole of embedded development and am starting from scratch making this an entirely custom firmware.
This is being developed in my free time as a fun project. It is no where near being useful.
Previews
Flashing the Firmware
Using VS Code
- Add your user to the
dialout
group:sudo gpasswd -a YOURUSERNAME dialout
(You will need to re-login after adding your user to thedialout
group for it to take affect) - Install Visual Studio Code
- Install the PlatformIO plugin
- Hold down the trackball on the device, turn it on, and plug it in to the computer.
- Press F1 and select
PlatformIO: Build
- Press F1 and select
PlatformIO: Upload
Using ESP Tool
- Take the
firmware.bin
file from the release page and download it. (no releases yet, we still building) - Install esptool:
pip install esptool
- Hold down the trackball on the device, turn it on, and plug it in to the computer.
- Confirm the serial device in your
/dev
directory (Your device will likely be/dev/ttyAMC0
or/dev/ttyUSB0
) - Flash the device:
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 115200 write_flash -z 0x1000 firmware.bin
Roapmap
- Wifi scanning & selection menu
- Saved wifi profiles
- IRC Client
/raw
command for IRC client to send raw data to the server- ChatGPT
- SSH Client
- Wardriving
- Gotify
- Meshtastic
- Notifcations (All notifications will go here, from IRC, Gotify, Meshtastic, or anything) (Need to add internal speaker support for notification sounds)
- Status bar (Time, Date, Notification icons, Wifi icon, Battery icon with Percent)
- Trackball support
- Serial logging + debug logs stored in memory that can be viewed on the device itself.
- Allow specifying the IRC server, port, TLS, nick, etc...
- Proper disconnection & reconnection handling
Contributors
Join us in #comms on irc.supernets.org if you want to get your hands dirty.