Réception d’un collier GPS 4G (modèle MP50G) pour un projet perso de clôture virtuelle. Je colle la conf SMS générique GT06 trouvée dans les forums Traccar. Le tracker répond « OK ». Côté serveur : silence radio.
Symptôme
SMS envoyé : APN,iot.1nce.net#
Tracker répond : SET APN OK
SMS envoyé : SERVER,1,<ip>,5023,0#
Tracker répond : SET SERVER OK
STATUS# confirme INTERNET: SUCCESS et GPS: FIXED,8. Mais sur Traccar (port 5023, protocole GT06) : aucune connexion entrante. Le tracker parle dans le vide.
Cause
La syntaxe SMS GT06 générique des forums n’est pas universelle. MiCODUS a son propre dialecte ET son propre protocole, écouté par Traccar sur un port différent.
Syntaxe SERVER (extrait de la notice MP50G) :
SERVER,1,<domaine>,<port># ← avec un domaine
SERVER,0,<IP>,<port># ← avec une IP brute
Différence avec le GT06 forum-classique SERVER,1,<ip>,5023,0# : un argument terminal en moins, et le 1/0 initial inversé selon domaine ou IP. Si tu colles la syntaxe GT06, ça donne SET SERVER OK mais le parsing côté firmware tombe à côté — le tracker conserve sa conf cloud d’usine.
Port Traccar : le protocole nommé micodus écoute par défaut sur le port 5174, pas 5023. Mon docker-compose.yml n’exposait que 5023/5013/5055 — d’où le silence.
Solution
- Lire la notice du tracker avant de configurer (pas Google, pas les forums)
- Ajouter le port micodus au compose :
services:
traccar:
ports:
- "5174:5174" # MiCODUS (TCP)
- Envoyer la syntaxe du fabricant :
SERVER,0,<ip>,5174#
Vérifier avec PARAM# qui doit retourner ton IP et 5174. Tant que la réponse contient encore d.micodus.net ou 7700 (cloud par défaut), la commande SERVER n’a pas pris — re-vérifier la syntaxe.
Lessons learned
- « GT06 » est un terme générique ; chaque famille de firmware (Concox, MiCODUS, Eelink…) a sa variante de syntaxe SMS
- Traccar a un protocole
micodusdédié sur le port 5174 — ne pas supposer que tout tracker AliExpress arrive sur 5023 SET XXX OKne valide pas la sémantique : le firmware accuse réception de la commande sans vérifier que les arguments sont sensés- Toujours faire un
PARAM#après config pour lire la conf effective stockée, pas juste se fier auSET OK - La notice du tracker fait foi sur la syntaxe SMS — les forums et blogs Traccar mélangent les familles sans le dire