Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Another variant for LG swing command to add. (request) #1770

Closed
crackn opened this issue Mar 5, 2022 · 13 comments · Fixed by #1771
Closed

Another variant for LG swing command to add. (request) #1770

crackn opened this issue Mar 5, 2022 · 13 comments · Fixed by #1771

Comments

@crackn
Copy link

crackn commented Mar 5, 2022

Hi, @crankyoldgit

I would like to know if its possible to add another command to turn on and off the swing function on LG (older model)

this is the code that is working for turn on and turn off swing: { "Protocol":"LG","Bits": 28,"Data": 0x8810001 }

I noted that in LG_ir.h all the swing variants are 0x8813xxx and none of that works on this older model of LG.

thanks in adv.

@crankyoldgit
Copy link
Owner

Can you please give us your brand/model numbers for your remote and A/C unit?

@crackn
Copy link
Author

crackn commented Mar 5, 2022

Remote is 6711A20083V
Air is TS-H122ERM1

if I use IRsend with { "Protocol":"LG","Bits": 28,"Data": 0x8810001 } it works but I am trying to send commands with IRHVAC and SwingV option but I cant make it work.

I am testing it from tasmota console btw.
all other commands are working fine, only swing is broken.

IRHVAC {"Vendor":"LG","Model":1,"Mode":"Fan","Power":"On","Celsius":"On","Temp":25,"FanSpeed":"Min","SwingV":"Auto","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","Sleep":-1}

IRHVAC {"Vendor":"LG","Model":1,"Mode":"Fan","Power":"On","Celsius":"On","Temp":25,"FanSpeed":"Min","SwingV":"Off","SwingH":"Off","Quiet":"Off","Turbo":"Off","Econo":"Off","Light":"Off","Filter":"Off","Clean":"Off","Beep":"Off","Sleep":-1}

@crankyoldgit
Copy link
Owner

The brand is LG too?

@crackn
Copy link
Author

crackn commented Mar 5, 2022

LG yes

@crankyoldgit
Copy link
Owner

Sorry, another question. Is that the only swing command your remote produces?

@crackn
Copy link
Author

crackn commented Mar 5, 2022

Yes, 0x8810001 for both swing On and Swing Off (toggle)

crankyoldgit added a commit that referenced this issue Mar 7, 2022
* Detect swingv toggle messages and set appropriate model.
* Allow sending of swingv toggle messages.
* Update supported models info
* Various collateral updates.
* Minor code cleanup.
* Supporting unit tests.

* Needs testing on a real device.

Fixes #1770
@crankyoldgit
Copy link
Owner

@crackn Can you please download and test the following branch: https://github.com/crankyoldgit/IRremoteESP8266/tree/Issue1770

You will need to set the protocol to LG, & the model to LG6711A20083V or 5 in order for it to work correctly. I'm not 100% sure I've got sending correct for it. :-/

Please also test the remote with IRrecvDumpV2 or V3, it should detect as:

Model: 5 (LG6711A20083V), Swing(V): Toggle

When it gets your swing toggle message code, otherwise it should be Model: 1 / GE6711AR2853M

crankyoldgit added a commit that referenced this issue Mar 7, 2022
@crankyoldgit crankyoldgit added the Pending Confirmation Waiting for confirmation from user label Mar 7, 2022
@crackn
Copy link
Author

crackn commented Mar 7, 2022

ok, I will test it and return to you asap. thanks

btw, I was doing some tests and noted that some comands are identified as diferent controllers. so there are some bugs in the LG detection code, i will do more tests to give you feedback about this ok.

@crankyoldgit
Copy link
Owner

btw, I was doing some tests and noted that some comands are identified as diferent controllers. so there are some bugs in the LG detection code, i will do more tests to give you feedback about this ok.

Model Detection is based on a per message basis. Some messages are unique to a model, so it's detected as the correct model. And some messages are common to multiple models, so it reports them as a less specific (base) model.
I.e. sometimes there is no way to tell models apart based on an individual single message.

@crackn
Copy link
Author

crackn commented Mar 7, 2022

here are the results:

the swing function works great.

*** LG SWING-V toggle command (remote LG6711A20083V) OK!
obs. one minor thing I noted is when I send the command from remote, AC only beep once and when I
send the command by the lib, the AC beeps twice. I don't know why.
Protocol : LG
Code : 0x8810001 (28 Bits)
Mesg Desc.: Model: 5 (LG6711A20083V), Swing(V): Toggle
uint32_t address = 0x88;
uint32_t command = 0x1000;
uint64_t data = 0x8810001;

and below are some other functions not implemented.

*** LG SWING-H toggle command (remote LG6711A20083V)
obs. remote have the button but my hardware isn't supported.
Protocol : LG
Code : 0x8813004 (28 Bits)
Mesg Desc.: Model: 1 (GE6711AR2853M)
uint32_t address = 0x88;
uint32_t command = 0x1300;
uint64_t data = 0x8813004;

*** LG JET-COOL ON command (remote LG6711A20083V)
obs. there is NO OFF command, it just return to what was on remote memory.
Protocol : LG
Code : 0x8810089 (28 Bits)
Mesg Desc.: Model: 3 (AKB74955603), Power: On, Mode: 0 (Cool), Temp: 15C, Fan: 8 (UNKNOWN)
uint32_t address = 0x88;
uint32_t command = 0x1008;
uint64_t data = 0x8810089;

*** LG AUTO-CLEAN ON command (remote LG6711A20083V)
Protocol : LG
Code : 0x88C00B7 (28 Bits)
Mesg Desc.: Model: 3 (AKB74955603), Power: Off
uint32_t address = 0x88;
uint32_t command = 0xC00B;
uint64_t data = 0x88C00B7;

*** LG AUTO-CLEAN OFF command (remote LG6711A20083V)
Protocol : LG
Code : 0x88C00C8 (28 Bits)
Mesg Desc.: Model: 3 (AKB74955603), Power: Off
uint32_t address = 0x88;
uint32_t command = 0xC00C;
uint64_t data = 0x88C00C8;

*** LG PLASMA-ION ON command (remote LG6711A20083V)
Protocol : LG
Code : 0x88C000C (28 Bits)
Mesg Desc.: Model: 1 (GE6711AR2853M), Power: Off
uint32_t address = 0x88;
uint32_t command = 0xC000;
uint64_t data = 0x88C000C;

*** LG PLASMA-ION OFF command (remote LG6711A20083V)
Protocol : LG
Code : 0x88C0084 (28 Bits)
Mesg Desc.: Model: 3 (AKB74955603), Power: Off
uint32_t address = 0x88;
uint32_t command = 0xC008;
uint64_t data = 0x88C0084;

it would be great and easy to implement if all functions belonged to the same mode but I understand your point.
if you need any other tests please let me know.

thanks.

@crankyoldgit
Copy link
Owner

Please create a new issue for the extra features you're now suggesting.

*** LG SWING-V toggle command (remote LG6711A20083V) OK!
obs. one minor thing I noted is when I send the command from remote, AC only beep once and when I
send the command by the lib, the AC beeps twice. I don't know why.

That is to be expected. When using the interface that you're using, it will try to set the A/C to all the desired settings each time to ensure the device is completely in the desired operational mode.
i.e. The mode/temp/fan settings and the swing settings. In order to do so, it must send a "normal" settings message, followed by the desired "swing" setting.

@crackn
Copy link
Author

crackn commented Mar 8, 2022

Ok, no problem, I will do that. thanks for the fast solution.

@crackn crackn closed this as completed Mar 9, 2022
crankyoldgit added a commit that referenced this issue Mar 9, 2022
* Detect swingv toggle messages and set appropriate model.
* Allow sending of swingv toggle messages.
* Update supported models info
* Various collateral updates.
* Minor code cleanup.
* Supporting unit tests.

* Confirmed working on real device by requester.

Fixes #1770
crankyoldgit added a commit that referenced this issue Mar 14, 2022
_v2.8.2 (20220314)_

**[Bug Fixes]**
- ESP32-C3: Fix reboot/crashes on ESP32-C3s when receiving. (#1768 #1751)

**[Features]**
- HITACHI_AC296: Add `IRac` class support & tests. (#1776 #1758 #1757)
- Support for Hitachi RAS-70YHA3 (remote RAR-3U3) (#1758 #1757)
- LG: Add Swing Toggle support for Model `LG6711A20083V` (#1771 #1770)
- IRMQTTServer: add `MQTT_SERVER_AUTODETECT_ENABLE` via mqtt mDNS (#1769)
- Experimental basic support for Kelon 168 bit / 21 byte protocol. (#1747 #1745 #1744)
- MitsubishiAC: Tweak repeat gap timing. (#1760 #1759)
- Gree YAP0F8 (Detected as Kelvinator) vertical position set support (#1756)
- Make KELON (48 bit) protocol decoding stricter. (#1746 #1744)
- IRMQTTServer V1.6.1 (#1740 #1739 #1729)
- HITACHI_AC264: Add minimal detailed support. (#1735 #1729)
- LG2: Improve Light toggle msg handling. (#1738 #1737)
- MIDEA: Add support for Quiet, Clean & Freeze Protect controls. (#1734 #1733)
- Add basic support for HITACHI_AC264 264bit protocol. (#1730 #1729)
- ESP32-C3: Work around for some C3 specific compiler issues again. (#1732 #1695)

**[Misc]**
- MIDEA: Update supported devices (#1774 #1773 #1716)
- Update devices supported by ELECTRA_AC (#1766 #1765)
- Improve documentation for `encodePioneer()` (#1761 #1749)
- Update (un)supported DAIKIN128 devices. (#1752)
- Refactor `decodeCOOLIX()` code & add another test case. (#1750 #1748)
- Simplify code based on state_t being initialised by default. (#1736 #1699)
- Add comments to help Teknopoint users. (#1731 #1728)
- Fix library version string calculation. (#1727 #1725)
- Confirm we can reproduce `TurnOnFujitsuAC.ino` via IRac/IRMQTTServer. (#1726 #1701)
crankyoldgit added a commit that referenced this issue Mar 15, 2022
##_v2.8.2 (20220314)_

**[Bug Fixes]**
- ESP32-C3: Fix reboot/crashes on ESP32-C3s when receiving. (#1768 #1751)

**[Features]**
- HITACHI_AC296: Add `IRac` class support & tests. (#1776 #1758 #1757)
- Support for Hitachi RAS-70YHA3 (remote RAR-3U3) (#1758 #1757)
- LG: Add Swing Toggle support for Model `LG6711A20083V` (#1771 #1770)
- IRMQTTServer: add `MQTT_SERVER_AUTODETECT_ENABLE` via mqtt mDNS (#1769)
- Experimental basic support for Kelon 168 bit / 21 byte protocol. (#1747 #1745 #1744)
- MitsubishiAC: Tweak repeat gap timing. (#1760 #1759)
- Gree YAP0F8 (Detected as Kelvinator) vertical position set support (#1756)
- Make KELON (48 bit) protocol decoding stricter. (#1746 #1744)
- IRMQTTServer V1.6.1 (#1740 #1739 #1729)
- HITACHI_AC264: Add minimal detailed support. (#1735 #1729)
- LG2: Improve Light toggle msg handling. (#1738 #1737)
- MIDEA: Add support for Quiet, Clean & Freeze Protect controls. (#1734 #1733)
- Add basic support for HITACHI_AC264 264bit protocol. (#1730 #1729)
- ESP32-C3: Work around for some C3 specific compiler issues again. (#1732 #1695)

**[Misc]**
- MIDEA: Update supported devices (#1774 #1773 #1716)
- Update devices supported by ELECTRA_AC (#1766 #1765)
- Improve documentation for `encodePioneer()` (#1761 #1749)
- Update (un)supported DAIKIN128 devices. (#1752)
- Refactor `decodeCOOLIX()` code & add another test case. (#1750 #1748)
- Simplify code based on state_t being initialised by default. (#1736 #1699)
- Add comments to help Teknopoint users. (#1731 #1728)
- Fix library version string calculation. (#1727 #1725)
- Confirm we can reproduce `TurnOnFujitsuAC.ino` via IRac/IRMQTTServer. (#1726 #1701)
@crankyoldgit
Copy link
Owner

FYI, the changes mentioned above have now been included in the new v2.8.2 release of the library.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants