KOLANKY - Chargeur voiture électrique connecté 6A-16A Tuya à moins de 90€

C’est dommage que l’on ne trouve toujours pas de projet open source fonctionnant sur esp :confused:

Autant pour les routeurs solaires c’est l’abondance mais pour la recharge voiture rien :smiley:

J’ai un smartevse depuis un an, très moyennement satisfait, beaucoup de bug dans les fonctions autonome ( même le timer bug régulièrement ). En le contrôlant avec HA ça reste correct.

Openevse est super cher en hard ( un vendeur proposait des kits à 150€ sur eBay dommage ).

Et les chargeurs ali sont limité à du 16A, en solaire il m’arrive d’atteindre les 25A routé sur la voiture.

Hello

Je suis pas mal interssé.
Cependant, je ne pense pas que ca marche avec une wallbox tesla ?
En effet, il n’est pas possible sur la wallbox de définir la puissance de charge, cela se fait depuis la voiture.
Right ?

Bonjour
Sisi ça existe voir KOLANKY - Chargeur voiture électrique connecté 6A-16A Tuya à moins de 90€ - #53 par jeunegeo
@jeunegeo a passé pas mal de temps avec moi pour que j’y arrive mais maintenant ça marche bien: je regule la charge pour ne jamais dépasser les 6kva de mon linky. Le tout communiquant en mqtt avec ha.
En matos: un esp, 2 relais pilotable par l’esp, un contacteur, une alim 12v, un câble de charge voiture, qq résistance, et un transistor, un petit écran, un module de mesure de courant. Le plus chère le câble de charge ( bon coin) et le contacteur 40a. Au totale je dirais moins de 80/100€.
Ma réalisation


Salut,
Oui aucun problème pour moi.

@akunia
J’ai également acheté le chargeur Kolanky. Ce chargeur fonctionne à merveille. De plus ma voiture (une Kia e-Niro) possède un réglage de charge qui « ajoute un coefficient de division »:
réglage min: 1/3 de la puissance réglée au chargeur
réglage moyen: 2/3
réglage max: pleine puissance réglée sur le chargeur.

Cela me permet de charger ma voiture à 500W minimum avec le réglage min. C’est parfait pour exploiter le surplus des jours nuageux.

La logique est assez simple dans HA:
J’allume la charge si la consommation est inférieure à -500W, puis, j’augmente de 1A la puissance de charge est supérieur à un step de 150W (qui correspond à 1A de plus),
je diminue la puissance de charge si la consommation deviens positive.
Je coupe la charge si la consommation continue à être positive.

Il y a encore des améloriations possibles.

Mais je vois un problème de taille.

La puissance de charge reste enregistrée lorsque l’on éteint le chargeur. Cela signifie que cette puissance est stockée dans une mémoire de type flash/EEPROM.
J’ai bien peur que mettre à jour cette puissance de charge trés régulièrement épuise le nombre d’écriture max que peux supporter cette mémoire.
Ce qui risque d’arriver:

La puissance de charge ne s’enregistre plus (pas grave…) ou se met plus à jour (moins cool)
Le chargeur ne démarre plus.

L’avenir nous le dira…

1 « J'aime »

Merci pour ce retour
Je me penche sur cette solutions aussi. Savez-vous s une borne en triphasées existe, tout en gardant la puissance mini de 500w et pas 1,5kw…
Merci pour ces info en tout cas.

Bonjour à toutes et tous,

D’abord, merci pour ce sujet !

J’ai commandé le chargeur AFEEV 3.5/7KW chargeur EV Portable Type2 IEC62196-2 chargeur de voiture électrique 16A EVSE câble de charge rapide WiFi APP contrôle Bluetooth - AliExpress 34

J’ai une installation Sofar Solar avec un onduleur ESI 6K-S1 et un pack de batteries BTS-5K.

J’ai relié le tout sur HA via Solarman : GitHub - davidrapan/ha-solarman: ⚡ Solarman Stick Logger integration for 🏡 Home Assistant (rafraichissement toutes les 5s environs, c’est top !) pour le photovoltaïque et Tuya Local : GitHub - make-all/tuya-local: Local support for Tuya devices in Home Assistant pour le chargeur EV.

Avec l’aide de ChatGPT O4 mini High, voici les automations de gestion de la charge, des notifications d’arrêt et de démarrage de la charge, en incluant un retour d’information sur les sécurité (Problème, t°…) (V.2) :

alias: 🚗⚡ Charge EV selon PV & Batterie
description: >
  Toutes les 5 minutes (seulement à la seconde 0) : 1) stop si PV<1200 W ou
  SOC≤40 % ou batterie en décharge (uniquement si en charge)   2) avertit si
  PV≥1400 W & 40 %<SOC<60 % & maison & non branchée   3) règle le courant +
  démarre si PV≥1400 W & SOC≥60 % & maison & branchée  
     & pas de problème & T° OK & batterie non en décharge
triggers:
  - minutes: /5
    seconds: "0"
    trigger: time_pattern
actions:
  - choose:
      - conditions:
          - condition: or
            conditions:
              - condition: template
                value_template: "{{ pv_power < 1200 }}"
              - condition: numeric_state
                entity_id: sensor.inverter_battery
                below: 41
              - condition: template
                value_template: "{{ battery_power < -1500 }}"
          - condition: state
            entity_id: switch.ev_charger
            state: "on"
        sequence:
          - target:
              entity_id: switch.ev_charger
            action: switch.turn_off
            data: {}
      - conditions:
          - condition: device
            device_id: [ID Device à Tracker]
            domain: device_tracker
            entity_id: [ID Entité à Tracker]
            type: is_home
          - condition: numeric_state
            entity_id: sensor.inverter_battery
            above: 40
            below: 60
          - condition: numeric_state
            entity_id: sensor.inverter_pv_power
            above: 1399
          - condition: state
            entity_id: binary_sensor.ev_charger_connectivite
            state: "off"
        sequence:
          - data:
              title: Voiture non branchée
              message: >
                PV={{ pv_power }} W   SOC={{ battery_soc }} % :   merci de
                brancher la voiture.
            action: notify.phones
      - conditions:
          - condition: device
            device_id: [ID Device à Tracker]
            domain: device_tracker
            entity_id: [ID Entité à Tracker]
            type: is_home
          - condition: state
            entity_id: binary_sensor.ev_charger_connectivite
            state: "on"
          - condition: state
            entity_id: binary_sensor.ev_charger_probleme
            state: "off"
          - condition: numeric_state
            entity_id: sensor.ev_charger_temperature
            above: -30
          - condition: numeric_state
            entity_id: sensor.ev_charger_temperature
            below: 50
          - condition: numeric_state
            entity_id: sensor.inverter_battery
            above: 59
          - condition: numeric_state
            entity_id: sensor.inverter_pv_power
            above: 1399
          - condition: template
            value_template: "{{ battery_power >= 0 }}"
        sequence:
          - target:
              entity_id: number.ev_charger_charging_current
            data:
              value: |
                {{ current_map[
                    (current_map.keys()
                      | select("le", pv_power)
                      | max)
                  ] }}
            action: number.set_value
          - condition: state
            entity_id: switch.ev_charger
            state: "off"
          - target:
              entity_id: switch.ev_charger
            action: switch.turn_on
            data: {}
    default: []
variables:
  pv_power: "{{ states('sensor.inverter_pv_power')     | float }}"
  battery_power: "{{ states('sensor.inverter_battery_power')| float }}"
  battery_soc: "{{ states('sensor.inverter_battery')      | float }}"
  current_map: |
    {{ {
      1800: 6, 2100: 7, 2500: 8, 2700: 9,
      3000:10, 3300:11, 3600:12, 3800:13,
      4200:14, 4400:15, 4700:16
    } }}
mode: single

En sachant qu’il faut déclarer notify.group dans configuration.yaml (puis un rechargement rapide pour la prise en compte) :

# Notifications Groupées
notify:
  - name: phones # nom du groupe → service notify.phones
    platform: group # plateforme “group”
    services:
      - service: [ID de l'entité 1 à notifier]
      - service: [ID de l'entité 2 à notifier]

Puis l’automation de notification de début de charge (V.2) :

alias: 🔔 Notification Démarrage Charge EV
description: Prévient quand la charge EV démarre (stabile 10 s en ON)
triggers:
  - entity_id: switch.ev_charger
    from: "off"
    to: "on"
    for: "00:00:10"
    trigger: state
actions:
  - data:
      title: Mise en charge EV
      message: >
        La charge de la voiture vient de démarrer   (PV={{
        states('sensor.inverter_pv_power') }} W,   Batterie={{
        states('sensor.inverter_battery') }} %).
    action: notify.phones
mode: single

Puis l’automation de notification d’arrêt de charge suivant si elle a été initié par les conditions Photovoltaïque, si un Problème est détecté ou si la plage de T° de fonctionnement est dépassée (V.2) :

alias: 🔕 Notification Arrêt Charge EV
description: |
  Préviens quand la charge EV s’arrête (stabilisé 10 s en OFF)
triggers:
  - entity_id: switch.ev_charger
    from: "on"
    to: "off"
    for: "00:00:10"
    trigger: state
actions:
  - data:
      title: Arrêt de la charge EV
      message: |-
        {% if pv_power < 1200 or battery_soc <= 40 %}
          Arrêt : seuil PV/SOC atteint (PV={{ pv_power }} W, Batterie={{ battery_soc }} %).
        {% elif battery_power < -1500 %}
          Arrêt : batterie en forte décharge ({{ battery_power }} W).
        {% elif is_state('binary_sensor.ev_charger_probleme','on') %}
          Arrêt : problème détecté sur le chargeur.
        {% elif temp < -30 or temp > 50 %}
          Arrêt : température hors plage ({{ temp }} °C).
        {% else %}
          Arrêt : cause non déterminée (PV={{ pv_power }} W, Batterie={{ battery_soc }} %, T°={{ temp }} °C).
        {% endif %}
    action: notify.phones
variables:
  pv_power: "{{ states('sensor.inverter_pv_power')     | float }}"
  battery_soc: "{{ states('sensor.inverter_battery')      | float }}"
  battery_power: "{{ states('sensor.inverter_battery_power') | float }}"
  temp: "{{ states('sensor.ev_charger_temperature') | float }}"
mode: single

Actuellement , cela fonctionne bien :relieved:

Si cela peut aider quelqu’un ou si vous voyez des erreurs/ajustements à faire dans les YAML…

Bonne journée

1 « J'aime »

Hello

Merci pour les explications très claires !!!

Avec ton lien @br6581, je vois qu’il est à 67 euros. ca vaut vraiment le coup ? car c’est vraiment pas cher

Merci en tout cas !