Skip to content

Commit b8a1b69

Browse files
authored
Merge branch 'master' into decode-cmd-from-pkt
2 parents 9a4545e + 80a253b commit b8a1b69

File tree

2 files changed

+319
-3
lines changed

2 files changed

+319
-3
lines changed

enocean/protocol/EEP.xml

+316
Original file line numberDiff line numberDiff line change
@@ -1022,6 +1022,247 @@
10221022
</data>
10231023
</profile>
10241024
</profiles>
1025+
<profiles func="0x13" description="Environmental Applications">
1026+
<profile type="0x01" description="Weather Station">
1027+
<command description="command identifier" shortcut="CMD" offset="24" size="4">
1028+
<item description="Weather Station" value="1" />
1029+
<item description="Sun Intensity" value="2" />
1030+
<item description="Date Exchange" value="3" />
1031+
<item description="Time and Day Exchange" value="4" />
1032+
<item description="Direction Exchange" value="5" />
1033+
<item description="Geographic Position Exchange" value="6" />
1034+
</command>
1035+
<data command="1" bits="15">
1036+
<value description="Dawn sensor" shortcut="DWS" offset="0" size="8" unit="lx">
1037+
<range>
1038+
<min>0</min>
1039+
<max>255</max>
1040+
</range>
1041+
<scale>
1042+
<min>0</min>
1043+
<max>999</max>
1044+
</scale>
1045+
</value>
1046+
<value description="Outdoor Temp" shortcut="TMP" offset="8" size="8" unit="°C">
1047+
<range>
1048+
<min>0</min>
1049+
<max>255</max>
1050+
</range>
1051+
<scale>
1052+
<min>-40</min>
1053+
<max>80</max>
1054+
</scale>
1055+
</value>
1056+
<value description="Wind speed" shortcut="WND" offset="16" size="8" unit="m/s">
1057+
<range>
1058+
<min>0</min>
1059+
<max>255</max>
1060+
</range>
1061+
<scale>
1062+
<min>0</min>
1063+
<max>70</max>
1064+
</scale>
1065+
</value>
1066+
<enum description="Day / Night" shortcut="D/N" offset="29" size="1">
1067+
<item description="day" value="0" />
1068+
<item description="night" value="1" />
1069+
</enum>
1070+
<enum description="Rain Indication" shortcut="RAN" offset="30" size="1">
1071+
<item description="no rain" value="0" />
1072+
<item description="rain" value="1" />
1073+
</enum>
1074+
</data>
1075+
<data command="2" bits="15">
1076+
<value description="Sun - West" shortcut="SNW" offset="0" size="8" unit="klx">
1077+
<range>
1078+
<min>0</min>
1079+
<max>255</max>
1080+
</range>
1081+
<scale>
1082+
<min>0</min>
1083+
<max>150</max>
1084+
</scale>
1085+
</value>
1086+
<value description="Sun - South" shortcut="SNS" offset="8" size="8" unit="klx">
1087+
<range>
1088+
<min>0</min>
1089+
<max>255</max>
1090+
</range>
1091+
<scale>
1092+
<min>0</min>
1093+
<max>150</max>
1094+
</scale>
1095+
</value>
1096+
<value description="Sun - East" shortcut="SNE" offset="16" size="8" unit="klx">
1097+
<range>
1098+
<min>0</min>
1099+
<max>255</max>
1100+
</range>
1101+
<scale>
1102+
<min>0</min>
1103+
<max>150</max>
1104+
</scale>
1105+
</value>
1106+
<enum description="Hemisphere" shortcut="HEM" offset="29" size="1">
1107+
<item description="North" value="0" />
1108+
<item description="South" value="1" />
1109+
</enum>
1110+
</data>
1111+
<data command="3" bits="15">
1112+
<value description="Day" shortcut="DY" offset="3" size="5" unit="">
1113+
<range>
1114+
<min>1</min>
1115+
<max>31</max>
1116+
</range>
1117+
<scale>
1118+
<min>1</min>
1119+
<max>31</max>
1120+
</scale>
1121+
</value>
1122+
<value description="Month" shortcut="MTH" offset="12" size="4" unit="">
1123+
<range>
1124+
<min>1</min>
1125+
<max>12</max>
1126+
</range>
1127+
<scale>
1128+
<min>1</min>
1129+
<max>12</max>
1130+
</scale>
1131+
</value>
1132+
<value description="Year" shortcut="YR" offset="17" size="7" unit="">
1133+
<range>
1134+
<min>0</min>
1135+
<max>99</max>
1136+
</range>
1137+
<scale>
1138+
<min>2000</min>
1139+
<max>2099</max>
1140+
</scale>
1141+
</value>
1142+
<enum description="Source" shortcut="SRC" offset="31" size="1">
1143+
<item description="Real Time Clock" value="0" />
1144+
<item description="GPS or equivalent" value="1" />
1145+
</enum>
1146+
</data>
1147+
<data command="4" bits="15">
1148+
<enum description="Weekday" shortcut="WDY" offset="0" size="3">
1149+
<item description="Monday" value="1" />
1150+
<item description="Tuesday" value="2" />
1151+
<item description="Wednesday" value="3" />
1152+
<item description="Thursday" value="4" />
1153+
<item description="Friday" value="5" />
1154+
<item description="Saturday" value="6" />
1155+
<item description="Sunday" value="7" />
1156+
</enum>
1157+
<value description="Hour" shortcut="HR" offset="3" size="5" unit="">
1158+
<range>
1159+
<min>0</min>
1160+
<max>23</max>
1161+
</range>
1162+
<scale>
1163+
<min>0</min>
1164+
<max>23</max>
1165+
</scale>
1166+
</value>
1167+
<value description="Minute" shortcut="MIN" offset="10" size="6" unit="">
1168+
<range>
1169+
<min>0</min>
1170+
<max>59</max>
1171+
</range>
1172+
<scale>
1173+
<min>0</min>
1174+
<max>59</max>
1175+
</scale>
1176+
</value>
1177+
<value description="Second" shortcut="SEC" offset="18" size="6" unit="">
1178+
<range>
1179+
<min>0</min>
1180+
<max>59</max>
1181+
</range>
1182+
<scale>
1183+
<min>0</min>
1184+
<max>59</max>
1185+
</scale>
1186+
</value>
1187+
<enum description="Time Format" shortcut="TMF" offset="29" size="1">
1188+
<item description="24 Hours" value="0" />
1189+
<item description="12 Hours" value="1" />
1190+
</enum>
1191+
<enum description="AM/PM" shortcut="A/PM" offset="30" size="1">
1192+
<item description="AM" value="0" />
1193+
<item description="PM" value="1" />
1194+
</enum>
1195+
<enum description="Source" shortcut="SRC" offset="31" size="1">
1196+
<item description="Real Time Clock" value="0" />
1197+
<item description="GPS or equivalent" value="1" />
1198+
</enum>
1199+
</data>
1200+
<data command="5" bits="15">
1201+
<value description="Elevation" shortcut="ELV" offset="0" size="8" unit="°">
1202+
<range>
1203+
<min>0</min>
1204+
<max>180</max>
1205+
</range>
1206+
<scale>
1207+
<min>-90</min>
1208+
<max>90</max>
1209+
</scale>
1210+
</value>
1211+
<value description="Azimut" shortcut="AZM" offset="15" size="9" unit="°">
1212+
<range>
1213+
<min>0</min>
1214+
<max>359</max>
1215+
</range>
1216+
<scale>
1217+
<min>0</min>
1218+
<max>359</max>
1219+
</scale>
1220+
</value>
1221+
</data>
1222+
<data command="6" bits="15">
1223+
<value description="Latitude(MSB)" Shortcut="LAT(MSB)" offset="0" size="4" unit="">
1224+
<range>
1225+
<min>0</min>
1226+
<max>15</max>
1227+
</range>
1228+
<scale>
1229+
<min>0</min>
1230+
<max>15</max>
1231+
</scale>
1232+
</value>
1233+
<value description="Longitude(MSB)" shortcut="LOT(MSB)" offset="4" size="4" unit="">
1234+
<range>
1235+
<min>0</min>
1236+
<max>15</max>
1237+
</range>
1238+
<scale>
1239+
<min>0</min>
1240+
<max>15</max>
1241+
</scale>
1242+
</value>
1243+
<value description="Latitude(LSB)" shortcut="LAT(LSB)" offset="8" size="8" unit="">
1244+
<range>
1245+
<min>0</min>
1246+
<max>255</max>
1247+
</range>
1248+
<scale>
1249+
<min>0</min>
1250+
<max>255</max>
1251+
</scale>
1252+
</value>
1253+
<value description="Longitude(LSB)" shortcut="LOT(LSB)" offset="16" size="8" unit="">
1254+
<range>
1255+
<min>0</min>
1256+
<max>255</max>
1257+
</range>
1258+
<scale>
1259+
<min>0</min>
1260+
<max>255</max>
1261+
</scale>
1262+
</value>
1263+
</data>
1264+
</profile>
1265+
</profiles>
10251266
<profiles func="0x14" description="Multi-Func Sensor">
10261267
<profile type="0x01" description="Single Input Contact (Window/Door), Supply voltage monitor">
10271268
<data>
@@ -1472,5 +1713,80 @@
14721713
</data>
14731714
</profile>
14741715
</profiles>
1716+
<profiles func="0x14" description="Multi Function Sensors">
1717+
<profile type="0x41" description="Indoor -Temperature, Humidity XYZ Acceleration, Illumination Sensor">
1718+
<data>
1719+
<value description="Temperature 10" shortcut="TMP" offset="0" size="10" unit="°C">
1720+
<range>
1721+
<min>0</min>
1722+
<max>1000</max>
1723+
</range>
1724+
<scale>
1725+
<min>-40.0</min>
1726+
<max>60.0</max>
1727+
</scale>
1728+
</value>
1729+
<value description="Rel. Humidity linear)" shortcut="HUM" offset="10" size="8" unit="%">
1730+
<range>
1731+
<min>0</min>
1732+
<max>200</max>
1733+
</range>
1734+
<scale>
1735+
<min>0.0</min>
1736+
<max>100.0</max>
1737+
</scale>
1738+
</value>
1739+
<value description="Illumination linear)" shortcut="ILL" offset="18" size="17" unit="lx">
1740+
<range>
1741+
<min>0</min>
1742+
<max>100000</max>
1743+
</range>
1744+
<scale>
1745+
<min>0</min>
1746+
<max>100000</max>
1747+
</scale>
1748+
</value>
1749+
<enum description="Acceleration Status" shortcut="ACC" offset="35" size="2">
1750+
<item description="Periodic Update" value="0" />
1751+
<item description="Threshold 1 exceeded" value="1" />
1752+
<item description="Threshold 2 exceeded" value="2" />
1753+
</enum>
1754+
<value description="Absolute Acceleration on X axis" shortcut="ACX" offset="37" size="10" unit="g">
1755+
<range>
1756+
<min>0</min>
1757+
<max>1000</max>
1758+
</range>
1759+
<scale>
1760+
<min>-2.5</min>
1761+
<max>2.5</max>
1762+
</scale>
1763+
</value>
1764+
<value description="Absolute Acceleration on Y axis" shortcut="ACY" offset="47" size="10" unit="g">
1765+
<range>
1766+
<min>0</min>
1767+
<max>1000</max>
1768+
</range>
1769+
<scale>
1770+
<min>-2.5</min>
1771+
<max>2.5</max>
1772+
</scale>
1773+
</value>
1774+
<value description="Absolute Acceleration on Z axis" shortcut="ACZ" offset="57" size="10" unit="g">
1775+
<range>
1776+
<min>0</min>
1777+
<max>1000</max>
1778+
</range>
1779+
<scale>
1780+
<min>-2.5</min>
1781+
<max>2.5</max>
1782+
</scale>
1783+
</value>
1784+
<enum description="Contact" shortcut="CO" offset="67" size="1">
1785+
<item description="Open" value="0" />
1786+
<item description="Closed" value="1" />
1787+
</enum>
1788+
</data>
1789+
</profile>
1790+
</profiles>
14751791
</telegram>
14761792
</telegrams>

enocean/protocol/eep.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -161,15 +161,15 @@ def find_profile(self, bitarray, eep_rorg, rorg_func, rorg_type, direction=None,
161161
return None
162162

163163
if eep_rorg not in self.telegrams.keys():
164-
self.logger.warn('Cannot find rorg in EEP!')
164+
self.logger.warn('Cannot find rorg %s in EEP!', hex(eep_rorg))
165165
return None
166166

167167
if rorg_func not in self.telegrams[eep_rorg].keys():
168-
self.logger.warn('Cannot find func in EEP!')
168+
self.logger.warn('Cannot find rorg %s func %s in EEP!', hex(eep_rorg), hex(rorg_func))
169169
return None
170170

171171
if rorg_type not in self.telegrams[eep_rorg][rorg_func].keys():
172-
self.logger.warn('Cannot find type in EEP!')
172+
self.logger.warn('Cannot find rorg %s func %s type %s in EEP!', hex(eep_rorg), hex(rorg_func), hex(rorg_type))
173173
return None
174174

175175
profile = self.telegrams[eep_rorg][rorg_func][rorg_type]

0 commit comments

Comments
 (0)