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

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

#include <eoEEP_D231xx.h>

Inheritance diagram for eoEEP_D231xx:
Collaboration diagram for eoEEP_D231xx:

Public Member Functions

eoReturn SetType (uint8_t type)
 
eoReturn Parse (const eoMessage &msg)
 Parses a msg using learned in Profile from Device. More...
 
 eoEEP_D231xx (uint16_t size=10)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, uint32_t &value, uint8_t index)
 
virtual eoReturn SetValue (CHANNEL_TYPE type, uint32_t value, uint8_t index)
 
virtual eoReturn GetValue (CHANNEL_TYPE type, float &value, uint8_t index)
 Gets the Value as Floating point. More...
 
virtual eoReturn SetCommand (uint8_t cmd)
 
- Public Member Functions inherited from eoD2EEProfile
 eoD2EEProfile (uint16_t size=14)
 
virtual eoReturn CreateTeachIN (eoMessage &m)
 Generates an EEP Telegram(only not chained supported!!1) More...
 
- 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, float value, uint8_t subFlag)
 Gets the Value as a float. More...
 
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 bool IsSecDData (const eoMessage &message)
 
virtual void ClearValues ()
 
virtual eoReturn Create (eoMessage &m)
 Generates an EEP Message. More...
 
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 D231 profiles.

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

  • D2-31-00
  • D2-31-01
    NOTE: set the command before use.

The following channels are available for Set meter configuration command:

Channel Index Channel Type Type Comment
0 E_STATE MSR_TIME_VALUES MSR_CHANNEL_REPORT_TIME
1 E_STATE MSR_METER_BUS_TYPE MSR_CHANNEL_METER_TYPE
2 S_VALUE float MSR_CHANNEL_METER_CHANNEL
3 E_UNITS MSR_METER_UNITS MSR_CHANNEL_METER_1
4 E_UNITS MSR_METER_UNITS MSR_CHANNEL_METER_2

The rest of the channels are depending on the BUS type (MBUS, S0, D0).

The following channels are available if MBUS is available:

Channel Index Channel Type Type Comment
0 S_VALUE float MSR_CHANNEL_PRIMARY_ADDR

The following channels are available if S0 is available:

Channel Index Channel Type Type Comment
0 E_UNITS MSR_FACTOR_PULSES MSR_CHANNEL_PULSES_FACTOR
1 S_VALUE float MSR_CHANNEL_NUM_OF_PULSES
2 S_VALUE float MSR_CHANNEL_PRESET_VALUE

The following channels are available if D0 is available:

Channel Index Channel Type Type Comment
0 E_STATE MSR_PROTOCOL MSR_CHANNEL_PROTOCOL

The following channels are available for Meter status query command:

Channel Index Channel Type Type
0 E_STATE MSR_METER_BUS_TYPE
1 S_VALUE float

The following channels are available for Meter reading report/status response command:

Channel Index Channel Type Type Comment
0 E_STATE MSR_METER_ERROR_CODE MSR_CHANNEL_METER_ERROR
1 E_STATE MSR_METER_BUS_TYPE MSR_CHANNEL_METER_TYPE
2 S_VALUE float MSR_CHANNEL_METER_CHANNEL
3 E_STATE MSR_VALUE_SELECTION MSR_CHANNEL_VALUE_SELECTION
4 E_UNITS MSR_VALUE_UNITS
5 S_VALUE float MSR_CHANNEL_METER_1


Constructor & Destructor Documentation

◆ eoEEP_D231xx()

eoEEP_D231xx::eoEEP_D231xx ( uint16_t  size = 10)

Constructor with message size

Parameters
size

Member Function Documentation

◆ GetValue()

virtual eoReturn eoEEP_D231xx::GetValue ( CHANNEL_TYPE  type,
float &  value,
uint8_t  subFlag 
)
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.

◆ Parse()

eoReturn eoEEP_D231xx::Parse ( const eoMessage msg)
virtual

Parses a msg using learned in Profile from Device.

This function will parse the Message msg using the Profile Specific data

Parameters
msgMessage to parse
Returns
eoReturn EO_OK,NOT_SUPPORTED,NOT_IMPLEMENTED

Reimplemented from eoProfile.

◆ SetCommand()

virtual eoReturn eoEEP_D231xx::SetCommand ( uint8_t  cmd)
virtual

Sets and checks if the specified command is supported

Parameters
cmd
Returns
eoReturn EO_OK or NOT_SUPPORTED

Reimplemented from eoD2EEProfile.

◆ SetType()

eoReturn eoEEP_D231xx::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.