Implementar HA con Traccar

Buenas a Todos!

Hoy presento un tutorial para integrar un Tracker gps que tengamos en el coche, por ejemplo en mi caso tengo un TK103B con una tarjeta SIM y conexión GPRS a la Orange Pi  (Raspebrry Pi) a la plataforma traccar, que de ello haré un manual mas adelante para los que queráis instalaros uno.

Antes de empezar es importante añadir unos archivos a nuestra carpeta de HA para que detecte la plataforma TRACCAR y con el nuestros trackers que tengamos allí registrados. Nos descargaremos la carpeta: custom_components y la descomprimimos en la raiz de HA (/local/home/homeassistant/.homeassistant/).

Siguiendo el tutorial, en este caso ya habremos hecho la instalación y la configuración de nuestro tracker con la plataforma traccar. Nos dirigiremos a nuestro archivo configuration.yaml de HA y añadiremos la siguiente frase a no ser que ya la tengamos puesta:

device_tracker: !include device_tracker_gps.yaml

Creamos el archivo o añadimos las siguientes lineas dentro del mismo:

- platform: traccar
  username: xxxx@xxx.com
  password: xxxxx
  host: http://127.0.0.1:8082
  scan_interval: 3

  • username: el usuario con el que entremos a la plataforma traccar, normalmente suele ser un mail.
  • password: la contraseña con la que entremos en el paso anterior.
  • host: si lo tenemos instalado en el mismo sitio que el HA lo pondremos como sale en el ejemplo.
  • scan_interval: la cantidad en segundos que queramos que HA vaya actualizando las posiciones del tracker.

Una vez añadido estas lineas, le haremos un reseteo a HA, en mi caso y siguiendo el tutorial de esta misma pagina: systemctl restart home-assistant@homeassistant.

Veremos que sinos desplazamos a la opción de la pantalla principal:  nos habrá detectado ya el tracker, de no ser así deberemos reiniciar la raspberry o similar entera ya que daremos tiempo a que HA contraste la información con la plataforma Traccar y así nos descubra el nuevo tracker.

Paralelamente con este paso si queremos tenemos la opción de generar zonas dentro del mapa de HA, para marcarle la zona de trabajo, del colegio del hijo/a, etc… para así poder generar automations según la zona que este o que el HA nos de notificaciones telegram que esta en una zona o en la otra el coche.

Volvemos a configuration.yaml y le creamos la siguiente frase sino la tenemos creada ya:

zone: !include zones.yaml

y creamos el correspondiente archivo zones.yaml donde ingresaremos las zonas del mapa:

- name: Trabajo
  latitude: XX.XXXX
  longitude: -X.XXXX
  radius: 120
  icon: mdi:worker

  • name: Como se llamara esa zona en concreto.
  • radius: este es el radio en metros que queramos delimitar nuestra zona.
  • icon: es el icono que nos aparecera en el mapa, en este caso nos saldra: 
  • latitude y longuitude las podremos hallar fácilmente con google maps dando un clic en la zona que queramos. Ejemplo:

Este es un ejemplo de zona de trabajo, pero podremos añadir tantas como queramos.

Una vez realizado el paso anterior nos dirijriemos a crear un template para que nos de los datos que queramos, en este caso crearemos uno para sacar las informaciones de si esta conectado el tracker, la velocidad que lleva y si esta o no fuera de casa.

Crearemos unos sensores dentro del archivo sensors.yaml o crearemos uno en la carpeta sensors, dependiendo de como lo tengamos dispuesto, en mi caso tengo una carpeta y dentro de la misma crearemos sensors_gps.yaml y dentro del mismo pegaremos esto:

  • En el primer sensor conseguiremos que nos de el estado como conectado o desconectado

- platform: template
  sensors:
    coche_status:
      friendly_name: 'Estado'
      value_template: >-
        {% if (states.device_tracker.qashqai.attributes.status == 'online') %}
        Conectado
        {% elif (states.device_tracker.qashqai.attributes.status == 'offline') %}
        Desconectado
        {% else %}
        Desconocido
        {% endif %}

  • En el segundo estado conseguimos la dirección exacta y el icono de donde se encuentra el tracker

    coche_address:
      friendly_name: 'Direccion'
      icon_template: mdi:google-maps
      value_template: '{{ states.device_tracker.qashqai.attributes.address }}'

  • En el tercer estado conseguimos la velocidad actual del tracker con icono y KM/H

    coche_speed:
      friendly_name: 'Velocidad'
      icon_template: mdi:speedometer
      unit_of_measurement: 'Km/h'
      value_template: '{{ states.device_tracker.qashqai.attributes.speed }}'

  • En el cuarto estado le decimos que cuando este en casa lo ponga como En casa o fuera de ella

    coche_state:
      friendly_name: 'Lugar'
      value_template: >-
        {% if (states.device_tracker.qashqai.state == 'home') %}
          En Casa
        {% elif (states.device_tracker.qashqai.state == 'not_home') %}
          Fuera de Casa
        {% else %}
          '{{ states.device_tracker.qashqai.state }}'
        {% endif %}

Una vez realizado este paso, estos sensores los meteremos en un grupo en el archivo group.yaml y si lo queremos en la pantalla principal deberemos copiar lo siguiente:

  default_view:
    view: yes
    icon: mdi:home
    entities:
      - group.gps_coche

  gps_coche:
    name: GPS Tracker
    icon: mdi:car-connected
    entities:
      - sensor.coche_status
      - sensor.coche_address
      - sensor.coche_speed
      - sensor.coche_state

una vez terminado lo cerramos, guardamos los cambios y reiniciamos el HA y ya nos saldrá la información en la pantalla principal.

Así nos quedaría:

Si queremos ya que nos lo ponga en una pestaña o grupo a parte os recomiendo que os paséis por el tutorial de grupos y pestañas de mi amigo @Gubenote

Un saludo a todos! y espero que os haya gustado!

Hasta la próxima!

 

 

También te podría gustar...

Deja un comentario