IMPORTANT
S’il n’y a pas d’information sur la mise à jour, c’est que celle-ci concerne uniquement de la mise à jour de documentation, de traduction ou de texte.
Ce plugin pour Jeedom permet d’envoyer et de recevoir des SMS via un modem GSM/4G branché sur votre installation (clé USB Huawei, modem SimCom type SIM7600G-H ou modem Quectel type BG96). Il permet notamment :
/dev/ttyUSB* ou /dev/serial/by-id/...)La page de configuration est découpée en sections. Pour y accéder : Plugins > Gestion des plugins > SMS 4G, puis l’icône de configuration.
BON À SAVOIR
Une icône d’avertissement jaune à côté d’un paramètre indique qu’il faut redémarrer le démon après l’avoir modifié. Les sections “Plugin” et “Dépendances” ne concernent pas le démon : voir leur description.
Ces options ne servent qu’en cas de problème à l’installation. Il faut relancer les dépendances après avoir enregistré le paramètre.
Port SMS : port série du modem. Privilégiez un port /dev/serial/by-id/... (stable) plutôt qu’un /dev/ttyUSB* (numérotation pouvant changer après un redémarrage ou un rebranchement)
IMPORTANT : certaines clés 3G/4G démarrent en mode “modem” par défaut et non en mode GSM. Il faut, via le logiciel de votre fabricant, basculer la clé en mode GSM (ou texte, ou série) pour qu’elle soit utilisable par ce plugin.
Envoi
Réception et réponses
Ces réglages s’appliquent quand le modem est perdu (débranchement, redémarrage…). Si le port du modem réapparaît, le plugin se reconnecte aussitôt, sans attendre ces délais.
Cette section sert à vérifier que le modem reçoit bien les SMS et leurs accusés (voir la FAQ “Les accusés de réception ne reviennent plus”).
Un équipement SMS regroupe une liste de numéros avec lesquels échanger des SMS : par exemple un équipement “Famille” et un autre “Alertes”. Vous le créez depuis la page du plugin, avec le bouton “Ajouter”.
Ce sont les réglages habituels de Jeedom : nom de l’équipement, objet parent, catégorie, et les options Activer et Visible.
Ces trois cases décident de ce que devient un SMS reçu.
Désactiver les interactions
Autoriser les messages de numéros inconnus
Ajouter les numéros inconnus aux commandes
Cette case n’agit que si la précédente est cochée.
L’onglet “Commandes” liste toutes les commandes de l’équipement (voir “Commandes disponibles” plus bas). La plupart sont créées par le plugin : “Message”, “Expéditeur”, “Reçu le”, “Envoyer message à”, ainsi que “Statut” et “Remis” pour chaque numéro. Vous n’avez à renseigner que vos numéros : le bouton “Ajouter un numéro” ajoute une ligne, et chaque ligne devient une commande d’envoi.
| Champ d’une ligne de numéro | Rôle |
|---|---|
| Nom | Nom de la commande d’envoi (une personne, un groupe…). C’est aussi ce qu’affiche “Expéditeur” quand cette personne vous écrit |
| Utilisateur | Facultatif. Les interactions répondent avec le profil de cet utilisateur Jeedom (réponses personnalisées) |
| Numéro(s) | Le numéro de téléphone, avec ou sans le préfixe international (+33612345678 et 0612345678 désignent le même numéro). Plusieurs numéros se séparent par un point-virgule : le message est alors envoyé à chacun, et un SMS reçu de l’un d’eux est attribué à cette ligne |
Le plugin crée deux sortes d’équipements : les équipements SMS (un par liste de numéros) et un équipement “Modem”, unique, créé automatiquement au démarrage du démon.
La commande Statut indique, pour chaque commande d’envoi, où en est le dernier SMS :
| Statut | Signification |
|---|---|
| En attente d’envoi | Le SMS n’a pas pu partir (modem déconnecté, absence de réseau). Il sera retenté pendant la durée de vie réglée |
| Envoyé | Le réseau a accepté le SMS |
| Retardé | Le téléphone du destinataire est éteint ou hors réseau (nécessite l’accusé de réception) |
| Livré | Le destinataire a reçu le SMS (nécessite l’accusé de réception) |
| Non remis | Le réseau n’a pas pu livrer le SMS (nécessite l’accusé de réception) |
| Échec d’envoi | Le modem a refusé l’envoi |
| Expiré | Le SMS n’est pas parti avant la fin de sa durée de vie |
Avec plusieurs numéros, “Statut” donne un résumé de chacun (ex : “Livré 2/3 : numéro ✓, numéro (envoyé)…”).
La commande Remis est un indicateur (0/1) pour vos scénarios. Elle vaut 1 quand le destinataire a reçu le SMS (avec plusieurs numéros : quand tous l’ont reçu) et 0 dès qu’un message n’arrive pas (non remis, échec d’envoi, expiré). Sans accusé de réception demandé, elle ne change pas.
Il regroupe tout ce qui concerne le modem lui-même. Les commandes marquées “masquée” n’apparaissent pas par défaut : affichez-les dans les commandes de l’équipement.
État de la connexion
| Commande | Rôle |
|---|---|
| Signal | Force du signal réseau, de 0 à 31 (norme GSM) : plus la valeur est élevée, meilleure est la réception. La valeur -1 signifie qu’il n’y a aucun signal |
| Qualité du signal | Description du signal en toutes lettres : Excellent (20 et plus), Bon (15 et plus), Moyen (10 et plus), Faible (en dessous de 10) ou Aucun signal |
| Connexion | État de la connexion au réseau mobile, en texte lisible (ex : “Connecté”, “Reconnexion 2/10”, “Redémarrage du modem”) |
| Connexion (Code) | La même information sous forme numérique, pour vos scénarios (voir ci-dessous) |
| En Ligne | Indicateur (0/1) du bon fonctionnement de la connexion, pratique pour un historique simple ou une alerte |
| Opérateur | Nom de l’opérateur auprès duquel le modem est enregistré (masquée) |
Valeurs de Connexion (Code) :
| Code | Signification |
|---|---|
| 0 | Déconnecté |
| 1 | Reconnexion ou redémarrage du modem en cours |
| 2 | Recherche du réseau |
| 3 | Connexion en cours |
| 4 | Connecté |
Actions et supervision
| Commande | Rôle |
|---|---|
| Redémarrer le modem | Redémarre le modem (environ 30 secondes sans service) avec la commande de son fabricant. Masquée, avec une demande de confirmation. Les SMS en attente partent une fois le modem revenu. Si le modem refuse toutes les commandes, un message l’indique dans le centre de messages de Jeedom |
| Auto-test | Lance l’auto-test tout de suite (masquée) |
| Dernier auto-test | Résultat du dernier auto-test, utilisable dans un scénario d’alerte (masquée) |
Les valeurs possibles de Dernier auto-test :
Un échec peut être suivi de “modem redémarré” ou de “intervention nécessaire” selon le cas, et il écrit aussi un message dans le centre de messages de Jeedom.
Diagnostic
| Commande | Rôle |
|---|---|
| Commande AT | Envoie une commande au modem (voir la FAQ sur les commandes AT) |
| Statut AT | Résultat de la commande (réussie, refusée, sans réponse…) |
| Réponse AT | Réponse du modem |
Ces trois commandes sont masquées et ne fonctionnent que si le “Mode diagnostic” est activé dans la configuration.
Une fois les interactions activées sur un équipement, vous pouvez dialoguer avec Jeedom directement par SMS :
- Question : “Quelle est la température de la chambre ?”
- Réponse : “16.3°C”
Le plugin reconnaît le fabricant du modem et adapte son comportement.
| Famille | Exemples | Particularités |
|---|---|---|
| SimCom 4G/LTE | SIM7600G-H | Forçage du mode 4G possible. Les SMS longs sont reçus en temps réel |
| Huawei 4G | E3372h-153 et E3372s-153 (testées avec une carte SIM Orange) | Forçage du mode 4G possible. La clé doit être en mode “série” (AT) et non en mode “HiLink” : le basculement se fait généralement avec usb_modeswitch
|
| Quectel | BG96 (testé avec une carte SIM Bouygues), EC25-EUX (testé avec une carte SIM Free) | Forçage du mode 4G possible. Le BG96 utilise le réseau LTE-M (CAT-M1), le EC25-EUX la 4G standard |
| Autre fabricant | Réglages génériques, qui fonctionnent souvent, mais sans forçage du mode 4G (voir la FAQ “Mon modem n’est pas dans la liste”) |
ATTENTION
Les clés et modems suivants reposent sur la 2G/3G. Avec l’arrêt progressif de ces réseaux par les opérateurs, ils ne sont pas garantis de fonctionner et ne sont donc pas recommandés pour une nouvelle installation :
- Huawei E3531, qui peut s’annoncer comme E173 (testée avec une carte SIM Free, en 2G/3G sur le réseau Orange)
- Huawei E220
- Alcatel One Touch X220L
- HSDPA 7.2 Mbps 3G Wireless
- USB SIM800C (vitesse 9600)
Tous les modems 4G ne captent pas les mêmes fréquences. En France, deux bandes « basses » pénètrent bien dans les bâtiments et en zone rurale : la bande 800 MHz (B20), utilisée par Orange, SFR et Bouygues Telecom, et la bande 700 MHz (B28), indispensable chez Free Mobile.
| Modem | Bandes basses | Free Mobile | Orange | SFR | Bouygues Telecom |
|---|---|---|---|---|---|
| SIM7600G-H | B28 + B20 | Testé | Compatible | Compatible | Compatible |
| SIM7600E-H | B20 seulement | Déconseillé | Compatible | Compatible | Compatible |
| Huawei E3372h-153 | B20 seulement | Déconseillé | Testé | Compatible | Compatible |
| Huawei E3372s-153 | B20 seulement | Déconseillé | Testé | Compatible | Compatible |
| Quectel EC25-EUX | B28 + B20 | Testé | Compatible | Compatible | Compatible |
| Quectel BG96 (LTE-M) | B28 + B20 | Incompatible | Testé (LTE-M à confirmer) | Non testé | Testé |
Les marques d’un opérateur utilisent son réseau : Sosh (Orange), RED by SFR, B&YOU (Bouygues Telecom). Les bandes sont indiquées d’après les fiches des constructeurs : vérifiez celle de votre modèle exact, car les suffixes (E, G, H…) changent les bandes prises en charge.
ASTUCE
Pour une nouvelle installation, le SIM7600G-H est le choix le plus simple : il couvre toutes les bandes utiles en France et fonctionne avec tous les opérateurs.
ATTENTION — Free Mobile
Free n’utilise pas la bande 800 MHz (B20) : il s’appuie sur la bande 700 MHz (B28) pour pénétrer dans les bâtiments. Avec une SIM Free, un modem sans B28 (SIM7600E-H, Huawei E3372h-153 et E3372s-153) peut avoir une couverture réduite à l’intérieur ou en zone rurale. Non testé.
ATTENTION — Quectel BG96 et LTE-M
Le BG96 n’utilise pas la 4G classique mais le LTE-M (CAT-M1), un réseau pour objets connectés que l’opérateur doit avoir activé :
- Bouygues Telecom : testé, fonctionne avec une SIM grand public.
- Free Mobile : ne fonctionne pas. Plusieurs utilisateurs confirment que le BG96 ne s’y connecte pas en 4G. Avec une SIM Free, préférez par exemple un SIM7600G-H ou un EC25-EUX.
- Orange (Sosh) : des utilisateurs signalent un bon fonctionnement en 2025, à une époque où la 2G fonctionnait encore. Rien ne prouve que le BG96 passait par le LTE-M : il pourrait ne plus fonctionner une fois la 2G arrêtée.
- SFR : le LTE-M est surtout proposé dans ses offres pour objets connectés (M2M). Non testé avec une SIM grand public, qui peut être refusée par le réseau.
En cas de doute, choisissez un modem 4G standard comme le SIM7600G-H.
Cause fréquente : une alimentation USB insuffisante. L’émission radio demande brièvement beaucoup de courant, et une chute de tension peut faire redémarrer le modem.
D’origine, cette clé est souvent livrée en mode “HiLink” : elle se comporte comme un routeur et n’expose aucun port série. Le plugin a besoin du mode “série” (AT).
Le basculement se fait généralement avec usb_modeswitch. Une fois la clé basculée, vérifiez qu’elle expose bien un port série (/dev/ttyUSB*).
Ce problème concerne surtout les anciennes clés USB Huawei. Vérifiez que brltty n’est pas installé (sudo apt-get remove brltty pour le supprimer) — ce paquet, toujours présent par défaut sur Debian 12/13, reconnaît parfois à tort certaines clés GSM comme des terminaux braille, ce qui bloque leur détection normale.
Vérifiez qu’aucun autre programme ne communique déjà avec le port série, en particulier le service ModemManager (souvent installé par défaut sur certaines distributions), qui peut se connecter automatiquement au modem et bloquer son accès. Utilisez la section “Système” de la configuration du plugin pour vérifier son état et le désactiver si besoin.
Vérifiez bien le code avant de le renseigner dans la configuration : après plusieurs échecs, la carte SIM se bloque et demande un code PUK (fourni par votre opérateur) pour être débloquée. En cas de doute, il est plus sûr de désactiver complètement le code PIN sur la carte SIM (voir ci-dessous) plutôt que de le laisser renseigné.
Un port série ne peut être utilisé que par un seul programme à la fois. Le plugin utilise en permanence celui du modem : une connexion manuelle en parallèle sera refusée ou perturbera les échanges.
Pour une simple consultation (signal, réseau…), utilisez plutôt le mode diagnostic (voir la question “Puis-je envoyer une commande AT au modem sans arrêter le démon ?”).
Pour désactiver le code PIN, le plus simple est d’insérer la carte SIM dans un téléphone et de le désactiver depuis ses réglages.
La suite s’adresse aux utilisateurs avancés. Un modem comme le SIM7600G-H ou le BG96 expose plusieurs ports série (modem, diagnostic, AT, GPS…) : c’est le port “AT” qu’il faut utiliser, généralement celui déjà renseigné dans la configuration du plugin.
Sous Linux, avec picocom :
sudo apt-get install -y picocom
sudo picocom -b 115200 /dev/serial/by-id/xxx
Tapez AT puis Entrée : le modem doit répondre OK. Pour désactiver le code PIN (remplacez 1234 par votre code actuel) :
AT+CLCK="SC",0,"1234"
Quittez picocom avec Ctrl+A puis Ctrl+X.
Sous Windows, avec l’outil PuTTY (gratuit) :
AT puis Entrée (le modem doit répondre OK), puis la même commande AT+CLCK="SC",0,"1234" pour désactiver le PINUne fois terminé, vérifiez dans la configuration du plugin que le démon fonctionne (statut “OK”).
Si un SMS envoyé en plusieurs parties liées n’arrive jamais en entier (partie perdue en route, coupure réseau…), le plugin n’en transmet pas la moitié : après le délai défini par le réglage “Attente des parties d’un SMS long (s)”, le message est abandonné et un message d’erreur apparaît dans les journaux (nombre de parties reçues sur le nombre attendu).
Cela peut arriver à un modem après un long fonctionnement, sans aucun message d’erreur.
Redémarrer le modem règle le problème : utilisez la commande “Redémarrer le modem”, masquée par défaut (affichez-la dans les commandes de l’équipement “Modem”).
Si Jeedom indique que le modem n’accepte aucune commande de redémarrage, joignez le journal sms4gd (niveau Debug, voir la question “Que joindre à une demande d’aide sur le forum ?”) à votre demande d’aide en précisant le modèle de votre modem : le redémarrage de ce modèle devra être adapté.
Pour détecter ce cas automatiquement, activez l’auto-test dans la section “Supervision” de la configuration :
L’auto-test envoie un SMS au numéro de la SIM et attend environ une minute qu’il revienne. Si ce message apparaît :
Le bouton lit le numéro enregistré sur la carte SIM. Beaucoup d’opérateurs ne l’y écrivent pas : le plugin affiche alors “La carte SIM ne connaît pas son numéro”, et il faut le saisir à la main (+33…).
Dans les autres cas, le message donne la raison :
AT+CNUM avec le mode diagnostic pour voir la réponse du modemOui, pour les commandes de consultation et quelques réglages sûrs.
Comment faire
Ce qui est accepté
Les commandes de consultation sont acceptées : celles qui lisent un réglage (elles se terminent par ?, comme AT+COPS? pour l’opérateur) et les commandes d’information (identité du modem, signal, dernière erreur du réseau…), y compris celles propres à chaque fabricant. Les réglages, eux, sont limités à quelques-uns sans risque.
Les autres commandes (changement de mémoire des SMS, suppression, appel…) sont refusées automatiquement : la raison s’affiche dans “Réponse AT”.
Pour savoir ce que votre modem propose, envoyez AT+CLAC : il renvoie la liste de toutes ses commandes (les modems SimCom ne la prennent pas en charge).
Une réponse ERROR signifie que le modem ne connaît pas la commande envoyée. Pour savoir quelles commandes envoyer selon le problème, voir la question suivante.
Ces commandes s’envoient avec le mode diagnostic (voir la question précédente). Lisez la réponse dans “Réponse AT”. Si le modem répond ERROR, il ne connaît pas la commande : essayez la suivante, ou l’équivalent propre à votre fabricant quand il est indiqué.
AT+CPIN? : état de la carte SIM. READY signifie qu’elle est prête ; sinon un code PIN ou PUK est demandé, ou la carte est absenteAT+CREG? et AT+CEREG? : enregistrement sur le réseau (2G/3G, puis 4G). Le deuxième nombre de la réponse donne l’état : 1 ou 5 = enregistré, 2 = recherche en cours, 3 = refusé par le réseau. Certains modems ne connaissent pas AT+CEREG?
AT+COPS? : opérateur auprès duquel le modem est enregistréAT+CPSI? (SimCom : état du réseau et bande utilisée), AT^SYSINFOEX (Huawei : état du service et mode du réseau), AT+QNWINFO (Quectel : technologie, opérateur et bande)Si “Forcer le mode 4G uniquement” est coché, vérifiez aussi qu’il y a de la couverture 4G à l’endroit du modem.
AT+CSQ : force du signal de 0 à 31 (99 = inconnue, affichée -1 par la commande “Signal”), la même information que cette commandeAT+CESQ (si le modem la connaît) : qualité du signal 4GAT+QCSQ : qualité du signal pour le réseau utiliséAT+CSCA? : numéro du centre SMS. S’il est vide, renseignez la “Passerelle SMS (SMSC)” dans la configurationAT+CEER (si le modem la connaît) : cause de la dernière erreur du réseau, en texteVoir d’abord la question “Les accusés de réception ne reviennent plus”. Vous pouvez aussi envoyer :
AT+CNMI? : mode de notification des SMS reçus. Sa valeur dépend du modem : joignez-la à votre demande d’aide plutôt que de chercher à l’interpréterAT+CPMS? : mémoires SMS du modem. Pour chacune, un premier nombre (utilisé) égal au second (capacité) signifie que la mémoire est pleinePour que le problème puisse être analysé du premier coup :
sms4gd en niveau Debug, après avoir coché “Masquer les numéros dans les trames brutes (PDU)” (voir la question sur les journaux, plus bas)ATI (modèle et version du modem), AT+CPIN?, AT+CEREG?, AT+COPS? et AT+CEER
Le plugin reconnaît le fabricant du modem (SimCom, Huawei, Quectel). Un autre fabricant est géré avec des réglages génériques, qui fonctionnent souvent, mais sans le forçage du mode 4G.
Pour aider à la prise en charge d’un modem :
sms4gd en niveau Debug, puis redémarrez le démonModem identified et Diagnostic du journalCe plugin nécessite désormais Debian 12 (Bookworm) minimum. Si votre serveur Jeedom tourne encore sous Debian 11 (Bullseye), une mise à jour du système est nécessaire pour installer ou utiliser ce plugin.
Les numéros de téléphone (avec ou sans “+”), la clé API et le code PIN sont automatiquement masqués dans les journaux du plugin avant d’être écrits. Deux choses sont à connaître avant de partager un journal :
Relisez dans tous les cas un journal avant de le partager, par exemple sur le forum.