-
Notifications
You must be signed in to change notification settings - Fork 839
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
Technibel support #1259
Technibel support #1259
Conversation
# Conflicts: # src/IRac.cpp # src/IRrecv.cpp # src/IRrecv.h # src/IRremoteESP8266.h # src/IRsend.h # src/IRtext.cpp
@Quentinbri First off, this is amazing. Congrats on doing this. It's a huge effort, I know. The "large" issue is I'm pretty sure you've chosen the wrong bit-order for the message. If you choose MSBF order (instead of the LSBF order you've picked), you shouldn't need to do all the bit reversing for the numeric values. e.g. Temperature. Anyway, again, this is a TOP effort. Thanks very very much for doing it and contributing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're also missing a section in:
IRac::decodeToState()
in IRac.cpp. (I can add this later)
an IRac::technibel()
function in IRac.cpp (I can add this later)
and a corresponding call to technibel()
in bool IRac::sendAc(const stdAc::state_t desired, const stdAc::state_t *prev)
function. (I can add this later)
Sorry for all the nitpicks etc, everything should be fairly minor, except for the LSB->MSB swap. that will be a doosey :-(
Again, top effort. This is amazing work. Please keep it up!
Thank you so much for your comments @crankyoldgit. |
Change comments into doxygen ones Update a section of IRac.cpp Remove TurnOnTechnibelAC example Various minor improvements
65b0c83
to
0b3a5e3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. Thanks for all the improvements and the code itself!
I'll merge this and make some minor improvements/changes/tests.
sendGeneric(kTechnibelAcHdrMark, kTechnibelAcHdrSpace, | ||
kTechnibelAcBitMark, kTechnibelAcOneSpace, | ||
kTechnibelAcBitMark, kTechnibelAcZeroSpace, | ||
kTechnibelAcBitMark, kTechnibelAcGap, | ||
data, nbits, kTechnibelAcFreq, false, // LSB First. | ||
data, nbits, kTechnibelAcFreq, true, // LSB First. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comment is now incorrect. LSB -> MSB
* Add Fahrenheit support to `IRac` for Technibel. * Add checksum verification to `decodeTechnibelAc()`. * Add unit tests for `IRac::technibel()` * Fix old horrible typo. * Add more Technibel Unit tests. * Fix poor Technibel Unit test. * [bug] Fix problem with `IRTechnibelAc` initial state not being initalised properly. * [bug] Fix problem where "Auto" being returned for "Cool" mode. (Auto mode doesn't exist!) * Lots of minor code style cleanups. * Refactor some class methods to make them simpler/smaller etc. * Fix/Add some Doxygen comments. FYI @Quentinbri Ref #1259
* Add Fahrenheit support to `IRac` for Technibel. * Add checksum verification to `decodeTechnibelAc()`. * Add unit tests for `IRac::technibel()` * Fix old horrible typo. * Add more Technibel Unit tests. * Fix poor Technibel Unit test. * [bug] Fix problem with `IRTechnibelAc` initial state not being initalised properly. * [bug] Fix problem where "Auto" being returned for "Cool" mode. (Auto mode doesn't exist!) * Lots of minor code style cleanups. * Refactor some class methods to make them simpler/smaller etc. * Fix/Add some Doxygen comments. Ref #1259
_v2.7.11 (20200902)_ **[Features]** - Transcold: Add detailed support. (#1256 #1278) - Airwell/Whirlpool: Add handling of previous state to `.toCommon()` (#1275 #1276) - IRMQTTServer: Change how MQTT packet/buffer size is set. (#1271) - Fujitsu: Add support for timers. (#1255 #1261 #1262) - Neoclima: Add Economy & Fahrenheit support (#1260 #1265) - Technibel: Cleanup and code fixes/improvements. (#1259 #1266) - Technibel: Add detailed A/C support (#1259) - Transcold: Add basic support. (#1256 #1258) **[Misc]** - refactor ir_Delonghi (#1285) - Whirlpool: Change default mode in `convertMode()` (#1283 #1284) - SamsungAC: Unit tests to help debug poor signal (#1277 #1280) - Add question & note about VS1838b use to issue template. (#1281) - rewrite ir_Corona (#1274) - tools/mkkeywords: Fix minor parsing issue. (#1272) - Add Zhongxian Li to Contributers.md (#1270) - rewrite Carrier (#1269) - rewrite ir_Argo by using bit field (#1264) - rewrite ir_Amcor by using bit field (#1263) - Update Fujitsu supported model info. - Clarify the scope of the LittleFS breaking change.
_v2.7.11 (20201002)_ **[Features]** - Transcold: Add detailed support. (#1256 #1278) - Airwell/Whirlpool: Add handling of previous state to `.toCommon()` (#1275 #1276) - IRMQTTServer: Change how MQTT packet/buffer size is set. (#1271) - Fujitsu: Add support for timers. (#1255 #1261 #1262) - Neoclima: Add Economy & Fahrenheit support (#1260 #1265) - Technibel: Cleanup and code fixes/improvements. (#1259 #1266) - Technibel: Add detailed A/C support (#1259) - Transcold: Add basic support. (#1256 #1258) **[Misc]** - refactor ir_Delonghi (#1285) - Whirlpool: Change default mode in `convertMode()` (#1283 #1284) - SamsungAC: Unit tests to help debug poor signal (#1277 #1280) - Add question & note about VS1838b use to issue template. (#1281) - rewrite ir_Corona (#1274) - tools/mkkeywords: Fix minor parsing issue. (#1272) - Add Zhongxian Li to Contributers.md (#1270) - rewrite Carrier (#1269) - rewrite ir_Argo by using bit field (#1264) - rewrite ir_Amcor by using bit field (#1263) - Update Fujitsu supported model info. - Clarify the scope of the LittleFS breaking change.
* Regenerate Doxygen documentation * v2.7.11 release _v2.7.11 (20201002)_ **[Features]** - Transcold: Add detailed support. (#1256 #1278) - Airwell/Whirlpool: Add handling of previous state to `.toCommon()` (#1275 #1276) - IRMQTTServer: Change how MQTT packet/buffer size is set. (#1271) - Fujitsu: Add support for timers. (#1255 #1261 #1262) - Neoclima: Add Economy & Fahrenheit support (#1260 #1265) - Technibel: Cleanup and code fixes/improvements. (#1259 #1266) - Technibel: Add detailed A/C support (#1259) - Transcold: Add basic support. (#1256 #1258) **[Misc]** - refactor ir_Delonghi (#1285) - Whirlpool: Change default mode in `convertMode()` (#1283 #1284) - SamsungAC: Unit tests to help debug poor signal (#1277 #1280) - Add question & note about VS1838b use to issue template. (#1281) - rewrite ir_Corona (#1274) - tools/mkkeywords: Fix minor parsing issue. (#1272) - Add Zhongxian Li to Contributers.md (#1270) - rewrite Carrier (#1269) - rewrite ir_Argo by using bit field (#1264) - rewrite ir_Amcor by using bit field (#1263) - Update Fujitsu supported model info. - Clarify the scope of the LittleFS breaking change.
FYI, the changes mentioned above have now been included in the new v2.7.11 release of the library. |
Add Technibel A/C protocol
Modifications tested IRL on Technibel IRO 13 PLUS