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

Support For Daikin Series 17 FTXB24 #1754

Closed
qcarver opened this issue Feb 3, 2022 · 7 comments
Closed

Support For Daikin Series 17 FTXB24 #1754

qcarver opened this issue Feb 3, 2022 · 7 comments

Comments

@qcarver
Copy link

qcarver commented Feb 3, 2022

IRremoteESP8266 Daikin128 protocol has worked for other repo-cloners with Series 17 Daikin FTXB09 and 12. However, it doesn't work for my FTXB24 (Specifically FTXB24AXVJU).

The protocol is wicked close though. I get the acknowledgement beep from the wall unit and can issue some commands that are recieved incorrectly. The only feedback I have from the unit is the blue/red/violet LED. So far what I can observe visually... Where Daikin128 -> FTXB24

Mode Heat -> Mode Cool,
Mode Cool -> OFF
VerticalSwing* -> Cool
can't seem to mash any button which puts it in Heat mode.

I downloaded, ginned and ran the de-rigueur arduino project as described in the "Preparation" paragraph. The output from the program also seems to think the codes are Daikin128.

THE SPREADSHEET DATA IS HERE

Of note (1) the remote does not have a useful ARCxxxxxxx identifier on it. I see a dime sized QR code that equates to "3P605270-1". If i look under the batteries well I see the black printed numbers "TL701" under the batteries. (2) *There is no H swing

@gladson1990
Copy link

In the attached spreadsheet I see that the ON and OFF codes are both same. Is that valid ? just thought of conveying

crankyoldgit added a commit that referenced this issue May 6, 2022
Add a unit test to confirm we can correctly generate a known-good "Heat" mode message/state.

For #1754
@crankyoldgit
Copy link
Owner

@qcarver I was able to recreate the exact same state[] code from your doc i.e. "HEAT MODE"
You can see in PR#1795 that it creates the same state (and thus message), if what you captured is correct, then it does seem to be able to set heat mode correct. I'll need more info or explanation before I proceed further.

@gladson1990

In the attached spreadsheet I see that the ON and OFF codes are both same. Is that valid ? just thought of conveying

Yes, that is expected. The protocol does not have a discrete on or off message/setting sadly. Only a "toggle the power" setting.

@crankyoldgit crankyoldgit self-assigned this May 6, 2022
crankyoldgit added a commit that referenced this issue May 6, 2022
Add a unit test to confirm we can correctly generate a known-good "Heat" mode message/state.

For #1754
@qcarver
Copy link
Author

qcarver commented May 6, 2022

"... I'll need more info or explanation before I proceed..."
@crankyoldgit hello, I'm unsure what you'd like me to explain. How can I help?

@crankyoldgit
Copy link
Owner

@qcarver You said:

can't seem to mash any button which puts it in Heat mode.

I took the data from your document (which appears to be a capture from your remote) where you put it in heat mode.
I was able to reproduce that message/state code via the library. See below. Therefore I'm not sure what you mean by "you can't put it in Heat mode".

Testing code that makes the same state/message as your heat mode capture:

TEST(TestDaikin128Class, Issue1754_HeatMode) {
// Data from "MODE HEAT"
// Mesg Desc.: Power Toggle: Off, Mode: 8 (Heat), Temp: 19C, Fan: 4 (Medium),
// Powerful: Off, Quiet: Off, Swing(V): Off, Sleep: Off, Econo: Off,
// Clock: 20:22, On Timer: Off, On Timer: 10:00, Off Timer: Off,
// Off Timer: 16:30, Light Toggle: 0 (Off)
// Ref: https://docs.google.com/document/d/1bhPlwsUE4ppL1dlX6_aYmqCSxeE6HlOumYsR35S0CKA/edit#heading=h.luu34vdlzof1
const uint8_t heatmode[16] = { // As recorded from a real remote.
0x16, 0x48, 0x22, 0x20, 0x10, 0x56, 0x19, 0x34,
0xA1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B};
IRDaikin128 ac(kGpioUnused);
// Try to reproduce the exact same state.
ac.setClock(20 * 60 + 22);
ac.setOnTimer(10 * 60);
ac.setOnTimerEnabled(false);
ac.setOffTimer(16 * 60 + 30);
ac.setOffTimerEnabled(false);
ac.setPowerToggle(false);
ac.setTemp(19);
ac.setFan(kDaikin128FanMed);
ac.setPowerful(false);
ac.setQuiet(false);
ac.setSwingVertical(false);
ac.setSleep(false);
ac.setEcono(false);
ac.setLightToggle(0);
ac.setMode(kDaikin128Heat);
EXPECT_EQ(
"Power Toggle: Off, Mode: 8 (Heat), Temp: 19C, Fan: 4 (Medium), "
"Powerful: Off, Quiet: Off, Swing(V): Off, Sleep: Off, Econo: Off, "
"Clock: 20:22, On Timer: Off, On Timer: 10:00, Off Timer: Off, "
"Off Timer: 16:30, Light Toggle: 0 (Off)",
ac.toString());
// Compare the synthetic state to the captured one.
EXPECT_STATE_EQ(heatmode, ac.getRaw(), kDaikin128Bits);
}

@qcarver
Copy link
Author

qcarver commented May 8, 2022

@crankyoldgit Ah yes. Okay.

Yes the document was captured from the remote that came with the unit.

My comment was to say that Running v2.8.1 from HomeBridge. I couldn't find a function that would make the heat mode led go on. It is red. It turns out, that is typical of the manufacturers remote too. So my comment was infact irrelevant.

I updated to v2.8.2 today, and I am able to use the automode through the homebridge-"daikin-esp8266-platform". The LED goes on when automode has determined that it is time to heat.

I didn't see anything about FTXB24 in the v2.8.2 RELEASE notes but as far as I can tell everything works as long as the power state is in synch with homebridge. Did you make any changes? Are my codes the same as another unit (and so no changes were needed?)

Regardless, Thank you.

@crankyoldgit
Copy link
Owner

Did you make any changes? Are my codes the same as another unit (and so no changes were needed?)

No. I've made no changes. It appears your remote & AC is the same as another already supported model.

So, of in understanding it correctly, everything is working as expected, therefore there is nothing to fix? Correct?

@qcarver
Copy link
Author

qcarver commented May 9, 2022

In SW it has been my experience that as soon as I say that, I find out I am wrong.

However, here goes; "Yes, it appears everything is working as expected. There is nothing to fix."

I really appreciate your repo. Thank you.

QC

crankyoldgit added a commit that referenced this issue May 10, 2022
crankyoldgit added a commit that referenced this issue Sep 15, 2022
_v2.8.3 (20220915)_

**[Bug Fixes]**
- Fix `#if` for DECODE_COOLIX48 (#1796)
- Add missing `prev`s to `decodeToState()` (#1783)

**[Features]**
- Add `pause()` function to ESP32 when receiving. (#1871)
- ARGO: Argo add `sendSensorTemp()` (#1858 #1859)
- HAIER_AC160: Experimental detail support. (#1852 #1804)
- BOSCH144: Add IRac class support (#1841)
- Mitsubishi_AC: update left vane in `IRac` class (#1837)
- Basic support for Daikin 312bit/39byte A/C protocol. (#1836 #1829)
- Experimental basic support for Sanyo AC 152 bit protocol. (#1828 #1826)
- GREE: Add model support for `YX1FSF`/Soleus Air Windown A/C (#1823 #1821)
- Experimental basic support for Bosch 144bit protocol. (#1822 #1787)
- Experimental basic support for TCL AC 96 bit protocol. (#1820 #1810)
- Add basic support for clima-butler (52bit) RCS-SD43UWI (#1815 #1812)
- TOTO: An experimental _(s)wipe_ at support for Toto Toilets. (#1811 #1806)
- CARRIER_AC128: Experimental Basic support for Carrier AC 128bit protocol. (#1798 #1797)
- HAIER_AC160: Add basic support for Haier 160bit protocol. (#1805 #1804)
- DAIKIN: Add basic support for 200-bit Daikin protocol. (#1803 #1802)
- FUJITSU: Improve handling of 10C Heat mode. (#1788 #1780)
- FUJITSU: Improve handling of short (command only) messages. (#1784 #1780)

**[Misc]**
- Improve the `_IRREMOTEESP8266_VERSION_VAL` macro (#1875 #1870)
- SONY: Update supported devices. (#1872)
- SAMSUNG: Update supported devices (#1873)
- NEC: Update supported devices (#1874)
- Give IRmacros.h smaller scope to avoid impacting projects using IRremoteESP8266 (#1857 #1853 #1851)
- Inhibit protocol names for not-included protocols (#1853 #1851)
- Test out codeql static analysis (#1842)
- Remove pylint disable=no-self-use (#1817)
- Fujitsu General: update supported devices (#1813)
- DAIKIN: Update supported devices (#1808 #1807)
- Fujitsu: Update supported remote info. (#1801 #1794)
- DAIKIN128: Update supported devices (#1754)
- Voltas: Add link to manual for 122LZF A/C. (#1800 #1799 #1238)
- Daikin128: Additional unit test. (#1795 #1754)
- MIDEA: Update supported devices (#1791 #1790)
crankyoldgit added a commit that referenced this issue Sep 16, 2022
**_v2.8.3 (20220915)_**

**[Bug Fixes]**
- Fix `#if` for DECODE_COOLIX48 (#1796)
- Add missing `prev`s to `decodeToState()` (#1783)

**[Features]**
- Add `pause()` function to ESP32 when receiving. (#1871)
- ARGO: Argo add `sendSensorTemp()` (#1858 #1859)
- HAIER_AC160: Experimental detail support. (#1852 #1804)
- BOSCH144: Add IRac class support (#1841)
- Mitsubishi_AC: update left vane in `IRac` class (#1837)
- Basic support for Daikin 312bit/39byte A/C protocol. (#1836 #1829)
- Experimental basic support for Sanyo AC 152 bit protocol. (#1828 #1826)
- GREE: Add model support for `YX1FSF`/Soleus Air Windown A/C (#1823 #1821)
- Experimental basic support for Bosch 144bit protocol. (#1822 #1787)
- Experimental basic support for TCL AC 96 bit protocol. (#1820 #1810)
- Add basic support for clima-butler (52bit) RCS-SD43UWI (#1815 #1812)
- TOTO: An experimental _(s)wipe_ at support for Toto Toilets. (#1811 #1806)
- CARRIER_AC128: Experimental Basic support for Carrier AC 128bit protocol. (#1798 #1797)
- HAIER_AC160: Add basic support for Haier 160bit protocol. (#1805 #1804)
- DAIKIN: Add basic support for 200-bit Daikin protocol. (#1803 #1802)
- FUJITSU: Improve handling of 10C Heat mode. (#1788 #1780)
- FUJITSU: Improve handling of short (command only) messages. (#1784 #1780)

**[Misc]**
- Improve the `_IRREMOTEESP8266_VERSION_VAL` macro (#1875 #1870)
- SONY: Update supported devices. (#1872)
- SAMSUNG: Update supported devices (#1873)
- NEC: Update supported devices (#1874)
- Give IRmacros.h smaller scope to avoid impacting projects using IRremoteESP8266 (#1857 #1853 #1851)
- Inhibit protocol names for not-included protocols (#1853 #1851)
- Test out codeql static analysis (#1842)
- Remove pylint disable=no-self-use (#1817)
- Fujitsu General: update supported devices (#1813)
- DAIKIN: Update supported devices (#1808 #1807)
- Fujitsu: Update supported remote info. (#1801 #1794)
- DAIKIN128: Update supported devices (#1754)
- Voltas: Add link to manual for 122LZF A/C. (#1800 #1799 #1238)
- Daikin128: Additional unit test. (#1795 #1754)
- MIDEA: Update supported devices (#1791 #1790)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants