Integracja HA z AC Freedom AUX

Witam, chciałbym podłączyć pompę ciepła AC Freedom AUX, którą mam na działce do HA. Szukałem rozwiązań w Internecie i trafiłem na taki artykuł:

Ale coś mi nie idzie może ktoś mógłby mi to pomóc ogarnąć.

Sytuacja jest taka:

W studiu na serwerze mam HA. Pompa ciepła znajduje się na działce gdzie mam internet z karty Orange. Pompa ma wbudowaną kartę wifi więc łączy się z internetem na działce, a co za tym idzie mogę za pomocą aplikacji w telefonie sterować nią z każdego miejsca. Chciałbym mieć integrację pompy w HA.
Z poradnika wyżej musze zainstalować MQTT Broker. W poradniku jest też fragment gdzie należe podać IP Klimatyzatora, jeżeli mój jest na działce to mogę użyć openvpna i jakoś połączyć sieć działki z siecią w studiu?

Aby integracja była możliwa HA i to dodatkowe oprogramowanie do integracji z pompą ciepła muszą byc podłaczone do tego samo MQTT brokera, zakładając, że MQTT broker będzie zainstalowany na HA to wszystko to musi być widziane w ramach jednej sieci lokalnej. Rozumiem, że studio jest w domu, ten dom stoi na działce, na tej działce znajduje się pompa ciepła? :thinking:

Niestety nie, jakby wszystko było w jednym miejscu to nie było by takiego problemu. Studio jest w domu, a konkretnie w piwnicy w bloku. Miedzy domem, a studiem jest LAN, natomiast działka (RODOS) jest jakieś 15km dalej. Na działce mam tani modem 4G/LTE z wbudowanym ruterem. Mam tam też starego laptopa na którym mogę postawić serwer/HA/VPN w celu zmostkowania (połączenia) tych 2 sieci. Ruter na działce widzi pompę/klimatyzator jako AC_SMT-6c-cb-0f mam też IP i adres MAC urządzenia. Myślałem, że może skoro mam dostęp z aplikacji to uda się dodać integracje bez łączenia sieci.

Tak dalej szukałem w internecie rozwiązania mojego problemu i natrafiłem na dodatek remote instance który umożliwia komunikacje z innymi instalacjami HA co w połączeniu z ZeroTier One, który odpowiada za utworzenie wirtualnej sieci zdaje się rozwiązuje mój problem :thinking: Mam w studiu HA i na laptopie na działce zainstalowałbym też HA do niego podłączył bym pompę ciepła bo już po wifi powinna się pojawić jak dobrze skonfiguruje MQTT Brokera, następnie na obu HA instaluję remote instance i ZeroTier One i w studyjnym HA powinna mi sie pojawić pompa ciepła. Dorze rozumuje?

Być może.

Widzę że ten komponent niestandardowy jest przestarzały, jest dedykowany do starych modeli, więc jeśli nie masz 100% pewności, że zadziała z twoją klimą, to nie ma powodu do przeinwestowywania eksperymentu zarówno finansowo jak i wkładem pracy, spróbuj zrobić na bazie tego co posiadasz będąc na miejscu.

A czy komuś w ogóle się udało podłączyć AUX pod HA?

A w ogóle zajrzałeś w pierwszego posta?
I przeklikałeś choćby podlinkowany tam wątek na oficjalnym forum HA?

hint: np. jest dość świeży komponent dla ESPHome, choć nie jest to jedyne rozwiązanie tam proponowane

Hej, chciałem trochę odświeżyć temat, mianowicie posiadam klimatyzator AUX J-smart z adapterem wifi, czy ktoś może podpowiedzieć jak prawidłowo wykonać integrację?

2 polubienia

Rowniez podpinam sie do pytania, komus udalo sie podpiac klime aux do HA ? Z gree sprawe zalatwilem paroma kliknieciami, tutaj juz tak prosto sie nie zapowiada …

co za dziwne pytanie? przecież lista przetestowanych modeli nie napisała się sama, tylko stworzyli ją użytkownicy, którzy “na własnej skórze” to testowali

no zdecydowanie prosto nie jest, ale jeśli zbudowanie takiej elektroniki Cię nie przerasta

Udalo mi sie do tego dotrzec, myslalem ze ktos zna jakies rozwiazanie ktore wszywa sie w ich api z ktorego korzysta rowniez mobilna apka. Znalazlem na githubie projekt ktory zaczal temat ale od paru miesiecy cisza na repozytorium wiec raczej nie ma sensu probowac pomoc dokonczyc temat. No nic… zamawiam od myfriendow potrzebne podzespoly i trzeba drutowac :smiley:

Pochwal się przejściami i efektem koncowym

Ja od roku z powodzeniem korzystam z tego projektu GitHub - ArtemVladimirov/broadlinkac2mqtt: Control your broadlink-based air conditioner using Home Assistant

Posiadam dwie klimy AUX J-Smart 7kW AUX-24J2O oryginalnie podłączone do aplikacji AC Freedom. Dodatek ten świetnie działa bez żadnej ingerencji w elektronikę itp. Tracimy możliwość korzystania z oryginalnej aplikacji, jednak w moim przypadku nie jest to problemem.

Cały problem z konfiguracją dodatku opiera się na tym aby podłączyć moduł wifi klimy do sieci wifi za pomocą aplikacji AC Freedom ale zaraz po połączeniu przerwać dalszą konfigurację i nie podłączać jej do zdalnych serwerów AC Freedom (ponieważ wtedy moduł wifi blokuje jakiekolwiek inne próby połączenia) i dopiero wtedy uruchomić skonfigurowany dodatek.

Z pewnością pomocny będzie dostęp do rejestru routera i obserwacja momentu w którym klima podłączy się do sieci wifi, przy okazji odczytujemy nadany numer IP (warto potem ustawić statyczny IP) i adres mac które to musimy wpisać w konfiguracji dodatku.

Hej, niestety w moim przypadku nie działa opcja z fabrycznym modułem WiFi. Skusiłem się na projekt z płytką ESP12E. Generalnie nie straszne mi wyzwania i szczerze mówiąc jest to mój pierwszy raz z tego typu rozwiązaniem. O ile płytka przyjmuje programy, które wrzucam jej przez Arduino IDE, tak w przypadku przygotowania yaml pod klimatyzator mam problem, nie wiem w jaki sposób wykonać kompilacje i wgrać do płytki. Może ktoś na forum będzie uprzejmy i wytłumaczy mi w jaki sposób mogę to zrobić. Dodam, ze jestem laikiem w temacie, ale chętnym do nauki.

@Piotrek1
Musisz chociaż podać linka do projektu, który chcesz użyć, bo z tak miernych informacji nie uszyjemy niczego.

zgaduję że to

Jeśli masz płytkę prototypową, a nie goły moduł (jak na zdjęciach w dokumentacji powyżej), to robota będzie inna!!.

Tu masz w zasadzie gotowe YAMLe dla ESPHome

Na poczatek proponuję potrenować sobie ESPHome z bardziej rozbudowaną płytką prototypową… by się zapoznać z samym ESPHome Compiler.

  1. Instalujesz w HA ten Dodatek

  2. a potem będzie już z górki (skoro masz mostek USB-UART, to go po prostu wykorzystasz z ESPHome Compiler zamiast z Arduino)

Hej, Dzięki za uzupełnienie, dokładnie taki projekt jak napisałeś mam na myśli.

Moja płytka to ESP-12E model: ESP8266MOD AI-Thinker

Czy jest szansa postawić to na tej płytce?

Po kompilacji w ESPHome Compiler i wgraniu, płytka nie pojawia się w sieci i nie pokazuje w HA. Gdy przygotowuje płytkę do pierwszego użycia i wgrywa się ftp dla dostępu łączy się z domową siecią WiFi i jest ok, ale gdy próbuje wprowadzić gotowy yaml i wprowadzeniu swoich danych kończy się to komunikatem błędu o braku połączenia.

Jakieś pomysły gdzie popełniam błąd?

Tam nie ma żadnego połączenia FTP, więc mógłbym powiedzieć, że nie wiem o czym mówisz.
pierwsze flaszowanie po kabelku przez port szeregowy (za pomocą mostka USB → UART)
oczywiście uprzednio ściągając GPIO0 do masy (by MCU w ogóle wszedł w tryb bootloadera) oczywiście mostek masa-GPIO0 trzeba ściągnąć (można już kilka sekund po uruchomieniu w trybie bootloadera) by ESP mogło zabootować po wgraniu firmware…
ALE pisałeś, że masz pojęcie o Arduino, to chyba takich totalnych podstaw nie muszę pisać?

Zamieść jakieś obrazki jak to robisz i poprawnie sformatowane YAMLe (przed edycją taki jaki dostałeś z kreatora i po edycji która chyba uwala kod)

Jeśli korzystałeś z tego (tak wstępnie zakładam)

to po Adopcji do Compilera (takiego IDE) będziesz miał wstępnie wygenerowany “pusty” YAML, nie można go modyfikować zupełnie dowolnie i na pałę, by zadziałało OTA jak należy… (np. warto by tokena API już nie ruszać i wstawić do YAMLa tylko to co naprawdę potrzeba, bo dublować też nie można).
OTA nie wymaga łączenia GPIO0 do masy, a wręcz nie można tego robić.

Hej, korzystam z adaptera do płytek ESP z wbudowanymi przyciskami resetu i boot.

Po przygotowaniu płytki do użycia poprzez Web - ESPHome

Czyste YAML wyglada następująco:

  name: esphome-web-1a3ef1
  friendly_name: ESPHome Web 1a3ef1

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  min_version: 2024.6.0
  name_add_mac_suffix: false
  project:
    name: esphome.web
    version: dev

esp8266:
  board: esp01_1m

# Enable logging
logger:

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:
- platform: esphome

# Allow provisioning Wi-Fi via serial
improv_serial:

wifi:
  # Set up a wifi access point
  ap: {}

# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:

dashboard_import:
  package_import_url: github://esphome/example-configs/esphome-web/esp8266.yaml@main
  import_full_config: true

# To have a "next url" for improv serial
web_server:

Aktualny YAML

external_components:
  - source: github://GrKoR/esphome_aux_ac_component
    components: [ aux_ac ]
    refresh: 0s

esphome:
  name: aux_air_conditioner
  platform: ESP8266
  board: esp12e

# don't forget to set your's wifi settings!
wifi:
  ssid: WiFiName
  password: pass
  manual_ip:
    static_ip: 192.168.0.120
    gateway: 192.168.0.1
    subnet: 255.255.255.0
  ap:
    ssid: nameHotspot
    password: pass

captive_portal:
debug:

logger:
    level: DEBUG
    baud_rate: 0

api:

ota:
  - platform: esphome

# UART0 configuration for AUX air conditioner communication
uart:
  id: ac_uart_bus
  # ATTENTION! Use GPIO4 (D2) and GPIO5 (D1) as the TX and RX for NodeMCU-like boards!
  tx_pin: GPIO1
  rx_pin: GPIO3
  baud_rate: 4800
  data_bits: 8
  parity: EVEN
  stop_bits: 1

climate:
  - platform: aux_ac
    name: SalonAC

Po instalacji w płytce, nie odpowiada pomimo komunikatu o sukcesie procesu. Jest offline w HA u nie łączy się do WiFi

Tak jak pisałem wcześniej, jestem początkujący w temacie płytek rozwojowych. Jeżeli zadaje blachę pytania, to tylko z tego powodu.

Podobno jak się zapyta o coś głupio to człowiek wstydzi się tylko raz, a później już nie musi bo już się dowiedział :slight_smile:

Dziękuję Ci również za cierpliwość i wszystkie odpowiedzi.

Twój aktualny YAML nie ma prawa działać, bo nie wprowadziłeś w nim zmian dostosowujących go do zastanej sytuacji.

Ten pierwszy YAML jest ucięty, stawiam na to, że był mniej więcej taki

substitutions:
  name: esphome-web-1a3ef1
  friendly_name: ESPHome Web 1a3ef1

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  min_version: 2024.6.0
  name_add_mac_suffix: false
  project:
    name: esphome.web
    version: dev

esp8266:
  board: esp01_1m

# Enable logging
logger:

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:
- platform: esphome

# Allow provisioning Wi-Fi via serial
improv_serial:

wifi:
  # Set up a wifi access point
  ap: {}

# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:

dashboard_import:
  package_import_url: github://esphome/example-configs/esphome-web/esp8266.yaml@main
  import_full_config: true

# To have a "next url" for improv serial
web_server:

Wczoraj pokazywałem jak można się odciąć od zdalnego kodu tam
kod z wizarda
https://forum.arturhome.pl/t/bluetooth-problem-z-konfiguracja-integracji/13450/25?u=szopen
kod lokalny
https://forum.arturhome.pl/t/bluetooth-problem-z-konfiguracja-integracji/13450/26?u=szopen

twój “odrepozytoriowany” będzie uboższy, ale nie możesz zmieniać go dowolnie

Jeśli chcesz od razu użyć swój kod, to nie korzystaj z kreatora tylko sflaszuj to co sobie sam skompilowałeś, bo jeśli chcesz przejść od wariantu z kreatora to nie możesz wprowadzać radykalnych zmian byle gdzie.

Spróbuję pokazać jak oczyścić kod z kreatora do “pustego” wsadu lokalnego

substitutions:
  name: esphome-web-1a3ef1
  friendly_name: ESPHome Web 1a3ef1

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  name_add_mac_suffix: false

# uwaga definicja płytki musi sie zgadzać z użytym sprzętem
esp8266:
  board: esp12e

# Enable logging
logger:

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:
  - platform: esphome

# Allow provisioning Wi-Fi via serial ten komonent MUSI być wywalony
# improv_serial:

wifi:
  # Set up a wifi access point
  ap: {}

# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:

# To have a "next url" for improv serial
web_server:

kolejny krok to dokompilowanie zdalnego kodu twojego komponentu - zauważ że nie wprowadzam żadnych zmian dotyczących widoczności sprzętu w sieci

substitutions:
  name: esphome-web-1a3ef1
  friendly_name: ESPHome Web 1a3ef1

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  name_add_mac_suffix: false

# uwaga definicja płytki musi sie zgadzać z użytym sprzętem
esp8266:
  board: esp12e

external_components:
  - source: github://GrKoR/esphome_aux_ac_component
    components: [ aux_ac ]
    refresh: 0s

# Enable logging oraz UWAGA wyłączenie debugowania po serialu
logger:
    level: DEBUG
    baud_rate: 0

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:
  - platform: esphome

# Allow provisioning Wi-Fi via serial ten komonent MUSI być wywalony
# improv_serial:

wifi:
  # Set up a wifi access point
  ap:
    ssid: nameHotspot
    password: pass0123456
  # zweryfikuj czy powyższy AP działa, gdy wyłączysz swoje WiFi

# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:

# To have a "next url" for improv serial
web_server:

# UART0 configuration for AUX air conditioner communication
uart:
  id: ac_uart_bus
  # ATTENTION! Use GPIO4 (D2) and GPIO5 (D1) as the TX and RX for NodeMCU-like boards! 
  # Ty masz płytkę=goły moduł bez mostka USB-UART więc jest OK
  tx_pin: GPIO1
  rx_pin: GPIO3
  baud_rate: 4800
  data_bits: 8
  parity: EVEN
  stop_bits: 1

climate:
  - platform: aux_ac
    name: SalonAC

PS bardzo dziwne, że kreator nie wygenerował tokenu dla API
czy ten wyjściowy kod to już jest po pierwszej rekompilacji związanej z generowaniem tokena API? podczas Adopcji do IDE?
jeśli go wyciąłeś wrzucając do posta w imię nie wiadomo czego, bo na pewno nie bezpieczeństwa,ani prywatności, to musi wrócić na swoje miejsce

PPS jak będziesz chciał sobie ręcznie zmienić ustawić ustawienia sieci, to zrób to zgodnie z dokumentacją ESPHome

Zmianę nazwy hosta można zrobić z kafelka, warunek to dane urządzenie online (bo to wymaga rekompilacji i udanego OTA) na obrazku jest twój sprzęt offline, bo testowałem kompilację “na sucho”, ale oczywiście musi być online