-
Notifications
You must be signed in to change notification settings - Fork 142
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
Thermostat setting temperature error (CON-934) #773
Comments
@MaplestoryAlen I was able to set occupied_heating_setpoint/occupied_cooling_setpoint within its min/max limits, could you please check again? Or please share whole patch with me so that I can check what is wrong. |
From the logs, it appears that the temperature setting has been successful, but the chip tool returned an error code of 0x87 matter version:v1.2 log: I (490124) chip[EM]: >>> [E:58782r S:0 M:94660592] (U) Msg RX from 0:F64840654B6DC60F [0000] --- Type 0000:30 (SecureChannel:CASE_Sigma1) chip-tool command: ./chip-tool thermostat write occupied-heating-setpoint 2600 0x12 1 log:
|
From logs, there is failure in setting attribute values. I would suggest clean build the app, erase_flash, flash and rebuild the chip-tool. Also could you please share the whole patch that you are trying out? |
I have tried deleting the build folder and using the clean and fullclrun commands, as well as refactoring the project, but the same temperature setting still resulted in errors |
Just use the latest esp-matter, it should work. If you can please attach a patch that you are trying out. |
|
@MaplestoryAlen Are you on latest esp-matter commit? Did you did clean build and erase flash on device? If yes, could you please attach the chip tool logs of reading the occupied-heating-setpoint/occupied-cooling-setpoint and its corresponding min/max attribute values? |
The logs I read have already been mentioned in the reply above. I am using a version that was around 2 months ago, so I am updating the latest version. I wonder if it can solve the above problem? log: |
Please read the min/max attributes values too!! |
chip-tool: esp32s3 log:
chip-tool: eps32s3 log:
|
@MaplestoryAlen I have understood the issue, since you have enabled all the feature of the thermostat cluster along with AUTO feature. And the spec says when you have AUTO feature enabled then Eg, RequestedOccupiedHeatingSetpoint = 30, OccupiedCoolingSetpoint = 26, and MinSetpointDeadBand = 2.5 Ref code link: https://github.com/project-chip/connectedhomeip/blob/master/src/app/clusters/thermostat-server/thermostat-server.cpp#L169 |
This question may not be like this, please see my test below
|
The value of system-mode does not disable the AUTO feature of the device, system-mode value only indicates current operating mode. Since your device have AUTO feature you are getting CONSTRAINT_ERROR |
In order not to open a new problem, I will ask my question here.
|
@Kristian8606 Does the attribute updates in both the cases or you get CONSTRAINT_ERROR? |
I don't get an error, I just don't get a callback when the |
@Kristian8606 Can you please attach the complete logs to analyse? |
@Kristian8606 Can you please share the required logs, if you are still seeing this issue. If not, please close this. |
I am closing this now. Please re-open by providing the requested details. |
Describe the bug
Using the chip tool to send heating can only be done at 22-24 degrees Celsius and cooling can only be done at 23-26 degrees Celsius. Failure to do so will result in failure
The attribute configuration is as follows:
namespace heating {
typedef struct config {
int16_t occupied_heating_setpoint;
int16_t max_heat_setpoint_limit;
int16_t min_heat_setpoint_limit;
int16_t abs_max_heat_setpoint_limit;
int16_t abs_min_heat_setpoint_limit;
config():occupied_heating_setpoint(2000),max_heat_setpoint_limit(3500),min_heat_setpoint_limit(2200),abs_max_heat_setpoint_limit(3500),abs_min_heat_setpoint_limit(2200){}
} config_t;
uint32_t get_id();
esp_err_t add(cluster_t *cluster, config_t config);
} / heating */
namespace cooling {
typedef struct config {
int16_t occupied_cooling_setpoint;
int16_t max_cool_setpoint_limit;
int16_t min_cool_setpoint_limit;
int16_t abs_max_cool_setpoint_limit;
int16_t abs_min_cool_setpoint_limit;
config (): occupied_cooling_setpoint(2600),max_cool_setpoint_limit(3000),min_cool_setpoint_limit(1600),abs_max_cool_setpoint_limit(3000),abs_min_cool_setpoint_limit(1600) {}
} config_t;
uint32_t get_id();
esp_err_t add(cluster_t *cluster, config_t config);
} / cooling */
chip_tool command :
./chip-tool thermostat write unoccupied-cooling-setpoint 2200 0x12 1
return:
CHIP:TOO: Run command failure: IM Error 0x00000587: General error: 0x87 (CONSTRAINT_ERROR)
Environment
Any additional details
...
The text was updated successfully, but these errors were encountered: