Accendere climatizzatore Hisense con Led IR

Salve a tutti. Come da titolo sto cercando di emulare con un arduino uno e un led IR, l'accensione e spegnimento del mio clima Hisense. Ho rilevato tramite un ricevitore IR i codici che vengono inviati dal telecomando IR del clima che sono questi in HEX:

09:49:57.087 -> C160
09:49:57.312 -> B0187E42

Quindi con questo codice, scrivendo "ok" nella seriale invio il segnale:

#include <IRremote.h>

IRsend irsend(3);
String a;

void setup()
{
  Serial.begin(9600);
}

void loop() {
  if (Serial.available()) {
    a= Serial.readStringUntil('\n');
  if(a=="ok"){
    Serial.println("ok");
    irsend.sendNEC(0xC160, 32); 
    delay(40);
    irsend.sendNEC(0xB0187E42, 32); 
    delay(40);
    }
  } 
}

Ho utilizzato i delay per una prova veloce.
Il problema è che il tutto non funziona. Ovviamente il LED IR si accende (visto con la camera dello smartphone). Ho provato altri protocolli oltre che il solo NEC, come ad esempio OldPanasonic ect ma comunque non funziona. Penso che in questi casi senza un analizzatore logico sia abbastanza complesso capire i codici inviati e con quale lasso di tempo. Inoltre è proprio quest'ultimo che mi desta perplessità: ossia come potete notare, vengono inviati due codici C160 e qualche millisecondo dopo B0187E42, quindi pensavo fosse un problema di lasso di tempo tra i due codici (chiedo scusa se è una sciocchezza ciò che dico).

Qualcuno per caso ha provato a fare la stessa applicazione che sto provando a fare io con climatizzatore Hisense e magari ha risolto oppure trovato il protocollo adatto, o non so cos'altro che comunque permetta di simulare l'ON/OFF del telecomando?

Grazie per le eventuali risposte.

Purtroppo analizzare segnali IR non è affatto semplice ed improvvisare è quasi impossibile...
... sono anni che, a tutto quelli che hanno problemi di questo tipo, consiglio (ed uso) questo prodotto (se cerchi sul forum ne ho parlato varie volte) con cui ho letto e decodificato svariati telecomandi utilizzandoli poi in ambiente Arduino.

Vedi tu ...

Guglielmo

Grazie Guglielmo come sempre. Ho dato un'occhiata e sicuramente lo prenderò, utilissimo! Intanto stavo sperimentando con la libreria IRMP e il suo file di esempio AllProtocols per capire un attimo il protocollo ed ho ottenuto:

11:23:29.101 -> P=SIEMENS A=0x2AA C=0x15A R

Ovviamente inutile dire che provando ad inviare quanto rilevato con questo metodo sia stato invano:

#include <Arduino.h>
#include "PinDefinitionsAndMore.h"
#include <irsndSelectMain15Protocols.h>
#include <irsnd.hpp>

IRMP_DATA irsnd_data;

void setup() {
    Serial.begin(9600);
    Serial.println(F("START " __FILE__ " from " __DATE__ "\r\nUsing library version " VERSION_IRMP));
    irsnd_init();
    irmp_irsnd_LEDFeedback(true); // Enable send signal feedback at LED_BUILTIN
    Serial.println(F("Send IR signals at pin " STR(IRSND_OUTPUT_PIN)));

}

void loop() {
    if (Serial.available()) {
        String a = Serial.readStringUntil('\n');
        if (a == "ok") {
            Serial.println("ok");

            irsnd_data.protocol = IRMP_SIEMENS_PROTOCOL; // Imposta il protocollo Siemens
            irsnd_data.address = 0x2AA;  // Indirizzo decodificato
            irsnd_data.command = 0x15A;  // Comando decodificato
            irsnd_data.flags = 0;  // Imposta le bandiere

            if (!irsnd_send_data(&irsnd_data, true)) {
                Serial.println(F("Protocol not found")); // Il nome del protocollo è stampato da irsnd_data_print()
            }
            irsnd_data_print(&Serial, &irsnd_data);
        }
    }
}

Non mi resta che provare il prodotto di AnalysIR. Intanto avevo pensato semplicemente di comprare un telecomando compatibile (costa 5 euro su Aliexpress) e utilizzare questo comandato da Arduino. Dirai: "ma a cosa ti serve?" Molto semplicemente, nell'ultimo periodo ho problemi con internet a casa, e dato che gestisco il clima tramite un BroadLink, quando appunto non c'è internet e magari ho impostato che il clima dovrà spegnersi alle XX:XX, ovviamente questo non avviene e magari mi ritrovo il clima acceso. Quindi dato che necessitavo di più timer di on/off e di un qualcosa offline stavo pensando alla soluzione con un IR, ma siccome analizzare i segnali IR non è semplicissimo, magari opto per la soluzione del telecomando compatibile al momento. Però comunque quel prodotto lo prendo sicuramente! Grazie!

Guarda entrambi i prodotti, sia AnalysIR che è il loro software di punta, ma che richiede che tu faccia una piccola scheda per trasmettere e ricevere gli IR, oppure LearnIR, modulo hardware/software integrato con un software un po' meno potente, oppure ...

... come faccio io ... AnalysIR come software di analisi e LearnIR come unità di RX/TX gestita da AnalysIR :grin: ... così si ha veramente il massimo ... specie se uno deve, ogni tanto, decodificare qualche nuovo telecomando :wink:

Guglielmo

1 Like

Scusami Guglielmo quindi mi confermi che da prendere sono questi due che ho aggiunto al carrello? Grazie

Schermata 2024-07-31 alle 16.14.25

Io ho entrambi ed ho preso da loro anche il kit con tutti i vari tipi di LED TX/RX che hanno da montare su una basetta (io li ho montati su uno shield prototipale Arduino che monto su un Arduino UNO) ... così con AnalysIR posso usare sia LearnIR che Arduino UNO con il vari LED :wink:

Guglielmo

Non potevo che spendere meglio i miei soldi per il software di AnalysIR!
Provato anche solo con Arduino e un led ricevitore TL1838 (proverò sicuramente anche con il LearnIR che ancora non ho), ci sono riuscito a recuperare il codice per accendere e spegnere il mio clima Hisense.
Grazie mille Guglielmo, sei un grande!

Figurati :grin:

Io sono anni che qui sul forum dico che, se si vogliono analizzare veramente i segnali IR e scoprire tutte le caratteristiche ... AnalysIR è la soluzione :wink:

Inoltre ha un ottimo supporto, se hai problemi contatti l'autore e risponde sempre puntualmente aiutando :slight_smile:

Guglielmo

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.