EnOcean Link  1.14.0.0
Middleware to Connect EnOcean easily to other Projects
eoEEP_D210xx.h
Go to the documentation of this file.
1 /******************************************************************************
2  DISCLAIMER
3 
4  THIS SOFTWARE PRODUCT ("SOFTWARE") IS PROPRIETARY TO ENOCEAN GMBH, OBERHACHING,
5  GERMANY (THE "OWNER") AND IS PROTECTED BY COPYRIGHT AND INTERNATIONAL TREATIES OR
6  PROTECTED AS TRADE SECRET OR AS OTHER INTELLECTUAL PROPERTY RIGHT. ALL RIGHTS, TITLE AND
7  INTEREST IN AND TO THE SOFTWARE, INCLUDING ANY COPYRIGHT, TRADE SECRET OR ANY OTHER
8  INTELLECTUAL PROPERTY EMBODIED IN THE SOFTWARE, AND ANY RIGHTS TO REPRODUCE,
9  DISTRIBUTE, MODIFY, DISPLAY OR OTHERWISE USE THE SOFTWARE SHALL EXCLUSIVELY VEST IN THE
10  OWNER. ANY UNAUTHORIZED REPRODUCTION, DISTRIBUTION, MODIFICATION, DISPLAY OR OTHER
11  USE OF THE SOFTWARE WITHOUT THE EXPLICIT PERMISSION OF OWNER IS PROHIBITED AND WILL
12  CONSTITUTE AN INFRINGEMENT OF THE OWNER'S RIGHT AND MAY BE SUBJECT TO CIVIL OR
13  CRIMINAL SANCTION.
14 
15  THIS SOFTWARE IS PROVIDED BY THE OWNER "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
16  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
17  FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN PARTICULAR, THE OWNER DOES NOT WARRANT
18  THAT THE SOFTWARE SHALL BE ERROR FREE AND WORKS WITHOUT INTERRUPTION.
19 
20  IN NO EVENT SHALL THE OWNER BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
21  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26  ******************************************************************************/
27 
28 #if !defined(eoEEP_D210_H__INCLUDED_)
29 #define eoEEP_D210_H__INCLUDED_
30 
33 #include "eoD2EEProfile.h"
133 typedef enum
135 {
155  MOLD_WARNING = 0x09,
163  PIR_STATUS = 0x0D,
173  PIR_LOCK = 0x12,
175  TEMP_LOCK = 0x13,
177  DISPLAY_LOCK = 0x14,
191  KEY_LOCK = 0x1B,
195  TEMP_SCALE = 0x1D,
241 
243 typedef enum
244 {
246  GENERAL_MSG = 0x00,
248  DATA_MSG = 0x01,
250  CONFIG_MSG = 0x02,
256 
258 typedef enum
259 {
261  MSG_COMPLETE = 0x00,
267 
269 typedef enum
270 {
274  DATA_REQUEST = 0x01,
282 
284 typedef enum
285 {
293 
295 typedef enum
296 {
302 
304 typedef enum
305 {
311 
313 typedef enum
314 {
320 
321 
323 typedef enum
324 {
334 
336 typedef enum
337 {
343 
345 typedef enum
346 {
354 
356 typedef enum
357 {
367 
369 typedef enum
370 {
380 
382 typedef enum
383 {
385  LOCKED = 0x00,
387  UNLOCKED = 0x01
389 
391 typedef enum
392 {
402 
404 typedef enum
405 {
411  DISPLAY_TIME = 0x02,
419  DISPLAY_OFF = 0x06,
423 
425 typedef enum
426 {
432 
434 typedef enum
435 {
441 
443 typedef enum
444 {
478 
480 typedef enum
481 {
487 
489 {
490 private:
491  uint8_t cmd;
492 
493 public:
494  eoReturn SetType(uint8_t type);
495  eoReturn Parse(const eoMessage &msg);
500  eoEEP_D210xx(uint16_t size = 10);
501  virtual ~eoEEP_D210xx();
502 
503  virtual eoReturn GetValue(CHANNEL_TYPE type, float &value, uint8_t index);
504  virtual eoReturn SetValue(CHANNEL_TYPE type, float value, uint8_t index);
505 
506  virtual eoReturn GetValue(CHANNEL_TYPE type, uint32_t &value, uint8_t index);
507  virtual eoReturn SetValue(CHANNEL_TYPE type, uint32_t value, uint8_t index);
508 
514  virtual eoReturn SetLength (uint8_t command);
515  virtual eoReturn SetCommand(uint8_t cmd);
516 };
519 #endif // !defined(EA_259BDE62_FE41_490e_8B3E_427A72922C4A__INCLUDED_)
Friday - Sunday 14
Definition: eoEEP_D210xx.h:474
General Message 0
Definition: eoEEP_D210xx.h:246
Room Control Setup 3
Definition: eoEEP_D210xx.h:252
3 hours 61
Definition: eoEEP_D210xx.h:396
On 1
Definition: eoEEP_D210xx.h:361
Display off 6
Definition: eoEEP_D210xx.h:419
Solar-powered 0
Definition: eoEEP_D210xx.h:339
D210_PERIOD_ENUM
Period enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:443
Recent temperature 38
Definition: eoEEP_D210xx.h:213
Acknowledge request 0
Definition: eoEEP_D210xx.h:272
Supported 0
Definition: eoEEP_D210xx.h:428
Day 32
Definition: eoEEP_D210xx.h:201
Low 2
Definition: eoEEP_D210xx.h:330
D210_MSG_CONTINUATION_ENUM
Message continuation enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:258
Key lock 27
Definition: eoEEP_D210xx.h:191
Acknowledge/heartbeat 0
Definition: eoEEP_D210xx.h:287
D210_RADIO_COM_INTERVAL_ENUM
Radio communication interval enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:391
No update 0
Definition: eoEEP_D210xx.h:437
D210_MESSAGE_ID_ENUM
Message IDs for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:243
Humidity validity flag 4
Definition: eoEEP_D210xx.h:145
virtual eoReturn GetValue(CHANNEL_TYPE type, float &value, uint8_t index)
Gets the Value as Floating point.
Friday - Monday 15
Definition: eoEEP_D210xx.h:476
D210_GENERAL_MSG_TYPE_ENUM
General message type enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:295
Monday 3
Definition: eoEEP_D210xx.h:452
D210_OCCUPANCY_STATUS_ENUM
Occupancy button status enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:345
Time program lock 22
Definition: eoEEP_D210xx.h:181
D210_DAYLIGHT_SAVE_ENUM
Daylight saving time enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:425
uint8_t type
Type.
Definition: eoProfile.h:69
Update 1
Definition: eoEEP_D210xx.h:439
Month 33
Definition: eoEEP_D210xx.h:203
Temperature set point 5
Definition: eoEEP_D210xx.h:417
Deletion 1
Definition: eoEEP_D210xx.h:485
D210_DATE_TIME_UPDATE_ENUM
Day / time update enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:434
Off 2
Definition: eoEEP_D210xx.h:363
Comfort temperature set point validity 46
Definition: eoEEP_D210xx.h:229
D210_INDEX_ENUM
Index enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:134
Time 2
Definition: eoEEP_D210xx.h:411
eoMessage msg
helper function to convert bits
Definition: eoProfile.h:302
Message repetition request 2
Definition: eoEEP_D210xx.h:291
Time notation 31
Definition: eoEEP_D210xx.h:199
Cooling operation status 14
Definition: eoEEP_D210xx.h:165
D210_ROOM_CONTROL_ENUM
Room control mode enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:369
D210_COOLING_HEATING_STATUS_ENUM
Cooling/Heating operation status enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:356
General message typer 3
Definition: eoEEP_D210xx.h:143
Configuration Message 2
Definition: eoEEP_D210xx.h:250
Message Class for communication.
Definition: eoMessage.h:47
Thursday 6
Definition: eoEEP_D210xx.h:458
12 hours 62
Definition: eoEEP_D210xx.h:398
Mold warning 9
Definition: eoEEP_D210xx.h:155
No change 0
Definition: eoEEP_D210xx.h:326
Daylight saving time flag 30
Definition: eoEEP_D210xx.h:197
PIR status 13
Definition: eoEEP_D210xx.h:163
Message continuation flag 0
Definition: eoEEP_D210xx.h:137
Comfort 0
Definition: eoEEP_D210xx.h:372
Building protection temperature set point 39
Definition: eoEEP_D210xx.h:215
Button pressed and occupied 1
Definition: eoEEP_D210xx.h:350
Temperature scale lock 19
Definition: eoEEP_D210xx.h:175
Not supported 1
Definition: eoEEP_D210xx.h:430
No change 0
Definition: eoEEP_D210xx.h:407
Economy temperature set point validity 45
Definition: eoEEP_D210xx.h:227
No change 0
Definition: eoEEP_D210xx.h:307
Automatic message control 2
Definition: eoEEP_D210xx.h:265
Time program request 4
Definition: eoEEP_D210xx.h:280
No communication interval 0
Definition: eoEEP_D210xx.h:394
The class to handle EEP D210 profiles.
Definition: eoEEP_D210xx.h:488
virtual eoReturn SetCommand(uint8_t cmd)
Heating operation status 15
Definition: eoEEP_D210xx.h:167
Data Message 1
Definition: eoEEP_D210xx.h:248
Automatic 3
Definition: eoEEP_D210xx.h:365
Tuesday 4
Definition: eoEEP_D210xx.h:454
D210_INFO_REQUEST_ENUM
Information request classifier enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:269
No deletion 0
Definition: eoEEP_D210xx.h:483
Window open detection 10
Definition: eoEEP_D210xx.h:157
Information request 1
Definition: eoEEP_D210xx.h:300
eoReturn Parse(const eoMessage &msg)
Parses a msg using learned in Profile from Device.
Information request classifier 1
Definition: eoEEP_D210xx.h:139
Tuesday - Thursday 11
Definition: eoEEP_D210xx.h:468
Comfort temperature set point 42
Definition: eoEEP_D210xx.h:221
Building protection temperature set point validity 43
Definition: eoEEP_D210xx.h:223
Room temperature (external) 4
Definition: eoEEP_D210xx.h:415
eoReturn SetType(uint8_t type)
Fan speed mode 6
Definition: eoEEP_D210xx.h:149
Fan speed validity flag 5
Definition: eoEEP_D210xx.h:147
D210_FAN_SPEED_MODE_ENUM
Fan speed mode enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:313
Saturday - Sunday 2
Definition: eoEEP_D210xx.h:450
Temperature set point validity 16
Definition: eoEEP_D210xx.h:169
End time minute 47
Definition: eoEEP_D210xx.h:231
virtual eoReturn SetLength(uint8_t command)
D210_BATTERY_STATUS_ENUM
Battery status enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:323
D210_TIME_PROG_DELETION_ENUM
Time program deletion enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:480
Time minute 35
Definition: eoEEP_D210xx.h:207
Individual fan speed control 1
Definition: eoEEP_D210xx.h:318
No change 0
Definition: eoEEP_D210xx.h:359
Configuration request 2
Definition: eoEEP_D210xx.h:276
24 hours 63
Definition: eoEEP_D210xx.h:400
Button pressed and unoccupied 2
Definition: eoEEP_D210xx.h:352
Economy temperature set point 41
Definition: eoEEP_D210xx.h:219
Telegram repetition request 1
Definition: eoEEP_D210xx.h:289
eoReturn
contains all the return values from different functions
Definition: eoApiDef.h:40
Time program Setup 4
Definition: eoEEP_D210xx.h:254
Start time hour 50
Definition: eoEEP_D210xx.h:237
virtual eoReturn SetValue(CHANNEL_TYPE type, float value, uint8_t index)
Gets the Value as a float.
EnOcean Equipment Profiles.
Definition: eoD2EEProfile.h:96
D210_LOCK_ENUM
Lock status enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:382
Time hour 36
Definition: eoEEP_D210xx.h:209
Custom warning 1 7
Definition: eoEEP_D210xx.h:151
Solar-powered status 12
Definition: eoEEP_D210xx.h:161
Wednesday 5
Definition: eoEEP_D210xx.h:456
Monday - Wednesday 10
Definition: eoEEP_D210xx.h:466
Date / Time lock 21
Definition: eoEEP_D210xx.h:179
End time hour 48
Definition: eoEEP_D210xx.h:233
Wednesday - Friday 12
Definition: eoEEP_D210xx.h:470
Display content lock 20
Definition: eoEEP_D210xx.h:177
Battery status 11
Definition: eoEEP_D210xx.h:159
Critical 3
Definition: eoEEP_D210xx.h:332
Thursday - Friday 13
Definition: eoEEP_D210xx.h:472
Unlocked 1
Definition: eoEEP_D210xx.h:387
Building protection 3
Definition: eoEEP_D210xx.h:378
CHANNEL_TYPE
Definition: eoChannelEnums.h:169
Feedback 0
Definition: eoEEP_D210xx.h:298
Data request 1
Definition: eoEEP_D210xx.h:274
Pre-comfort 2
Definition: eoEEP_D210xx.h:376
eoEEP_D210xx(uint16_t size=10)
Time program deletion 51
Definition: eoEEP_D210xx.h:239
Room temperature (internal) 3
Definition: eoEEP_D210xx.h:413
Economy 1
Definition: eoEEP_D210xx.h:374
No change 0
Definition: eoEEP_D210xx.h:348
Display content 28
Definition: eoEEP_D210xx.h:193
Temperature set point lock 24
Definition: eoEEP_D210xx.h:185
Valid value 1
Definition: eoEEP_D210xx.h:309
Default 1
Definition: eoEEP_D210xx.h:409
Occupancy lock 23
Definition: eoEEP_D210xx.h:183
Day / time update 37
Definition: eoEEP_D210xx.h:211
Radio communication interval 26
Definition: eoEEP_D210xx.h:189
Start time minute 49
Definition: eoEEP_D210xx.h:235
Not solar-powered 1
Definition: eoEEP_D210xx.h:341
Feedback classifier 2
Definition: eoEEP_D210xx.h:141
Year 34
Definition: eoEEP_D210xx.h:205
Incomplete 1
Definition: eoEEP_D210xx.h:263
Monday - Friday 1
Definition: eoEEP_D210xx.h:448
Complete 0
Definition: eoEEP_D210xx.h:261
Temperature validity 17
Definition: eoEEP_D210xx.h:171
Monday - Sunday 0
Definition: eoEEP_D210xx.h:446
Pre-comfort temperature set point validity 44
Definition: eoEEP_D210xx.h:225
Temperature scale 29
Definition: eoEEP_D210xx.h:195
D210_SOLAR_POWERED_ENUM
Solar-powered status enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:336
Sunday 9
Definition: eoEEP_D210xx.h:464
Friday 7
Definition: eoEEP_D210xx.h:460
Humidity 7
Definition: eoEEP_D210xx.h:421
Lock 0
Definition: eoEEP_D210xx.h:385
PIR status lock 18
Definition: eoEEP_D210xx.h:173
Saturday 8
Definition: eoEEP_D210xx.h:462
Custom warning 2 8
Definition: eoEEP_D210xx.h:153
Good 1
Definition: eoEEP_D210xx.h:328
D210_DISPLAY_CONTENT_ENUM
Display content enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:404
Room control setup request 3
Definition: eoEEP_D210xx.h:278
D210_FEEDBACK_CLASS_ENUM
Feedback classifier enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:284
Pre-comfort temperature set point 40
Definition: eoEEP_D210xx.h:217
D210_VALIDITY_FLAG_ENUM
Validity flag enums for D2-10-xx profiles.
Definition: eoEEP_D210xx.h:304
Fan speed lock 25
Definition: eoEEP_D210xx.h:187
Central fan speed control 0
Definition: eoEEP_D210xx.h:316