Skip to main content

This Python curses client for Meshtastic is a terminal-based client designed to manage device settings, enable mesh chat communication, and handle configuration backups and restores.

Project description

Contact - A Console UI for Meshtastic

(Formerly Curses Client for Meshtastic)

Powered by Meshtastic.org

This Python curses client for Meshtastic is a terminal-based client designed to manage device settings, enable mesh chat communication, and handle configuration backups and restores.

Contact - Main UI Screenshot



The settings dialogue can be accessed within the client or may be run standalone to configure your node by launching settings.py

Contact - Settings Dialogue

Message Persistence

All messages will saved in a SQLite DB and restored upon relaunch of the app. You may delete client.db if you wish to erase all stored messages and node data. If multiple nodes are used, each will independently store data in the database, but the data will not be shared or viewable between nodes.

Client Configuration

By navigating to Settings -> App Settings, you may customize your UI's icons, colors, and more!

Commands

  • ↑→↓← = Navigate around the UI.
  • ENTER = Send a message typed in the Input Window, or with the Node List highlighted, select a node to DM
  • ` = Open the Settings dialogue
  • CTRL + p = Hide/show a log of raw received packets.
  • CTRL + t = With the Node List highlighted, send a traceroute to the selected node
  • CTRL + d = With the Channel List hightlighted, archive a chat to reduce UI clutter. Messages will be saved in the db and repopulate if you send or receive a DM from this user.
  • ESC = Exit out of the Settings Dialogue, or Quit the application if settings are not displayed.

Search

  • Press CTRL + / while the nodes or channels window is highlighted to start search
  • Type text to search as you type, first matching item will be selected, starting at current selected index
  • Press Tab to find next match starting from the current index - search wraps around if necessary
  • Press Esc or Enter to exit search mode

Arguments

You can pass the following arguments to the client:

Connection Arguments

Optional arguments to specify a device to connect to and how.

  • --port, --serial, -s: The port to connect to via serial, e.g. /dev/ttyUSB0.
  • --host, --tcp, -t: The hostname or IP address to connect to using TCP, will default to localhost if no host is passed.
  • --ble, -b: The BLE device MAC address or name to connect to.

If no connection arguments are specified, the client will attempt a serial connection and then a TCP connection to localhost.

Example Usage

contact --port /dev/ttyUSB0
contact --host 192.168.1.1
contact --ble BlAddressOfDevice

To quickly connect to localhost, use:

contact -t

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

contact-1.3.1.tar.gz (61.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

contact-1.3.1-py3-none-any.whl (69.8 kB view details)

Uploaded Python 3

File details

Details for the file contact-1.3.1.tar.gz.

File metadata

  • Download URL: contact-1.3.1.tar.gz
  • Upload date:
  • Size: 61.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for contact-1.3.1.tar.gz
Algorithm Hash digest
SHA256 eec55d64d996c535ee128647ef886f7de3bce75aeb80efb4b9d7a08d9c26d0a6
MD5 ba512af7fd79bc7b020d223176722a55
BLAKE2b-256 111bd470a2b17c180184980236e293875f89e2cbd3e322347e23129483fd668b

See more details on using hashes here.

Provenance

The following attestation bundles were made for contact-1.3.1.tar.gz:

Publisher: release.yaml on pdxlocations/contact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file contact-1.3.1-py3-none-any.whl.

File metadata

  • Download URL: contact-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 69.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for contact-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 193fd80e0e6797a926821fca80ebfaf6d1d6f14cb9e1396ecd13046c0d73fd62
MD5 a3776adbafa8a32a36e4784638aa9a75
BLAKE2b-256 ae81d647e45306bc8e206baf4884ce5028712118f83da2bf843c68faafb914ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for contact-1.3.1-py3-none-any.whl:

Publisher: release.yaml on pdxlocations/contact

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page