Integração no HA de Inversor Solax X1 Mini

Bom dia caríssimos,

espero que se encontrem bem.

Tenho inversor Solax X1 Mini, e pretendo a integração no HA.

Contudo, quando coloco os dados, retorna a mensagem “A ligação falhou”.

Dados a inserir:

IP: Não consegui chegar ao IP, a partir do inversor. Liguei ao router e vi qual o IP do inversor. No Solax Cloud, não encontrei em lado nenhum as configurações de rede.
Porta: 80, está correto?
Password: 6868, correto?

Agradeço a ajuda.

Obrigado.

Normalmente só no hotspot do inversor é que se consegue aceder à API, o PoletWifi não responde na LAN. Para resolver isso costumam recomendar correr um nginx que se liga a esse hotspot e o diabo a quatro. Tens tópicos sobre isso no fórum do HA.

Outra hipótese é usar um firmware alternativo, que foi o que eu fiz. Foi fácil de instalar e funciona 5*.

Há duas formas de o fazeres:

  • pela lan (tens acesso a vários parâmetros em tempo real, mas tens de fazer contas para somar alguns deles
  • pela cloud: precisas de gerar uma APi key no site da Solax para poderes usar; a atualização é a cada 5min mas tens os sensores de potência e energia já calculados

Qual pretendes? Pergunto porque dependendo da opção preferida, as instruções são distintas

1 Curtiu

Boa noite,

obrigado pela ajuda.

Um pouco atrás…

Estava a tentar desta forma, colocando o IP e password, mas sem sucesso.

Neste momento, estou a usar a Solax Cloud, aplicação da Solax. Também é possível em qualquer browser.

Qual será a melhor opção? Talvez Cloud… Pode então explicar, por favor?

Pesquisei, e parece que é por comandos REST.

Obrigado.

Essa integração parece que não funciona (pelo menos de acordo com alguns posts) pelo que o que eu acabei por implementar está explicado aqui: https://community.home-assistant.io/t/pv-solax-inverter-cloud-sensors-via-api/277874

A opção de ligação direta está explicada aqui: https://community.home-assistant.io/t/solax-x1-boost-air-mini-local-data/535197 caso queiras, mas dependendo do modelo do inversor tens de fazer cálculos distintos (é um pouco mais trabalhoso como referi, mas permite ter a informação ao segundo se quiseres)

Boa noite,

optei pela primeira opção, mas sem sucesso.

SN, corresponde ao número de série, ou número de inscrição? Já experimentei com ambos, mas sem sucesso. O procedimento parece simples, não vejo razão para não funcionar. Devo ter em conta algum aspeto?

Fiquei também sem perceber, se tenho que adicionar no HA, alguma coisa, referente aos comandos REST. No tutorial faz referência logo no início, mas pouco conclusivo.

Quanto tentei experimentar, o inversor estava desligado, mas julgo não ser problema, uma vez que deve ir buscar a informação à cloud.

Obrigado.

A URL que deves usar usas é algo deste tipo: https://www.eu.solaxcloud.com:9443/proxy/api/getRealtimeInfo.do?tokenId=202102060300yyyyyyy&sn=SWXXXXXXX

  • O token “202102060300yyyyyyy”: tens de gerar no site da Solax
  • O SN “SWXXXXXXX” é o número de inscrição (podes encontrá-lo na página da Solax ou na pen WiFi)

Quando tiveres isto, tens de criar os sensores no teu ficheiro configuration.yaml (eu uso o node-red porque é mais simples de fazer estas chamadas de API, mas não vale a pena complicar para já)

##############################

SOLAX CLOUD.

##############################

sensors:
  - platform: rest
    resource: https://www.eu.solaxcloud.com:9443/proxy/api/getRealtimeInfo.do?tokenId=202102060300yyyyyyy&sn=SWXXXXXXX
    value_template: '{{ ( value_json.result.yieldtotal | round(0) ) }}'
    name: "Solax total"
    unit_of_measurement: "KWh"

  - platform: rest
    resource: https://www.eu.solaxcloud.com:9443/proxy/api/getRealtimeInfo.do?tokenId=202102060300yyyyyyy&sn=SWXXXXXXX
    value_template: '{{ ( value_json.result.acpower | round(0) ) }}'
    name: "Solax now"
    unit_of_measurement: "W"

  - platform: rest
    resource: https://www.eu.solaxcloud.com:9443/proxy/api/getRealtimeInfo.do?tokenId=202102060300yyyyyyy&sn=SWXXXXXXX
    value_template: '{{ value_json.result.yieldtoday }}'
    name: "Solax today"
    unit_of_measurement: "KWh"
    
  - platform: rest
    resource: https://www.eu.solaxcloud.com:9443/proxy/api/getRealtimeInfo.do?tokenId=202102060300yyyyyyy&sn=SWXXXXXXX
    value_template: "{{ value_json.result.uploadTime }}"
    name: "Solax upload time"
    
  - platform: rest
    resource: https://www.eu.solaxcloud.com:9443/proxy/api/getRealtimeInfo.do?tokenId=202102060300yyyyyyy&sn=SWXXXXXXX
    value_template: >
          {% if value_json.result.inverterStatus == '100' %}Wait
          {% elif value_json.result.inverterStatus == '101' %}Check
          {% elif value_json.result.inverterStatus == '102' %}Normal
          {% elif value_json.result.inverterStatus == '103' %}Fault
          {% elif value_json.result.inverterStatus == '104' %}Permanent Fault
          {% elif value_json.result.inverterStatus == '105' %}Update
          {% elif value_json.result.inverterStatus == '106' %}EPS Check
          {% elif value_json.result.inverterStatus == '107' %}EPS
          {% elif value_json.result.inverterStatus == '108' %}Self-test
          {% elif value_json.result.inverterStatus == '109' %}Idle
          {% elif value_json.result.inverterStatus == '110' %}Standby
          {% elif value_json.result.inverterStatus == '111' %}Pv Wake Up Bat
          {% elif value_json.result.inverterStatus == '112' %}Gen Check
          {% elif value_json.result.inverterStatus == '113' %}Gen Run
          {% else %}I dont know{% endif %}
    name: "Solax status"

Vais ter de recarregar o ficheiro de configuração para aplicar as alterações, pelo que antes de o fazer valida que o ficheiro está OK em “Ferramentas de programação” → YAML (em cima) → Verificar a configuração

Boa tarde,

obrigado pela ajuda.

A primeira dificuldade, foi conseguir o token. Entretanto, tudo ok.

Problema, no HA não estou a encontrar os sensores criados, para poder adicionar no Lovelace. Certamente deverá ser algo fácil de ultrapassar.

Adicionei o código no configuration.yaml, sem erros, reiniciei, já por diversas vezes, mas sem sucesso.

No browser o URL funciona bem.

Obrigado.

Podes meter aqui o código que puseste no config.yaml (altera a API key antes de o meteres aqui)?

Boa noite,

ora aqui está…

#########################################################

SOLAX CLOUD.

#########################################################

sensors:

#########################################################

END OF CONFIGURATION FILE

#########################################################

Quando vais a Ferramentas de programação → Estados (TAB) e colocas a palavra “Solax” no campo “Filtrar entidades” o que vês?

Bom dia,

não me aparece nada. O que intendo é que os sensores não estão criados!

Não é necessário nenhum add-on, para o HA interpretar os comandos REST?

Não estou a perceber o que está acontecer!

Obrigado pela ajuda.

Quando dizes “reiniciei, já por diversas vezes” a que te referes: reiniciaste o home assistant?

Se sim (ou não), podes reiniciar novamente ir a Configuração → Sistema → Logs e colocares o log aqui? Em alternativa podes ir a Ferramentas de programação → YAML (TAB) e clicar na secção " Recarregar Configuração YAML" em “TODA A CONFIGURAÇÃO YAML”

Boa noite,

Sim, quando me refiro a reiniciar, é reiniciar o HA

Reiniciando, pela alternativa sugerida, surge erro abaixo.

Verifiquei o log…

Após reiniciar, pela opção, Configuração → Sistema, e no canto superior direito, reiniciar servidor, tenho o seguinte log…

Obrigado pela ajuda.


Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade