Hurray
I can push the buttons, but it does not know the state of buttons and i donāt know why
Nice !
Did you find how to read:
I didnāt understand how I could use the last part of code, could you rephrase it please ?
Last, AES might be used for communicating with intex cloud servers ? Do you think of another usage ?
Iām very happy you could use it, it gives me support to go on developing the integration !
Keep posting issues for errors, enhancements, and feature requests !
Nice, it helps me in visualizing the expected dashboard to produceā¦
ā¦and I think I found a contributor for internationalization of the future integration!
Can I come back to you when strings are ready to be translated ?
AES might be for mqtts , i think, it talks mqtts to cloud
Can anybody check hassio-intex-spa/switch.py at 8417514b788395a688a6ebef39e5c461944e762d Ā· Elkropac/hassio-intex-spa Ā· GitHub and tell me, why it does not have switch state?
In temperature sensors hassio-intex-spa/sensor.py at 8417514b788395a688a6ebef39e5c461944e762d Ā· Elkropac/hassio-intex-spa Ā· GitHub , i get the current temps and it also updates when temps change ā¦
I read your integration code this afternoon and it helped me much, namely your use of DataCoordinator.
I achieved to get a device and a working power switchā¦ more to come !
Looks like you messed something up with class arguments, I donāt know what but here is the class declaration I came to:
class IntexSpaPowerSwitch(IntegrationIntexSpaEntity, SwitchEntity)
using:
class IntegrationIntexSpaEntity(CoordinatorEntity)
I used this much:
Yes, thanks, that helped Now i have proper switch, but after switching on, it bounces back to off and then, on coordinator update, it bounces back to on. Do you update coordinator in async_turn_on() or async_turn_off() with return values from async_set_power() ?
Iām glad it helped. I spend lot of time on trial and error. Itās just glued together from pieces i found online. Problem is, that some things - for example entity attributes, can be defined in many ways and it seems, all are right
I will try to create cilimate entity for controling temperature and heating and then, i will wait for your properly written code
Does the decompiled code contain table of error codes?
ok, i figured out how to update coordinator using status returned from turn on or off methods
async def async_turn_off(self, **kwargs: Any) -> None:
"""Turn off switch"""
status = await self.spa.async_set_heater(False)
self.coordinator.async_set_updated_data(status)
Ok, climate entity was extremely easy, using all the knowledge from yesterday.
Does it make sense, to control ābubblesā here as fan?
<string name="e81_content">Make sure the spa is powered on and the wireless control panel is within range of the control base (5m / 16ft).</string>
<string name="e81_title">E81 - Transmission signal failure!</string>
<string name="e90_content">Check the filter cartridge and ensure nothing is clogging the circulation system.</string>
<string name="e90_title">E90 - Low or no water ļ¬ow!</string>
<string name="e91_content">Add more salt and make sure the electrolytic cell cord is firmly plugged in.</string>
<string name="e91_title">E91 - Low salt level or no salt!</string>
<string name="e92_content">Partially drain the spa and refill with fresh water.</string>
<string name="e92_title">E92 - High salt level!</string>
<string name="e94_content">Add warm water to raise the spa temperature above 5ĀŗC / 41ĀŗF.</string>
<string name="e94_title">E94 -Water temperature too low!</string>
<string name="e95_content">Turn off the heater, check the filter cartridge and ensure nothing is clogging the circulation system.</string>
<string name="e95_title">E95 -Water temperature too high!</string>
<string name="e96_content">Turn oļ¬ and unplug the spa. Check the ļ¬lter cartridge and ensure nothing is clogging the circulation system, then restart the spa.</string>
<string name="e96_title">E96 - Control base system error!</string>
<string name="e97_content">Turn oļ¬ and unplug the spa immediately. Contact Intex Service Center.</string>
<string name="e97_title">E97 - Heater dry-ļ¬re protection activated!</string>
<string name="e99_content">Turn oļ¬ and unplug the spa immediately. Contact Intex Service Center.</string>
<string name="e99_title">E99 - Damaged water temperature sensor!</string>
I hope it helps
Thanks @CyrilP
We still have to find out how the errors are coded inside of the status response.
Iāll try and go on working on the integration todayā¦ @elkropac, you got so far!!!
Thanks, I implemented it !
I personally tend to consider bubbles as a specific switch.
If not, how to consider jets ?
have a look in DeviceSPAActivity
} else if ((parseInt < 182 || ((parseInt >= 190 && parseInt <= 197) || parseInt == 199)) && needShowErrorCode(appendZeroToStr(binaryString))) {
this.hasErrorCode = true;
TextView textView = this.mErrorCode;
StringBuilder sb = new StringBuilder();
sb.append("E");
int i = parseInt - 100;
sb.append(i);
textView.setText(sb.toString());
showErrorContent("E" + i);
}
Great ! But do some error detection please, i donāt know, what happens, if status
is not instance of IntexSpaStatus
- maybe do some method in your IntegrationIntexSpaEntity
class to handle errors and call it from all async_turn_on/off
methods?
I did not consider jets, i donāt have them . You are right, you cannot cram all functionality to enitity not to ment to be SPA