-
Notifications
You must be signed in to change notification settings - Fork 130
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
Insteon: Add Support for Thermostat i2 Devices #267
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Messages arrive very very fast. Adding milliseconds to the print log helps debug what is going on.
Trailing zeros were previously omitted. Printing the milliseconds helps a lot in debugging corrupt messages
Test for unique items first, then call the routine in SUPER to handle the remaining
simple_message() is a stop-gap to bring support of i1, i2, & i2cs thermostats up to the level provided before Insteon Redux. This should allow for quick merging into the stable codebase before release 3.0. Next steps will be to split the thermostat class into an i1 and i2 class.
Conflicts: lib/Insteon/BaseInsteon.pm
Objects are reblessed when aldb version is checked
The 2441th Insteon thermostat will broadcast changes to all devices registered as a responder to group EF. Created a dummy object under thermostat that is registered as a subdevice on group EF of the thermostat. Sync links properly handles adding the link to the device, but has an error adding it to the PLM. PLM responder link is not necessary, but will solve in future commit. Moved reclass of thermostat to i1 and i2 to Insteon.pm. Will add subchildren to same sub in future.
The device requires that a specific flag be enabled for it to provide broadcast updates. Now, when sync_links is called, this flag will be automatically set. This is done by injecting code into the sync_links sub before calling the main sync_links in BaseDevice
…Force Temperature to a Whole Number
Groups 1-4 of the i2 devices report on/off events for cooling, heating, high humidity, and low humidity. Insteon objects can be linked to these events. e.g. Turn on a fan when the humidity is high. In addition, a new status child has been added. It provides a simple text of the current status of the HVAC system.
There is a possibility that a user may define a link to the EF group. If a broadcast object is defined, sync_links will automatically enable the broadcast setting.
Catch and process status request responses before processing unique _process_message commands.
Some of the older thermostat devices including the 2441v venstar device were i2 devices but do not support the newer thermostat code. As such the distinction between the old and new devices is not i1 vs i2 but rather i2CS or not i2CS.
The ALDB can only be i1 or i2, need to be checking the engine version instead.
Only Cooling and Heating statuses appear to be supported. Bits 4 and 6 are also always enabled, I don't currently know what these are. Sadly, humidifying and dehumidifying do not appear to be supported.
…h Request_Status This more closely matches what the user would expect
Conflicts: lib/Insteon.pm lib/Insteon/BaseInsteon.pm lib/Insteon_PLM.pm
…Nomenclature Heating, Cooling, ... should be humidifying and the like
There does not appear to be any request which can be made to the device to get the status of the Humidifying or Dehumidifying group (perhaps a direct request to each device->group would work) But in order to make sure that the two groups are in the proper state after a call to request_status we just manually set them inside the code
Generate Voice Commands needed to be called after the thermo version is set
krkeegan
added a commit
that referenced
this pull request
Oct 12, 2013
Insteon: Add Support for Thermostat i2 Devices
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
My work on adding support for the i2 Thermostats.
The code is good, but not perfect. However, my bad habits of over-perfection shouldn't slow this down any longer.