Outils pour utilisateurs

Outils du site


meshtastic_mqtt_connect_by_pdxlocations:1:start

Meshtastic MQTT connect par pdxlocations

Tuto par @panolyon(69)

ATTENTION, il me reste un bug sous débian 12… soucis corrigé, regarder en fin de page

Ce script Python va vous permettre de vous connecter directement en MQTT sur un serveur MeshTastic MQTT de votre choix.

Ce script est disponible ici https://github.com/pdxlocations/Meshtastic-MQTT-Connect

Avec ce script python, que nous appelleront « application console » vous aller pouvoir retrouver une partie des fonctionnalités que vous utilisez avec l’application de votre smartphone, sans aucun matériel Lora, directement en vous connectant au serveur MQTT.

Autre avantage vous récupérez un vrai clavier ….

Voici un aperçu de l’application console

  • Cadre bleu : les paramètres et commandes. C’est ici que vous allez pouvoir choisir les canaux que vous désirez utiliser. Les topics désirés, … Vous vous retrouvez un peu par rapport a l’application smartphone ?
  • Cadre vert : L’historique de vos messages.
  • Cadre rose : La fenêtre pour envoyer des messages en broadcast ou individuel quand vous sélectionnez un node dans la fenêtre de droite.
  • Cadre Rouge : La liste des nodes inscrit sur le topic que vous avez sélectionné.

Voilà les présentations de base étant faite, passons au chose « sérieuses »

Prérequis :

  • avoir un python récent d’installé (ici 3.12) sur l’ordinateur sur lequel vous désirez faire tourner l’application console.
  • Savoir lancer le terminal depuis votre système d’exploitation.
  • Savoir éxécuter des commandes au clavier depuis votre terminal.

On attaque l’installation …

dans un terminal tapez les commandes suivantes :

   pip3 install meshtastic paho-mqtt tk cryptography
   

(ceci installera les bibliothèques et script « meshtastic », « paho-mqtt », « tk » et « cryptography »

Dans votre navigateur rendez vous ici https://github.com/pdxlocations/Meshtastic-MQTT-Connect?tab=readme-ov-file

une fois sur cette page clique sur le bouton vert « <> Code » et sélection « Download zip » cela vas télécharger les fichiers présents sur votre ordinateur, en un seul fichier au format zip.

Pensez bien a décompresser ce fichiers zip, vous aurez ainsi dans un répertoire l’ensemble des fichiers nécessaire.

A cette étape le script brut est opérationnel. Vous pouvez le lancer 😁 mais continuons un petit peu, question d’aller plus loin.

Avec votre éditeur python habituel nous allons modifier le script principal, ces modifications peuvent vous rendre service.

Pour le debug ou par curiosité, Ainsi vous allez voir défiler plein d’informations dans la fenêtre ‘debug’ de votre éditeur. C’est toujours intéressant et peu vous permettre d’aller un peu plus en avant dans la maitrise de meshtastic.

Aux alentours des ligne 30 à 42, vous pouvez passer ces variables en fonction de vos envies à True.

### Debug Options
debug = False
print_service_envelope = False
print_message_packet = False
print_text_message = False
print_node_info =  False
print_telemetry = False
print_failed_encryption_packet = False
print_position_report = False
color_text = False
display_encrypted_emoji = True
display_dm_emoji = True
display_private_dms = False

Aux alentours des lignes 53 à 60, vous entrer ici les valeurs par défaut que vous désirez utiliser au lancement de l’interface de votre script.

### Default settings
mqtt_broker = "mqtt.meshtastic.org"
mqtt_port = 1883
mqtt_username = "meshdev"
mqtt_password = "large4cats"
root_topic = "msh/US/2/e/"
channel = "LongFast"
key = "AQ=="

Ici les variables par défaut avec une connexion via le serveur de meshtastic, pensez à les changer !

Sinon les laisser ainsi on va voir plus en avant une autre chose ….

Votre identité de console et sa position, aux alentour des lignes 75 à 81

client_short_name = "MMC"
client_long_name = "MQTTastic"
lat = ""
lon = ""
alt = ""
client_hw_model = 255
node_info_interval_minutes = 15

Changez-les, ainsi vous éviterez d’avoir à le faire à chaque utilisation.

Voici pour ce qui est du paramétrage du Script principal de la Console à vous de jouer

le fichier presets.json.

C'est dans celui-ci que vos réglages ceux du cadre bleu sont placés par le script. Comme nous avons constaté des souci de paramétrage MQTT, canaux, serveur,

remplacez le fichier du git par celui-ci, ouvrez votre éditeur on va regarder ce qu'il y a là dedans ….

On vous a mâché un peu le travail mais il vous en reste 😳

il ne vous reste qu'à changer ou remplir les variables suivantes, sachant qu'elles sont normalement les mêmes pour tout les canaux que je vous est déjà listés et même le nouveau topic e !

Alors à vous de jouer du copier/coller (attention à l'intégrité json de vote fichier)

"node_number": "3126770193"	, 'votre numéro de node pour ce canal (gardez le même pour tous)'
"long_name": "pdxlols", 'votre longName oui la console se présente comme un node'
"short_name": "pdxl", 'votre shortName pour les même raisons'
"lat": "" ,'votre latitude'
"lon": "" , 'votre longitude'
"alt": "" , 'votre altitude'

Aller cette fois c'est prêt. 😜

Et hop, grace au travail de Célestine (F4HOF) voici un fichier install.sh qui rend l'installation sous débian12 et sur un raspberry pi encore plus facile c'est par ici install.sh

meshtastic_mqtt_connect_by_pdxlocations/1/start.txt · Dernière modification : 2024/06/18 13:50 de f4eed

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki