EnOcean Link  1.14.0.0
Middleware to Connect EnOcean easily to other Projects
eoEEP_A509xx Class Reference

The class to handle EEP a509 profiles. More...

#include <eoEEP_A509xx.h>

Inheritance diagram for eoEEP_A509xx:
Collaboration diagram for eoEEP_A509xx:

Public Member Functions

eoReturn SetType (uint8_t type)
 
eoReturn GetValue (CHANNEL_TYPE type, float &value, uint8_t index=0)
 Gets the Value as Floating point. More...
 
eoReturn SetValue (CHANNEL_TYPE type, float value, uint8_t index=0)
 Gets the Value as a float. More...
 
eoReturn GetValue (CHANNEL_TYPE type, uint32_t &value, uint8_t index)
 
eoReturn SetValue (CHANNEL_TYPE type, uint32_t value, uint8_t index)
 
- Public Member Functions inherited from eoA5EEProfile
 eoA5EEProfile (uint16_t size=4)
 
virtual eoReturn Create (eoMessage &m)
 Generates an EEP Message. More...
 
virtual eoReturn CreateTeachIN (eoMessage &m)
 Generates an EEP Telegram(only not chained supported!!1) More...
 
virtual eoReturn Parse (const eoMessage &msg)
 Parses a msg using learned in Profile from Device. More...
 
bool Is4BSData (const eoMessage &m)
 
bool IsSecDData (const eoMessage &m)
 
- Public Member Functions inherited from eoEEProfile
 eoEEProfile (uint16_t size=4)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, float &value)
 Gets the Value as Floating Point. More...
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint8_t &value)
 Sets the Value using a unsigned integer. More...
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint32_t &value)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint8_t &value, uint8_t subFlag)
 Gets the Value as unsigned integer. More...
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint64_t &value, uint8_t subFlag)
 
virtual eoReturn SetValue (CHANNEL_TYPE type, float value)
 Sets the Value using a Floating Point. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint8_t value)
 Sets the Value using a uint8_t. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint32_t value)
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint8_t value, uint8_t subFlag)
 Gets the Value as unsigned integer. More...
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint64_t value, uint8_t subFlag)
 Sets the Value as a 64-bit. More...
 
virtual eoChannelInfoGetChannel (CHANNEL_TYPE type, uint8_t subType)
 
virtual eoChannelInfoGetChannel (CHANNEL_TYPE type)
 
virtual eoChannelInfoGetChannel (uint8_t channelNumber)
 
virtual eoReturn GetSubTypeChannel (CHANNEL_TYPE type, std::vector< eoEEPChannelInfo *> &vector)
 
virtual uint8_t GetChannelCount () const
 
- Public Member Functions inherited from eoProfile
 eoProfile (uint16_t size=0)
 
virtual bool operator== (const eoProfile &othProfile) const
 
virtual bool operator!= (const eoProfile &othProfile) const
 
virtual void ClearValues ()
 
virtual uint8_t Serialize (eoArchive &a)
 Serialization Function which will be called by the eoStorageManager. More...
 
eoReturn SetManufacturer (uint16_t manufacturerID)
 

Additional Inherited Members

- Public Attributes inherited from eoProfile
uint8_t rorg
 R-ORG.
 
uint8_t func
 Func.
 
uint8_t type
 Type.
 
uint16_t manufacturer
 Manufacturer.
 
- Static Protected Member Functions inherited from eoEEProfile
static void CopyItemToChannel (eoEEPChannelInfo &channel, EEP_ITEM const *item)
 
- Static Protected Member Functions inherited from eoProfile
static float ScaleFromRAW (uint32_t rawValue, uint32_t rangeMin, uint32_t rangeMax, double scaleMin, double scaleMax)
 Creates floating Point from Raw Value. More...
 
static uint32_t ScaleToRAW (float value, uint32_t rangeMin, uint32_t rangeMax, double scaleMin, double scaleMax)
 Creates Raw Value from a floating Point. More...
 
static eoReturn GetRawValue (const eoMessage &msg, uint32_t &value, uint16_t offset, uint8_t size)
 Gives raw data Value from a Message. More...
 
static eoReturn SetRawValue (eoMessage &msg, uint32_t value, uint16_t offset, uint8_t size)
 Inserts raw data Value in a message. More...
 
- Protected Attributes inherited from eoEEProfile
eoEEPChannelInfochannel
 ChannelInfo list for direct Access to channels.
 
uint8_t channelCount
 Number of channels.
 
- Protected Attributes inherited from eoProfile
eoMessage msg
 helper function to convert bits
 
- Static Protected Attributes inherited from eoProfile
static const uint8_t maskArray [8]
 Mask array.
 

Detailed Description

The class to handle EEP a509 profiles.

Allows the user to handle EEP a509 profiles, the following profiles are available:

  • A5-09-01
  • A5-09-02
  • A5-09-04
  • A5-09-05
  • A5-09-06
  • A5-09-07
  • A5-09-08
  • A5-09-09
  • A5-09-0A
  • A5-09-0B
  • A5-09-0C


The following channels are available for 01 Profile:

Channel Index Channel Type Type
0 S_CONC float
1 S_TEMP float

The following channels are available for 02 Profile:

Channel Index Channel Type Type
0 S_VOLTAGE float
1 S_CONC float
2 S_TEMP float

The following channels are available for 04 Profile:

Channel Index Channel Type Type
0 S_RELHUM float
1 S_CONC float
2 S_TEMP float

The following channels are available for 05 Profile:

Channel Index Channel Type Type
0 S_CONC float
1 E_VOC ENUM_VOC

The following channels are available for 06 Profile:

Channel Index Channel Type Type
0 S_RADON_ACTIVITY float

The following channels are available for 07 Profile:

Channel Index Channel Type Type Comment
0 S_PARTICLESfloat PM10
1 S_PARTICLESfloat PM2_5
2 S_PARTICLESfloat PM1

The following channels are available for 08 Profile:

Channel Index Channel Type Type
0 S_CONC float

The following channels are available for 09 Profile:

Channel Index Channel Type Type
0 S_CONC float
1 F_POWERALARM uint8_t

The following channels are available for 0A Profile:

Channel Index Channel Type Type
0 S_CONC float
1 S_TEMP float
2 S_VOLTAGE float

The following channels are available for 0B Profile:

Channel Index Channel Type Type
0 S_VOLTAGE float
1 S_COUNTER float
2 E_UNITS ENUM_RADIATION_UNIT

Member Function Documentation

◆ GetValue()

eoReturn eoEEP_A509xx::GetValue ( CHANNEL_TYPE  type,
float &  value,
uint8_t  subFlag = 0 
)
virtual

Gets the Value as Floating point.

Using the CHANNEL_TYPE type information, this information gets the unsigned integer value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
subFlagSub flag
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoEEProfile.

◆ SetType()

eoReturn eoEEP_A509xx::SetType ( uint8_t  type)
virtual

Sets and checks if the specified [EEP] type is supported

Parameters
type
Returns
eoReturn EO_OK or NOT_SUPPORTED

Reimplemented from eoProfile.

◆ SetValue()

eoReturn eoEEP_A509xx::SetValue ( CHANNEL_TYPE  type,
float  value,
uint8_t  subFlag = 0 
)
virtual

Gets the Value as a float.

Using the CHANNEL_TYPE type information, this information gets the unsigned integer value accordingly, if the Profile does not support the requested CHANNEL_TYPE NOT_SUPPORTED is returned, if the functions is not implemented for the chosen profile, NOT_IMPLEMENTED is returned

Parameters
typeCHANNEL_TYPE
valueReference to floating point
subFlagSub flag
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoEEProfile.