Le module de message préenregistré vous permet d'envoyer des messages au réseau maillé depuis l'appareil sans utiliser l'application mobile. Vous pouvez prédéfinir des messages texte parmi lesquels choisir.
Les options de configuration du module de message préenregistré incluent : Activé, Envoyer la sonnerie, Messages, Source d'entrée, Encodeur rotatif activé, Encodeur Haut Bas activé, Broche A du courtier d'entrée, Broche B du courtier d'entrée, Broche de pression du courtier d'entrée, Événement de rotation horaire du courtier d'entrée, Événement de rotation antihoraire du courtier d'entrée, et Événement de pression du courtier d'entrée. La configuration du message préenregistré utilise un message administrateur pour envoyer un protobuf ConfigModule.CannedMessage.
Valeurs de configuration du module de message préenregistré
-
Activé : Active le module de message préenregistré.
-
Envoyer la sonnerie : Envoie un caractère de sonnerie avec chaque message. Le Module de notification externe peut être configuré pour émettre un bip lorsqu'un nouveau message arrive. De plus, ce module peut être configuré pour émettre un bip uniquement lorsqu'un message contient le caractère de sonnerie.
-
Messages : La liste des messages préconfigurés définis par l'utilisateur. Les messages doivent être séparés par des barres verticales |. Le nombre total d'octets pour la liste des messages peut atteindre 200 octets.
-
Source d'entrée : Sources d'événements d'entrée acceptées par le module de message préenregistré.
| Valeur | Description |
| _any | Par défaut. Permet tout périphérique d'entrée connecté à l'appareil. |
| encRot1 | Encodeur rotatif basique |
| encodeurHautBas1 | Encodeur Haut Bas (utilisez également ceci pour l'encodeur rotatif RAK14006) |
| scanEtSelectionne | Bouton-poussoir unique (pression courte et longue) |
| cardkb | M5 Stack CardKB (cela couvre la matrice de touches RAK14004) |
| serialkb | Clavier série Chatter |
-
Encodeur rotatif activé : Activer l'encodeur rotatif par défaut.
-
Encodeur haut bas activé : Activer l'encodeur haut/bas.
-
Entrée Broker Pin A : Valeur du GPIO Pin (1-39) pour le port A de l'encodeur.
-
Entrée Broker Pin B : Valeur du GPIO Pin (1-39) pour le port B de l'encodeur.
-
Entrée Broker Pin Pression : Valeur du GPIO Pin (1-39) pour le port de pression de l'encodeur.
-
Entrée Événement Broker Sens horaire : Générer l'événement rotatif sens horaire.
-
Entrée Événement Broker Sens antihoraire : Générer l'événement rotatif sens antihoraire.
-
Entrée Événement Broker Press : Générer un événement d'entrée lors de la pression de ce type.
Client de configuration du module de messages préenregistrés
Android
Les options de configuration des messages préenregistrés sont disponibles pour Android.
-
Ouvrez l'application Meshtastic.
-
Naviguez vers : Ellipse verticale (3 points en haut à droite) > Configuration radio > Message préenregistré.
Apple
Toutes les options de configuration du module de messages préenregistrés sont disponibles sur iOS, iPadOS et macOS dans Réglages > Configuration du module > Messages préenregistrés.
CLI
Toutes les options de configuration du module de message préenregistré sont disponibles dans le CLI Python.
| Paramètre | Valeurs acceptables | Par défaut |
| canned_message.enabled | true, false | FALSE |
| canned_message.send_bell | true, false | FALSE |
| canned_message.allow_input_source | rotEnc1, _any, upDownEnc1, cardkb | _any |
| --set-canned-message | chaîne | "" (séparer avec des pipes) |
| canned_message.inputbroker_event_cw | InputEventChar | (non défini) |
| canned_message.inputbroker_event_ccw | InputEventChar | (non défini) |
| canned_message.inputbroker_event_press | InputEventChar | (non défini) |
| canned_message.inputbroker_pin_a | entier | (non défini) |
| canned_message.inputbroker_pin_b | entier | (non défini) |
| canned_message.inputbroker_pin_press | entier | (non défini) |
-
Activer/Désactiver le module de message préenregistré
| meshtastic --set canned_message.enabled true meshtastic --set canned_message.enabled false |
-
Activer/Désactiver le caractère de sonnerie d'envoi
| meshtastic --set canned_message.send_bell true meshtastic --set canned_message.send_bell false |
-
Définir les messages
| meshtastic --set-canned-message "J'ai besoin d'un alpiniste !|Appelez-moi|Roger Roger|Restez calme|J'arrive |
-
Définir la source d'entrée
| meshtastic --set canned_message.allow_input_source "_any" meshtastic --set canned_message.allow_input_source "rotEnc1" |
-
Activer/Désactiver rotary1
| meshtastic --set canned_message.rotary1_enabled 1 |
-
Activer/Désactiver le bouton A de l'encodeur
| meshtastic --set canned_message.inputbroker_pin_a 17 meshtastic --set canned_message.inputbroker_pin_a 0 |
-
Activer/Désactiver le bouton B de l'encodeur
| meshtastic --set canned_message.inputbroker_pin_b 39 meshtastic --set canned_message.inputbroker_pin_b 0 |
-
Activer/Désactiver la pression du bouton de l'encodeur
| meshtastic --set canned_message.inputbroker_pin_press 21 meshtastic --set canned_message.inputbroker_pin_press 0 |
-
Définir/Désactiver l'événement CW du courtier d'entrée
| meshtastic --set canned_message.inputbroker_event_cw UP meshtastic --set canned_message.inputbroker_event_cw "" |
-
Définir/Désactiver l'événement CCW du courtier d'entrée
| meshtastic --set canned_message.inputbroker_event_ccw DOWN meshtastic --set canned_message.inputbroker_event_ccw "" |
-
Définir/Désactiver l'événement de pression du courtier d'entrée
| meshtastic --set canned_message.inputbroker_event_press SELECT meshtastic --set canned_message.inputbroker_event_press "" |
REMARQUE : Comme l'appareil va redémarrer après chaque commande envoyée via CLI, il est recommandé de chaîner les commandes ensemble en une seule lors de la définition de plusieurs valeurs dans une section de configuration. Par exemple :
| meshtastic --set canned_message.enabled true --set canned_message.send_bell true |
Web
Toutes les options de configuration du module de messages prédéfinis sont disponibles dans l'interface Web.
Matériel
Pour naviguer dans les messages et en sélectionner un, vous aurez besoin de matériel connecté à votre appareil. Actuellement, le module est testé avec un encodeur rotatif générique, une logique 3 boutons haut/bas/sélection, et plusieurs claviers I2C. D'autres méthodes d'entrée seront ajoutées à l'avenir.
Matrice de touches I2C
Cela a été testé avec le clavier RAK14004. Une pression sur une touche enverra immédiatement le message attaché au numéro de bouton respectif. Les boutons sont numérotés de haut en bas et de gauche à droite sur les panneaux de touches. Ainsi, appuyer sur le bouton en haut à gauche enverra le premier message, le deuxième bouton enverra le deuxième message, et ainsi de suite.
Avertissement : La matrice de touches 3x4 du RAK ne comporte pas la 4e rangée de boutons lors du balayage, vous devez donc sauter chaque 4e emplacement de message. Le bouton 1 envoie le message 1, et le bouton 4 enverra le message 5. Par exemple : 1|2|3||5|6|7||9|10|11||13|14|15 — les emplacements 4, 8 et 12 ne peuvent pas être utilisés.
CardKB
Le CardKB est entièrement pris en charge en mode texte libre et en mode sélection. Utilisez HAUT/BAS/ENTRÉE pour choisir un message prédéfini et l'envoyer. Pour un message en texte libre, tapez-le simplement et appuyez sur ENTRÉE pour l'envoyer.
Si vous préférez ne pas diffuser votre message en texte libre, vous pouvez utiliser le CardKB pour l'envoyer à un nœud spécifique. Il suffit d'appuyer sur TAB et de sélectionner le nœud cible avec les touches GAUCHE/DROITE. Le message sera envoyé au nœud correspondant au nom et au numéro de nœud. Le nœud cible sera mémorisé pour votre prochain message.
Encodeur rotatif RAK et bouton haut/bas 3 touches
Utilisez simplement HAUT/BAS/ENTRÉE pour sélectionner un message prédéfini et l'envoyer.
Scanner et sélectionner
Utilisez un seul bouton-poussoir pour sélectionner et envoyer des messages prédéfinis.
Configuration
-
Connectez un bouton-poussoir normalement ouvert entre la masse et une broche GPIO de votre choix.
-
Configurez le module de messages préenregistrés. 1. Réglez la source d'entrée sur scanAndSelect. 2. Réglez la broche d'entrée du courtier pour la pression sur votre GPIO choisi. 3. Définissez une liste de messages préconfigurés.
Utilisation
-
Appui court : Faire défiler les messages.
-
Appui long : Envoyer le message actuellement sélectionné à votre canal principal.
Encodeur rotatif
Meshtastic prend en charge les encodeurs rotatifs câblés en dur comme dispositifs d'entrée.
Vous aurez besoin d'un encodeur rotatif générique. Les types listés ci-dessous ont cinq broches, dont deux dédiées à une action de "pression", mais d'autres types fonctionneront probablement aussi. Vous pouvez aussi utiliser une version à trois broches, où l'action "pression" doit être connectée via un interrupteur indépendant.
Connectez votre encodeur rotatif comme suit : l'encodeur rotatif a deux rangées de broches. Une rangée contient deux broches, l'autre en contient trois. Vue côté inférieur :
| B o --- o PRESS MASSE o | | A o --- o MASSE |
Les deux broches servent à détecter l'action d'appui (ou pression). Connectez l'une des deux broches à la MASSE et l'autre à une broche GPIO (peu importe laquelle). Nous appellerons ces ports connectés 'PRESS'.
Les trois broches servent à détecter l'action de rotation. Connectez la broche du milieu à la MASSE et celles sur les côtés aux broches GPIO. Nous nommerons ces ports 'A' et 'B', selon le schéma ci-dessous.
| A --|| GND --||]======== B --|| |
Broches GPIO recommandées pour connecter un encodeur rotatif :
TTGO LoRa V1 :
-
A - GPIO-22
-
B - GPIO-23
-
PRESSER - GPIO-21
Il existe un design de boîtier 3D de référence utilisant l'encodeur rotatif pour TTGO LoRa V1 : Boîtier pour TTGO-ESP32-LORA-OLED-v1.0 avec encodeur rotatif.
Exemples
Connectez un périphérique compatible. Notez les numéros GPIO que vous utilisez, car ils seront nécessaires à l'étape suivante.
Note : Remplacez chaque GPIO (x3) ci-dessous par les numéros GPIO de votre configuration matérielle.
Voici les paramètres requis du module encodeur rotatif pour le Module de Message Préenregistré.
| meshtastic --set canned_message.inputbroker_pin_a GPIO meshtastic --set canned_message.inputbroker_pin_b GPIO meshtastic --set canned_message.inputbroker_pin_press GPIO meshtastic --set canned_message.inputbroker_event_cw UP meshtastic --set canned_message.inputbroker_event_ccw DOWN meshtastic --set canned_message.inputbroker_event_press SELECT meshtastic --set canned_message.rotary1_enabled True |
C'est tout ! Avec un encodeur rotatif fonctionnel et activé, vous êtes prêt à commencer la configuration du Module de Message Préenregistré.
