Home assistant au poignet

Bonjour, J’aimerais partager avec les possesseurs de montres Garmin (enfin de très nombreuses), cet excellent développement pour piloter HA depuis sa montre.

J’ai expérimenté plusieurs applications pour HA mais rien de bien probant, celle ci c’est tout l’inverse.
Grace à l’API de HA et un fichier JSON à personnaliser, on peut lancer une multitude de commande, switch, script, automatisation, scène, etc… (les remontées de sensors tel que les températures ne sont pas opérationnelles pour l’instant.
Cerise sur le gâteau, elle est traduite en grand nombre de langue dont celle de Molière.
La mise en œuvre est assez simple, le Readme est très bien conçu.

Bravos aux auteurs et concepteurs.

Bonne utilisation.

Ps: j’espère avoir bien classé le sujet, sinon ne pas hésiter à le déplacer.

2 « J'aime »

super. tu peux expliquer comment ca marche le fichier json?

Bonjour,
un exemple est donné sur le github, il suffit de le créer avec file editor ou vscode (addons), puis de le personnaliser avec tes entités.

Si tu connais un peu la programmation, il n’y a rien de sorcier , juste a respecter la syntaxe.
sur le Github , il y a un lien pour contrôler ton fichier créer en Json
Bon courage à toi

Bonjour,

J’arrive à installer l’Appli sur garmin en revanche cela ne déclenche pas les actions !
Ci-dessous le fichier JSON

{
  "$schema": "https://raw.githubusercontent.com/house-of-abbey/GarminHomeAssistant/main/config.schema.json",
  "title": "Maison",
  "items": [
    {
      "entity": "script.yyyy",
      "name": "Alarme ON/OFF",
      "type": "tap",
      "service" : "script.turn_on"
    },
    {
      "entity": "script.jxxxx",
      "name": "Jxxxx",
      "type": "tap",
      "service" : "script.turn_on"
    },
    {
      "entity": "light.dimmable_light_xx",
      "name": "Lampadaire Salon",
      "type": "toggle"
    },
    {
      "entity": "menu.light",
      "name": "Lumière",
      "title": "Lumière",
      "type": "group",
      "items": [
        {
          "entity": "light.dimmable_light_xx",
          "name": "Lampadaire Salon",
          "type": "toggle"
        },
        {
          "entity": "light.plafbureau",
          "name": "Bureau",
          "type": "toggle"
        }
      ]
    },
    {
      "entity": "switch.xxxx",
      "name": "TV",
      "type": "toggle"
    }
  ]
}

Bonjour,

il faut faire quelques vérifications pour essayer de cerner ton problème:

dans ton configuration.yaml est tu en default_config: si tu n’y es pas il faut activer l’api HA en mettant api: dans ta config yaml puis redémarrer HA ( totalement).

as tu bien placé le fichier json?, pour le savoir: dans ton navigateur tu tapes l’adresse suivante:
si ton répertoire du json est bien sous www de HA,et que ton dossier s’appelle garmin

http://homeassistant.local/local/garmin/tonfichier.json

homeassitant.local peut être remplacé par ton IP locale.

le JSON doit s’afficher à l’écran.
Si c’est le cas vérifie bien tes paramètres de ta montre:

- 1 l’ API key créer par le jeton de longue durée dans HA.
- 2 chemin Home Assistant API, e.g. https://nom_de_domaine/api
- 3 URL du JSON file, e.g. https://nom_de_domaine/local/garmin/.json
L’url de l’API et du JSON doivent être en https avec un certificat valide.

Pour info j’ai eu du mal pour copier le jeton API, j’ai réussi depuis le home assistant companion sur mon smartphone (peut-être un hasard).

j’attends ton retour, en cas de problème.

j’ai oublié, le fichier JSON semble bon, mais en cas de doute ne mettre qu’une seule action, cela simplifiera la lecture puis les essais…

Merci pour ton retour je suis en default_config:, je dois donc ajouter en plus api: dans ma config yaml ?
Le reste de ma config me semble correct.

non c 'est l’inverse pas d’api: si tu es en default_config

Si tu connais un peu linux tu essaies ceci

curl -X GET -H "Authorization: Bearer **ton jeton api** " \
       -H "Content-Type: application/json" \
       http://ip_locale:8123/api/states/binary_sensor.ton sensor

"ou encore"

curl -X GET -H "Authorization: Bearer **ton jeton api** " \
       -H "Content-Type: application/json" \
       https://ton_domaine.fr/api/states/binary_sensor.ton sensor

tu devrais avoir une réponse du genre

{"entity_id":"binary_sensor.ton sensor","state":"on","attributes":{"device_class":"presence","icon":"mdi:car","friendly_name":"presence voiture"},"last_changed":"2023-11-28T15:16:23.700038+00:00","last_updated":"2023-11-28T15:16:23.700038+00:00","context":{"id":"01HGB81E0M3H8F0xxxxxxxxxxx","parent_id":null,"user_id":null}}

Bonjour as tu réussi?
Merci de ton retour

Bonjour,

Je n’ai pas pris le temps de me pencher de nouveau dessus.
Voici mes paramètres GARMIN IQ

Je devrais avoir plus de temps la semaine prochaine :wink:
Merci pour ton aide.

Hello,

J’ai bien une réponse correct sous linux en tapant une commande curl.
En revanche quand j’essaie de déclencher une action via la montre j’ai le message « pas de réponse, vérifier la connexion internet » après 10s environ. :thinking:
Les URL sont correct, car si je fais une modif le menu ne s’affiche plus.
L’API key aussi > réponse commande curl sous linux !

Je n’ai plus d’idées :wink:

Bonjour, j’avoue je suis dépassé…
as tu essayé par les outils de développement onglet services d’envoyer la même commande sur un switch par ex swtitch turn on et choix de ton switch. le meme que le fichier Json.

Par ailleurs quelle type de montre as tu , j’ai une Venu2.

Sur la montre j’ai parfois des pertes de bluetooth et donc d’accès a internet. je relance un synchronisation par garmin connect et ça repart.

Moi aussi je sèche :stuck_out_tongue_winking_eye:

Je rentre dans l’appli et j’allume la lumière : (ça fonctionne parfaitement avec l’outil développement)

Message d’erreur :


Ces messages me paraissent bizarre car j’ai toujours ma connexion avec mon téléphone :confused:

Pour Info :J’ai une fenix 6 saphire

En fouinant sur les issues du github, j’ai trouvé vers ceci: Use Nabu Casa URL to use HA API? - ESPHome - Home Assistant Community

Sur la montre dans URL home assitant api : il faut mettre l’adresse nabucasa sans le port 8123 et son double point.

Enfin c’est que j’ai compris (merci google).

Une autre post dit que ta montre n’est pas compatible pour le moment mais vu ce tu présentes ce n’est plus le cas. Home Assistant App for Garmin - Mobile Apps - Home Assistant Community

J’espère que c’est la solution.

Salut,

J’avais lu ce post sur le forum en anglais :wink:
J’utilise bien :8123 à la fin de mon adresse nabu casa.
Je vais poster sur le forum en anglais aujourd’hui… À suivre.

Merci encore pour ton aide.

Il faut enlever 8123 l’adresse nabucasa est en https donc par défaut port 443.

1 « J'aime »

Si j’enlève le :8123 j’ai une erreur 400 au lancement de l’app

j’ai moi même nabucasa et je viens de faire l’essai cela fonctionne.

erreur 400:

Avec une erreur 400, il est difficile de déterminer ce qui s’est mal passé. Dans une certaine forme, la demande elle-même est défectueuse. Le protocole HTTP, du moins selon l’opinion du serveur Web, n’a pas été respecté correctement, c’est pourquoi la requête ne peut pas être modifiée. Le serveur a interprété la requête comme défectueuse ou même nocive. Par conséquent, il a empêché le chargement du site. Les raisons du message d’erreur sont souvent liées avec le navigateur Web utilisé ou sont dues à une erreur de la part de l’utilisateur :

pour info il y a une nouvelle version 1.5 qui modifie un peu le json pour les scripts.

Bonjour, j’ai lu et relu les différents posts, peux tu me diffuser , si tu es ok ton fichier json (en message privé).

j’ai lu qu’une simple virgule mal placé faisait une erreur 400, encore une piste à vérifier.

1 « J'aime »