A Python-based GUI application for interacting with Meshtastic devices, built using PyQt6 and the Meshtastic Python API. This project aims to provide a user-friendly desktop alternative to the official Meshtastic clients, offering the same functionality as the iOS, Android, and web clients—but in an offline-capable, native desktop form.
💡 Incoming messages are currently only visible in the debug terminal and do not yet show up in the GUI. This is a known issue and being actively worked on.
This project is still under development and will continue evolving with feedback and feature requests. Built with the help of Large Language Models (LLMs) to kickstart implementation—refinements are ongoing.
The primary goal of this project is to provide a full-featured, offline-capable desktop client with the same power as the official Meshtastic mobile and web apps.
- Offline-first functionality (no internet required)
- Full feature parity with official clients
- Native Windows & Linux support
- Clean, modern, and themeable UI
- All core Meshtastic functions:
- Messaging (real-time & historical)
- Node visibility and management
- Channel setup and switching
- Device setting tweaks
- Map views for nodes (planned)
- Offline message storage
- Advanced configuration panels
- Multiple built-in themes: Light, Dark, High Contrast
- Full color/font/layout customization
- Python 3.x
- PyQt6
- Meshtastic Python API
- pyserial
git clone https://github.com/wasted-alien/Meshtastic-Desktop-Application.git
cd Meshtastic-Desktop-Application
pip install -r requirements.txt
python main.py
- Select your device’s serial port from the dropdown
- Click Connect
- Type a message and press Send
- Use the side panel for device settings
- Serial port auto-detection & management
- Real-time message sending
- Device name customization
- Console log for debug visibility
- Clean dark UI with teal accents
- Future support for custom themes
- Serial port connection
- Device naming
- Message sending
- Bluetooth Connection
- GUI message reception
- Message history storage
- Channel & node management UI
- Map-based node display
- Full theme customization system
Pull requests welcome! Whether it's bug fixes, feature ideas, UI tweaks, or theme contributions—feel free to jump in.
This project was rapidly prototyped using help from LLMs for code scaffolding and early UI structure. All features are being refined and validated manually—community testing is appreciated!
Licensed under the Non-Commercial Open Source License – see the LICENSE
file for details.
- Meshtastic – for the open-source mesh network magic
- PyQt6 – for the GUI framework
- The Meshtastic Python CLI – for foundational device communication
- Open-source community contributors ❤️
Add your name or handle below if you’ve contributed to this project:
- 🛠️ Wasted Alien – Creator & Lead Dev
- ✨ (Add yourself here!)