hristo-atanasov / Tasmota-IRHVAC

Home Assistant platform for controlling IR Air Conditioners via Tasmota IRHVAC command and compatible hardware
186 stars 64 forks source link

Unable to use with an ESP8266? #145

Closed Darthmonkey closed 1 week ago

Darthmonkey commented 2 weeks ago

After flashing an ESP8266 with Tasmotizer, configuring the correct ports, adding an LED IR transmitter and receiver, and testing the remote talks to via the console (I don't know how to test the transmitter from the console), I followed the readme up to the point where it integrates into Home assistant. My problem appears to be that I have a 'sensor' entity, rather than a 'climate' entity, which means I can't add a 'thermostat' to the Lovelace page. It may be that I've missed a step? Should I have used an ESP32 instead, or am I missing something else? Thanks in advance.

cociweb commented 2 weeks ago

I followed the readme up to the point where it integrates into Home assistant.

Can you elaborate it please? It seems, you have missed something. (Whatever it is.... :))

Darthmonkey commented 2 weeks ago

Just remember, you asked for elaboration... ;)

I'm attempting to use a Wemos D1 ESP8266 along with a KY-022, and up to 7 TSAL6400 LEDs with the Anodes attached to 220 ohm resistors to create a universal IR remote device which operates the same way as a Broadlink RM4 Mini, which can then be controlled exclusively via Home assistant. I'm intending to either update this repos' readme or create a whole step by step instruction manual for people who may not intimately know all the various hurdles from hardware to software and be able to overcome them. My abridged steps so far are:

  1. Source a Wemos D1 Mini ESP8266, some KY-022 IR receivers, and a load of TSAL6400 LEDs with associated 220ohm resistors.
  2. Connect the KY-022 to pin D3, and a single LED (for test purposes) to pin D4 via the resistor.
  3. Flash the Wemos D1 with Tasmota4.1 (release-ir)
  4. Set up the LED sender on D3 GPIO0 to 'IRsend - 1'
  5. Set up the KY-022 receiver on D4 GPIO2 to 'IRrecv'
  6. Verify that the receiver can recognise my AC remote by pressing buttons and checking for a response on the devices' web page in the console.
  7. Configure the Wemos to connect to HA via MQTT, naming it 'IRTest1' in the 'other' configuration.
  8. Download the repo zip, and extract it to '...\config\Tasmota-IRHVAC-master' (I assume not '...\config\Tasmota-IRHVAC-master\Tasmota-IRHVAC-master' which is how it's packaged).
  9. Using the console response from my remote in step 6, append the provided repo example, and edit the configuration.yaml on HA with the values where applicable, hashing out any that aren't, and noting any errors in the HA log files.
  10. (This is where I'm getting unstuck). Edit the Home assistant lovelace page to assign a 'Thermostat card' to the entity (after a reboot) in this example the device is named 'IRtest1' which has a number of detected entity IDs, all starting 'sensor.x' image I'm assuming that as shown in the screen shot, the entity needs to start 'climate.x' rather than 'sensor.x' to be listed, (all the shown ones are from my Broadlink IR Sensors) or I missed something in the readme instructions which would mean I've deviated from the path somewhat.
cociweb commented 1 week ago

Great! Thank you!

Download the repo zip, and extract it to '...\config\Tasmota-IRHVAC-master' (I assume not '...\config\Tasmota-IRHVAC-master\Tasmota-IRHVAC-master' which is how it's packaged).

a) The simplest way is to use HACS and instal from there.... b) If you are not allowed to use HACS for whatever reason, then you can chose the manual install. Make sure that the climate.py, const.py, services.yaml, manifest.json and init.py are in the /config/custom_components/tasmota_irhvac/ folder. (just to be aligned, please note that the configuration.yaml is also in the /config/ folder.)

Using the console response from my remote in step 6, append the provided repo example, and edit the configuration.yaml on HA with the values where applicable, hashing out any that aren't, and noting any errors in the HA log files.

Can you please share the adjusted section from the configuration.yaml?

Darthmonkey commented 1 week ago

Even though I do remember doing the whole 'custom HACS installation from GitHub' thing previously, I had forgotten it was an option when I searched for it through HACS all three times. I've now installed via HACS, and I've been able to add it as a Thermostat card. Thanks for that. I do have another two issues, which can be asked elsewhere if appropriate:

  1. When I press a button on the thermostat and hold the device close to the AC it's not doing anything. I suspect that if I could send an ON/OFF via the Tasmota console, I might be able to troubleshoot, but I'm not sure how.
  2. The console sometimes responds to inputs from the AC remote, probably every 10th button press, even though the light on the receiver flashes strongly when a button press is detected. Could that be a Wemos D1 issue? configuration.txt

configuration.yaml code attached if still relevant (it was pasted as code but formatting went wild).

cociweb commented 1 week ago

probably every 10th button press

I’m not an expert in this area, but there are low-cost IR receivers/demodulators that provide equivalent quality. You can find more information about this topic in the Frequently Asked Questions section of IRremoteESP8266.

When I press a button on the thermostat and hold the device close to the AC it's not doing anything. Do you also have an IR modulator unit?

For additional reading on this hardware topic, you can refer to the Tasmota IR documentation.

When I started from the beginning, I checked it with an example code from IRremoteESP8266 to ensure that every feature, vendor, brand, and model were correctly recognized. This library is included in Tasmota. Keep in mind that all vendors and other features are included only in the precompiled and purified Tasmota-IR variant. If you’re interested only in your prototype, you might consider building your own solution.

In any case, I believe we’ve addressed your original problem, as this component seems to function more like a HA thermostat with MQTT communication and the correct payload for IR messages.

Darthmonkey commented 1 week ago

Thanks very much for that, yes, I believe my journey continues, but not on this post.