fakegato-history
fakegato-history copied to clipboard
New Characteristics / Services: Eve Motion - Eve Light Strip - Window Guard - Light Switch - Smoke
Hi!
I'm working on implementing custom Eve characteristics for ESP8266 based HomeKit firmware that works without any bridge via Wi-Fi.
Characteristics that i'm looking for: Temperature offset, ~~LED on Motion, Transitions, Power On Behavior~~
~~Also i'm looking for the correct Service/Characteristic order for Eve Room to show app at the settings page as "Eve Room" (like my Eve Degree, Motion etc).~~ Found it π€
~~Currently I've successfully added Eve Degree (shows up as "real" Degree in Eve app), but i can't find the correct order for Eve Room! But i've found some things in Accessory Simulator, e.g: VOC density doesn't shows up on Eve app (Room's sensor can measure it...also CO2) But VOC characteristic will be kept because I've the same sensor that Elgato have in Room~~π
~~Other thing that cant figure out is Eve Motion have ( had???) custom "LED on Motion" characteristic for toggeling the LED when motion detected.... anybody found the proper characteristic for that? It would be a nice feature to turn on/off the led when motion detected via Eve's characteristic~~π
Eve Motion characteristic:
Also i've found two new characteristic that i'm interested in after i've exposed the Log Service/Characteristics for 'LightBulb' accessory type (aka Eve Light Strip):
Transitions - Quick, Default, Moderate, Calm
(delay time for changing color)
Power On Behavior - Last Used, Default White
(color after power-outage)
You need a HomeKit app to report the characteristics. We used HMCatalog for that, see https://github.com/simont77/fakegato-history#how-to-contribute, but I think that no longer compiles on the latest XCode with Swift v5.
Yep iβve Xcode installed, HMC app isnt the problem, the biggest program is that i dont have any Eve accessories so i cant capture data at the monentπ€ Also i dont want to buy accessories just for reverse engineering Eveππ At the moment iβm playing with Accessory Simulator maybe i can figure out something πͺ Iβve opened this Issue for those who maybe have these accessories and can figure it out βοΈ Or someone who already found these π
But i've found a custom characteristic for Humidity and Temperature and Status in Eve.
Humidity E863F122-079E-48FF-8F27-9C2605A29F52
Temperature E863F108-079E-48FF-8F27-9C2605A29F52
Status E863F150-079E-48FF-8F27-9C2605A29F52
Status seems to be 'Data type' and assigned to Eve Extend. In the HomeKit Accessory simulator it shows 0 Connected
when set to data type with 0000000
value.
I've found something: π
I've added E863F11D
and E863F131
Characteristics under Log Service.
After that the two settings in Eve app appeared (Power on behavior and Transitions)
When i set the desired settings this happens:
When Transitions set to 'Calm' in Eve app: E863F11D becomes 6c02b004 6a022003 6b024006
When Transitions set to 'Moderate': 6c029001 6a029001 6b022003
When Transitions set to 'Default': 6c029600 6a029600 6b029001
When Transitions set to 'Quick': 6c025000 6a025000 6b027800
At the same time on every value change, Eve reads E863F131
Characteristics
When Power Behavior set to 'Defualt White' in Eve app: E863F11D becomes 650102
When Power Behavior set to 'Last Used' in Eve app: E863F11D becomes 650101
At the same time on every value change, Eve reads E863F131
Characteristics
The Power Behavior setting becomes constant when i also set E863F131
Characteristics.
Eve Thermo
E863F12C
's value set to 0011ff00 f22076
when performing a Valve Protection
under the settings in Eve app. Setting E863F12F
to this value will made the setting 'active'
Also I've found Eve Window Guard when adding Tampered
characteristic to "Eve Door" π The strange thing is after i've added this characteristic, the accessory is no longer available at Eve app, only when you search via Settings Icon and tap Accessories π³
Also new characteristic Tilt detection
appears π
Doesn't matter which accessory type i've selected, it works with Other, Sensor, Door and Window type accessry too π
Do you have the Characteristics UUID for Tilt detection?
Do you have the Characteristics UUID for Tilt detection?
No, i can't find it at the moment but please note Eve Window Guard doesn't really exist and not released yet since 2017(?)... π But I'll keep searching....
But I've found two services:
E863F002
- Service for Eve Room 2015
E863F003
- Service for Eve Door & Window
Also when I've added E863F003
, the Times Opened Characteristic is divided by 2 (counts both opened / closed state and divide it by 2 for only opened state). π
Also the Firmware update Characteristic (E863F11E
) manages the User manual download for each accessory.
Setting E863F11E
value to 01be00be
triggers available update for Eve Weather (2015)
Setting E863F11E
value to 02be00be
triggers available update for Eve Room (2015)
Setting E863F11E
value to 03be00be / 26be00be
triggers available update for Eve Door & Window
Setting E863F11E
value to 04be00be
triggers available update for Eve Energy (first gen)
Setting E863F11E
value to 11be00be / 25be00be
triggers available update for Eve Motion
Setting E863F11E
value to 18be00be
triggers available update for Eve Smoke
Setting E863F11E
value to 31be00be
triggers available update for Eve Button
Setting E863F11E
value to 33be00be
triggers available update for Eve Flare
Setting E863F11E
value to 36be00be
triggers available update for Eve Light Strip
Setting E863F11E
value to 22be00be / 0bbe00be
triggers available update for Eve Light Switch
Setting E863F11E
value to 37be00be / 38be00be
triggers available update for Eve Energy Strip US/EU
Setting E863F11E
value to 1ebe00be
triggers available update for Eve Degree
Setting E863F11E
value to 12be00be / 1abe00be / 2bbe00be / 0dbe00be / 28be00be / 29be00be / 1bbe00be / 1cbe00be / 2abe00be
triggers available update for Eve Energy US
Setting E863F11E
value to 14be00be / 21be00be / 14be00be / 24be00be
triggers available update for Eve Energy EU
Setting E863F11E
value to 0cbe00be / 2cbe00be / 47be00be
triggers available update for Eve Thermo
Setting E863F11E
value to 3bbe00be
triggers available update for Eve Extend
Setting E863F11E
value to 23be00be
triggers available update for Eve Aqua
Setting E863F11E
value to 27be00be
triggers available update for Eve Room (new)
And at the same time user manuals (based on the value) could be downloaded. Eg.: 01be00be
indicates available FW for Weather and Eve Weather's manual is downloadable.
The another strange observation is setting E863F11E 30be00be / 43be00be / 49be00be triggers new available characteristics!
Adding it to the new Eve Light Switch seem to be working....
I've added E863F11D
and E863F131
Characteristics under Log Service and same logic applies as i've mentioned previously: E863F11D
read the value from Eve, E863F131
sets it.
Flip orientation:
ON 21020001
OFF 21020000
Auto off timer
1 min 2c0101
2 min 2c0102
5 min 2c0105
10 min 2c010a
20 min 2c0114
30 min 2c011e
1h 2c013c
2h 2c0178
Status led:
Always off 200100
When switch on 200142
When switch off 2001c2
External input
Switch (pernament) value unknown
Push button (Momentary) value unknown
It's missing i can't find values for these....
Elgato Eve Water Guard found....π€
Please ignore the "FakeWindowGuard" name π
Leak Sensor Service
with Leak Detected Characteristic
and Last Activation Characteristic
.
Also Status Fault Characteristic
needed. When Eve detects fault it will show "Make sure the cable isn't pinched"...
Also the E863F007
Eve Log service must be added with all the necessary Characteristics and
E863F11D
with E863F131
.
When Leak detected pop-up screen shows the alarm could be Muted or Dismissed .
When Muting the alarm E863F11D
got 4e0101
value (from Eve app) and setting E863F131
to 4e0101
will set it. The siren/alarm no longer will make any sound and no pop-up window will appear again!
Setting E863F131
to 4e0001
will enable the alarm/siren (when leak detected) again!
Some characteristics may be missing.... hard to find these but Eve app shows this accessory as"Water Guard"! π
@ebaauw @simont77 My friend updated HMCatalog for Swift 5. I'll text him to create a public repo on GitHub for that, but until: HMCatalog-Swift5-experimental.zip
It has a couple UI bugs, but i think it will be patched π
No history for the leak sensor?
No history for the leak sensor?
Nope. At the moment this is what i've got π
Until its not released by Eve nobody knows what features Water Guard have.
Same applies for Window Guard too
Cool. The first byte of E863F11E
encodes the product type and the next two bytes (swapped) seem to encode the firmware build number, which is added in parentheses after the Firmware Version under Detaills. Seems that the firmware update is only suggested, if this build number is below Eveβs latest build for this product. Furthermore, sometimes with higher build number, new characteristics are unlocked. This is logical, as these settings are probably new features from this version onward.
Not sure about the 4th byte...
E863F11D
(GetConfiguration) E863F131
(SetConfiguration) are in TLV Format. Several data are entered one after the other, starting with 1 byte for type (20 for status led, 21 for flip orientation,...), 1 byte for the length (number of following bytes) and then the actual data.
The schedules for Eve aqua and Eve Light switch are also handled with this two characteristics. I'm just researching this a little bit, but itβs not quite clear now.
Thermo Schedule, in contrast, is handled with E863F12C
and E863F12F
. Not TLV, but pure binary DATA format. This was much easier to decode.
I will share my discoveries in #40 soon!
Nice work! Could you add your discoveries to the wiki, as soon as you have something consistent? thanks
@simont77 Could you pin this issue to the top?
@tobekas E863F11E
first byte is exactly the product type! When i'm changing one bit eg.: 11be00be to 11be10be FW update icon disappears.
Also: E863F11E
- based on the FW version - can add new features π
I've found one of the characteristics (basically not a real characteristic) for Eve Motion what i've looking for in first comment: LED on Motion when FW set to 25be00be
!π
LED on Motion:
On: 300101
Off: 300100
Also under Sensitivity
this appears but i wasnt able to turn it on π³ Maybe its like the Eve Thermo's Window detection feature that only enabled when (automation?) condition was set up?
Only in Dark:
E863F11D
becomes:
80040000 0400
(mostly) and sometimes 300103
and 80040000 ffff
Eve Window Guard still not working π³ Shows up in Accessories tab but not in Room/ At a glance.
But when adding Status Tampered characteristic to Eve Door still shows up as "Window Guard".
Also Tilt detection is now clickable, when hitting Start it will read from E863F131
continuously. It looks like Window Guard isn't just a reed switch contact sensor, because - according to the tampered state pop-up window and tilt detection - physical tilting / opening needed to perform.
Also Eve Smoke acts the same not shows up just in Accessories tab:
Installation is basically Status Active Characteristic
. When set to "active", installation is "OK".
Also performing a Test Alarm is necessary first.
Test alarm stop: 40020200
Test alarm start: 40020201
You need to perform at least one test ( setting E863F131 to 40020201) to disappear the red alarm icon.
I've contacted Eve to add temp offset for other Temperature related products ( Room/Degree) π€
Just FYI: I reverse engineered the Thermo schedule: See my comment im #40 and my PR: #80. I added a lot of debug outputs in my PR implementation for playing around.
Next task will be schedule for aqua / light switch / energy / energy strip, which seems more challenging.
I've see that! Great work π
Finally I've got user manual for Eve Water Guard π€ Users-Manual-4529514.pdf
So, mucking around with things, stumbled (if not known) the recipe to make the EveHome think you have an Eve Smoke. Seems adding a motion sensor to your smoke & co sensors, the it shows up as an Eve smoke. However, seems the motion history is not shown if this configuration, so must other characteristics which trigger the motion history to re-show
@n0rt0nthec4t
It works without the Motion Sensor too... Like I've posted it before π
True, but in your case, the eve app doesn't say its an Eve Smoke when using just a motion sensor. Have to work out how to get the history showing when eve app thinks its an eve smoke
This is a fantastic post! I'm using it to help add custom characteristic support to a new HomeKit browsing app of my own. π
Has anyone been able to determine what Characteristic E863F135
is? According to my app, its' metadata is:
Unit: None
Format: UInt8
Min: 0
Max: 4
Step: 1
Read: Yes
Write: No
Events: Yes
It only appears for my Eve Degree and only ever reads 1
.
Thanks!
@fullphat I've never seen it, but i guess it should be the built-in display's layout because you can change which parameter you want to show on the display and the Eve Degree should save this parameterπ Also because its not writable, the app only can read this. My guess is 0-4 is the five display layout π
In that case Eve Room also have to support the E863F135
π
Thanks for the info! I didn't know you could change what's displayed, so I'll look into that.
My Eve Room doesn't support this characteristic, although it is the old 2015(?) variant.
Update
It's now reading as 2
, although I've not changed anything.
I'd forgotten about the button on the back, but that only seems to swap between temperature and humidity on my device. The reading on E863F135
doesn't change either way.
Also, does anyone know what the readable E863F132
characteristic is? It's a UInt32 according to the metadata. My Eve Room supports it within the AirQualitySensor service.