merci j’ai pu solutionner mon soucis. tout fonctionne maintenant
Bonjour, je me permets de faire appel à vos connaissances concernant le plug-in PSA.
J’ai pu faire l’installation et tout fonctionne correctement, cependant il y a régulièrement des défauts de connexion.
Et j’ai remarqué que cela venait de quand il fallait que je rentre le code PIN à quatre chiffres sur l’application smartphone.
Il semblerait que le plug-in sous home assistant Ne gère pas cela ?
Avez-vous également ce problème ?
Comment gérez vous pour le code pin lorsque qu’il est demandé ?
Merci à vous
Marque le post qui t’as aidé comme solution.
Merci
Salut,
Après une restauration d’une sauvegarde, impossible de demarrer PSA Car controler.
J’ai desinstallé, restauré des savergardes ou autre, bien configurer le sur 5000 mais impossible a lancer.
Il avait pourtant bien fonctionné jusqu’a present…
Des idées ?
Salut à tous,
Pas d’avis sur mon pb ?
J’ai réinstallé l’addon mais rien n’y fait !
J’ai refait le fichier configuration.yaml qui semble correct.
Regarde mon message, je pense que sa arrangerais ton problème.
Tu es un génie !!!
Je cherche depuis lundi et maintenant ça fonctionne.
J’ai déjà vidé le cache, redémarré mais pas débranché le PI.
Bonjour,
AsthomV, pourrais tu dire comment tu as configuré ton C5 pour que cela fonctionne ?
J’ai un e208 et une C5.
- La 208 j’arrive à configurer.
- La C5 seule impossible à remonter les infos.
- Et alors les 2 ensemble…
Bonjour,
Désolé je ne suis pas souvent sur le forum.
Voilà ce que j’ai du mettre pour le C5 dans les sensors:
# C5
- platform: rest
name: c5
resource: http://xxx.xx.xx.xx:5000/get_vehicleinfo/VOTREVIN?from_cache=1
scan_interval: 5
timeout: 30
value_template: 'OK'
json_attributes:
- energy
- timed_odometer
- battery
- last_position
- platform: template
sensors:
c5_battery_voltage:
friendly_name: " Tension de batterie"
unit_of_measurement: "V"
value_template: '{{ states.sensor.c5.attributes["battery"]["voltage"] * 4 }}'
c5_battery_level:
friendly_name: "Niveau de batterie"
unit_of_measurement: "%"
value_template: '{{ states.sensor.c5.attributes["energy"][0]["level"] }}'
c5_battery_autonomy:
friendly_name: "Autonomie"
unit_of_measurement: "km"
value_template: '{{ states.sensor.c5.attributes["energy"][0]["autonomy"] }}'
c5_fuel_autonomy:
friendly_name: "Autonomie essence"
unit_of_measurement: "km"
value_template: '{{ states.sensor.c5.attributes["energy"][1]["autonomy"] }}'
c5_charging_status:
friendly_name: "Statut de charge"
value_template: '{{ states.sensor.c5.attributes["energy"][0]["charging"]["status"] }}'
# Uncomment for miles instead of km
c5_mileage:
friendly_name: "Kilometrage"
unit_of_measurement: "km"
value_template: "{{ ((state_attr('sensor.c5', 'timed_odometer')['mileage']) ) | round(2)}}"
c5_locationlatitude:
friendly_name: "latitudec5"
value_template:
"{{ ((state_attr('sensor.c5', 'last_position').geometry.coordinates[0]) ) }}"
c5_locationlongitude:
friendly_name: "longitudec5"
value_template:
"{{ ((state_attr('sensor.c5', 'last_position').geometry.coordinates[1]) ) }}"
C’était le plus compliqué à trouver car les emplacements des informations ne sont pas les mêmes que les autres véhicules électriques. J’ai ajouté également l’autonomie essence.
J’espère que ça t’aidera!
et ça dans le fichier config:
# c5 WakeUp
rest_command:
c5_wakeup:
url: http://xxx.xx.xx.xx:5000/wakeup/VOTREVIN
Merci.
Pour le fichier à mettre dans les sensors. Tu as mis dans les 2 ?
Et dans le configuration.yaml tu as mis que ça ?
Mais j’ai tj une erreur bizarre qui fait référence au pourcentage de batterie.
Alors il y a ça en plus dans le config qui va solutionner ton problème je pense:
# c5 communication
switch:
- platform: command_line
switches:
c5_change_threshold:
friendly_name: "Seuil fin charge (100%-->80%)"
command_on: curl -s "http://xxx.xx.xx.xx:5000/charge_control?vin=VOTREVIN&percentage=80"
command_off: curl -s "http://xxx.xx.xx.xx:5000/charge_control?vin=VOTREVIN&percentage=100"
c5_change_charge_hour:
friendly_name: "fin de charge à 7h26"
command_on: curl -s "http://xxx.xx.xx.xx:5000/charge_control?vin=VOTREVIN&hour=7&minute=26"
command_off: curl -s "http://xxx.xx.xx.xx:5000/charge_control?vin=VOTREVIN&hour=0&minute=0"
c5_clim:
friendly_name: "Preconditionnement"
command_on: curl -s "http://xxx.xx.xx.xx:5000/preconditioning/VOTREVIN/1"
command_off: curl -s "http://xxx.xx.xx.xx:5000/preconditioning/VOTREVIN/0"
Tu peux changer l’heure de fin de la charge programmé bien sûr (moi 7h26)
Merci je n’ai plus d’erreur…
Et pour le fichier des sensor ?
Tu as mis dans les 2 ?
moi je n’ai pas le dossier sensor. C’est toi qui l’a créé? normalement c’est le sensor.yaml à remplir uniquement. Tout fonctionne ou il te manque encore des choses?
Il 'y a pas d’obligation à avoir un fichier séparé, ni avoir un répertoire. ça dépends des directives !include_dir_named
ou !include
contenues dans le configuration.yaml
Par contre, il faut éviter de mélanger les méthodes, sinon c’est vite le souci
Tu as raison, c’est bien moi qui ai créé ce dossier sensor (seul)…
Je l’ai viré oups ! Celle là elle est pour moi
Je vais mettre tout ça a jour et pluis comme je veux remonter les données de ma e208 et de ma C5 hybride, il y un peu de configuration.
En tous cas dans un 1er temps, je ne trouve que les entités pour ma C5 :
qui correspond à
Il faut que je fouine
Et je reviendrai vers vous.
alors oui comme dit Pulpy, vérifie que tu as bien « sensor: !include sensor.yaml » (et vérifie bien l’orthographe)
Sinon mets tout ce que j’ai mis dans sensors.yaml directement dans ton fichier config.yaml et ça fonctionnera
Je regarde tout ça.
Merci
Salut,
Ayant mis le bazard, j’ai reconfiguré que pour ma e-208.
Cela à l’air de refonctionner pour elle. mais je n’ai pas dit mon dernier mot pour rajouter ma C5 et avoir les 2 véhicules
Voici mon config.yaml
# peugeot communication
switch:
- platform: command_line
switches:
e208_change_threshold:
command_on: curl -s "http://192.168.1.131:5000/charge_control?vin=MON VIN&percentage=80"
command_off: curl -s "http://192.168.1.131:5000/charge_control?vin=MON VIN&percentage=100"
e208_change_charge_hour:
command_on: curl -s "http://192.168.1.131:5000/charge_control?vin=MON VIN&hour=5&minute=0"
command_off: curl -s "http://192.168.1.131:5000/charge_control?vin=MON VIN&hour=0&minute=0"
e208_clim:
command_on: curl -s "http://192.168.1.131:5000/preconditioning/MON VIN/1"
command_off: curl -s "http://192.168.1.131:5000/preconditioning/MON VIN/0"
command_state: 'curl -k --silent "http://192.168.1.131:5000:5000/get_vehicleinfo/MON VIN?from_cache=1"'
value_template: >
{{ value_json.preconditionning.air_conditioning.status == 'Enabled' }}
icon_template: >-
{% set value = value_json.preconditionning.air_conditioning.status %}
{% set switch = states('switch.e208_clim') %}
{% if value == 'Enabled' %}
mdi:car-defrost-front
{% elif value == 'Disabled' or value == 'Finished' %}
mdi:air-conditioner
{% else %}
mdi:alert
{% endif %}
command_timeout: 180
sensor PSA:
- platform: rest
resource_template: http://192.168.1.131:5000/get_vehicleinfo/MON VIN?from_cache=1
scan_interval: 60
timeout: 30
verify_ssl: false
name: PSA
device_class: timestamp
value_template: "{{ value_json.energy[0].updated_at }}"
json_attributes:
- energy
- kinetic
- timed_odometer
- last_position
- preconditionning
template:
binary_sensor:
- name: e208 Alimentation
unique_id: c5f46109-4cda-49b2-8c11-2a6b5d233aae
state: >-
{{ state_attr('sensor.psa', 'energy')[0].charging.plugged }}
device_class: connectivity
icon: >-
{% if state_attr('sensor.psa', 'energy')[0].charging.plugged %}
{% if state_attr('sensor.psa', 'energy')[0].charging.charging_mode == 'Slow' %}
mdi:ev-plug-type2
{% elif state_attr('sensor.psa', 'energy')[0].charging.charging_mode == 'Quick' %}
mdi:ev-plug-ccs2
{% endif %}
{% else %}
mdi:power-plug-off-outline
{% endif %}
- name: e208 Déplacement
unique_id: dc7f3ff8-ad77-42d4-8523-ddec9dc821e0
state: >-
{{ state_attr('sensor.psa', 'kinetic').moving }}
device_class: moving
attributes:
latitude: "{{ state_attr('sensor.psa', 'last_position').geometry.coordinates[1] }}"
longitude: "{{ state_attr('sensor.psa', 'last_position').geometry.coordinates[0] }}"
sensor:
- name: e208 Charge
unique_id: 8fbe0b19-447e-4e0b-b1c9-2d855437e63f
state: >-
{% set value = state_attr('sensor.psa', 'energy')[0].charging.status %}
{% if value == 'Failure' %}
Defaut
{% elif value == 'InProgress' %}
En charge
{% elif value == 'Stopped' %}
Pause
{% elif value == 'Finished' %}
Terminé
{% elif value == 'Disconnected' %}
Déconnecté
{% else %}
Inconnu
{% endif %}
icon: >-
{% set value = state_attr('sensor.psa', 'energy')[0].charging.status %}
{% if value == 'Failure' %}
mdi:alert
{% elif value == 'InProgress' %}
mdi:play
{% elif value == 'Stopped' %}
mdi:pause
{% elif value == 'Finished' %}
mdi:stop
{% else %}
mdi:power-plug-off-outline
{% endif %}
- name: e208 Batterie
unique_id: acf1f4f5-4180-43ba-9d1c-feb978f6b1eb
state: >-
{{ state_attr('sensor.psa', 'energy')[0].level }}
unit_of_measurement: "%"
device_class: battery
- name: e208 Kilometrage
unique_id: 4fe63f50-67f8-45f7-b148-e1f5554a85c9
state: >-
{{ state_attr('sensor.psa', 'timed_odometer').mileage }}
unit_of_measurement: "Km"
icon: 'mdi:road-variant'
- name: e208 Autonomie
unique_id: 0016a6a1-fed5-4a41-abb3-b1d6ca54bbab
state: >-
{{ state_attr('sensor.psa', 'energy')[0].autonomy }}
unit_of_measurement: "Km"
icon: 'mdi:map-marker-distance'
- name: e208 Pré-conditionnement Defaut
unique_id: a78793bf-1c13-4281-bf9f-d4abaed72d2f
state: >-
{% set value = state_attr('sensor.psa', 'preconditionning').failure_cause %}
{% if value == 'Defect' %}
Defectueux
{% elif value == 'DoorOpened' %}
Porte ouverte
{% elif value == 'LowBattery' %}
Batterie faible
{% elif value == 'LowFuelLevel' %}
Plus d'essence
{% elif value == 'TooManyUnusedProg' %}
Erreur de programmation
{% else %}
Inconnu
{% endif %}
icon: >-
{% set value = state_attr('sensor.psa', 'preconditionning').failure_cause %}
{% if value == 'Defect' %}
mdi:information
{% elif value == 'DoorOpened' %}
mdi:information
{% elif value == 'LowBattery' %}
mdi:information
{% elif value == 'LowFuelLevel' %}
mdi:information
{% elif value == 'TooManyUnusedProg' %}
mdi:information
{% else %}
mdi:information-off
{% endif %}
- name: e208 Pré-conditionnement
unique_id: b7c7350c-32ba-495a-aff0-7b88c2a134d5
state: >-
{{ state_attr('sensor.psa', 'preconditionning').air_conditioning.status }}
- name: e208 Puissance de charge
unique_id: e30a2bf6-3211-4859-abf1-17aa5f132ba6
state: >-
{{ state_attr('sensor.psa', 'energy')[0].charging.charging_rate * 0.163 }}
unit_of_measurement: "kWh"
icon: mdi:speedometer
############################################################################################################
- name: e208 Parcouru
unique_id: 7348f2e2-851f-4dc3-890f-4c73f571fb7e
state: >-
{% if is_state('binary_sensor.e208_alimentation', 'on') %}
{{ states('sensor.e208_autonomie') }}
{% else %}
{{ (states('sensor.e208_parcouru')) - (states('sensor.e208_kilometrage') - state_attr('sensor.beta_test_timestamp', 'km')) }}
{% endif %}
attributes:
km: >
{% if is_state('binary_sensor.e208_alimentation', 'on') %}
{{ states('sensor.e208_kilometrage') }}
{% else %}
{{ state_attr('sensor.e208_parcouru', 'km') }}
{% endif %}
unit_of_measurement: "Km"
icon: 'mdi:map-marker-right'
############################################################################################################
- name: e208 Fin de charge estimée
unique_id: c249f813-62dc-474d-bb9f-f94220636f87
state: >-
{% set value = state_attr('sensor.psa', 'energy')[0].charging.status %}
{% if value == 'InProgress' %}
{% set value = state_attr('sensor.psa', 'energy')[0].charging.remaining_time %}
{% if value.find("H") > 0 %}
{% set hr = value[value.find("T")+1:value.find("T")+ 3] %}
{% if hr[1:2] == "H" %}
{% set hr = "0" + hr[0] %}
{% endif %}
{% else %}
{% set hr = "00" %}
{% endif %}
{% if value.find("M") > 0 %}
{% set mn = value[value.find("M")-2:value.find("M")] %}
{% if mn[0:1] == "H" or mn[0:1] == "T" %}
{% set mn = "0" + mn[1] %}
{% endif %}
{% else %}
{% set mn = "00" %}
{% endif %}
{% set result = hr + ":" + mn %}
{% if result == "00:00" %}
{{ result }}
{% else %}
{{ as_datetime((now() + timedelta( hours = int(hr), minutes = int(mn) )).isoformat()).strftime("%H:%M") }}
{% endif %}
{% else %}
Déconnecté
{% endif %}
icon: "mdi:timer-outline"
rest_command:
maj:
url: http://192.168.1.131:5000/wakeup/MON VIN
Et mon sensor.yaml
# Peugeot e208
- platform: rest
name: peugeot_e208
resource: http://192.168.1.131:5000/get_vehicleinfo/MON VIN?from_cache=1
scan_interval: 60
timeout: 30
value_template: 'OK'
json_attributes:
- energy
- timed_odometer
- battery
- platform: template
sensors:
e208_battery_voltage:
friendly_name: "Battery Voltage"
unit_of_measurement: "V"
value_template: '{{ states.sensor.peugeot_e208.attributes["battery"]["voltage"] * 4 }}'
e208_battery_level:
friendly_name: "Battery"
unit_of_measurement: "%"
value_template: '{{ states.sensor.peugeot_e208.attributes["energy"][0]["level"] }}'
e208_battery_autonomy:
friendly_name: "Autonomy"
unit_of_measurement: "km"
value_template: '{{ states.sensor.peugeot_e208.attributes["energy"][0]["autonomy"] }}'
# Uncomment for miles instead of km
#e208_battery_autonomy:
#friendly_name: "Autonomy"
#unit_of_measurement: "m"
#value_template: "{{ ((state_attr('sensor.peugeot_e208', 'energy')[0]['autonomy']) / 1.609) | round(0)}}"
e208_charging_status:
friendly_name: "Charging Status"
value_template: '{{ states.sensor.peugeot_e208.attributes["energy"][0]["charging"]["status"] }}'
e208_mileage:
friendly_name: "Mileage"
unit_of_measurement: "km"
value_template: '{{ states.sensor.peugeot_e208.attributes["timed_odometer"]["mileage"] }}'
# Uncomment for miles instead of km
#e208_mileage:
#friendly_name: "Mileage"
#unit_of_measurement: "m"
#value_template: "{{ ((state_attr('sensor.peugeot_e208', 'timed_odometer')['mileage']) / 1.609) | round(2)}}"
# Peugeot e208 charge_control
- platform: rest
name: peugeot_e208_charge_control
resource: http://192.168.1.131:5000/charge_control?vin=MON VIN&?always_check=true
scan_interval: 60
timeout: 30
value_template: 'OK'
json_attributes:
- _next_stop_hour
- percentage_threshold
- platform: template
sensors:
e208_stop_hour:
friendly_name: "Next Stop Time"
value_template: '{{ states.sensor.peugeot_e208_charge_control.attributes["_next_stop_hour"]}}'
e208_threshold:
friendly_name: "Threshold"
unit_of_measurement: "%"
value_template: '{{ states.sensor.peugeot_e208_charge_control.attributes["percentage_threshold"] }}'
Comment je pourrais rajouter ma C5 à cette configuration ?
Si je duplique la totalité de cette configuration en modifiant le VIN et le nom C5 à la place de 208 un peu partout, il y a des erreurs…
Si je double juste les lignes comme ça, c’est pareil le bordel…
- platform: command_line
switches:
e208_change_threshold:
command_on: curl -s « http://192.168.1.131:5000/charge_control?vin=MON VIN 208&percentage=80 »
command_off: curl -s « http://192.168.1.131:5000/charge_control?vin=MON VIN 208&percentage=100 »
C5_change_threshold:
command_on: curl -s « http://192.168.1.131:5000/charge_control?vin=MON VIN C5&percentage=80 »
command_off: curl -s « http://192.168.1.131:5000/charge_control?vin=MON VIN C5&percentage=100 »
Qu’est ce que je peux faire ?
Coucou,
Bon j’ai reconfiguré que pour ma e208… Pour la C5, je ne suis pas sûr que 2 voitures fonctionnent avec PSA Car controller…
Par contre je me suis appuyé sur le lovelace déposé plus haut mais je n’ai pas reussi (ou pas compris) pour creer le script de mise à jour… J’ai fait ce que j’ai pu mais vraiment sans savoir ce que je fais