Added more medium definitions according to DIN EN 13757-7:2018-06 (#162)
This commit is contained in:
parent
643022388d
commit
23d8ee4844
@ -1686,12 +1686,40 @@ mbus_data_fixed_unit(int medium_unit_byte)
|
|||||||
// Heat / Cooling load meter ♣ 0000 1101 OD
|
// Heat / Cooling load meter ♣ 0000 1101 OD
|
||||||
// Bus / System 0000 1110 0E
|
// Bus / System 0000 1110 0E
|
||||||
// Unknown Medium 0000 1111 0F
|
// Unknown Medium 0000 1111 0F
|
||||||
// Reserved .......... 10 to 15
|
// Irrigation Water (Non Drinkable) 0001 0000 10
|
||||||
|
// Water data logger 0001 0001 11
|
||||||
|
// Gas data logger 0001 0010 12
|
||||||
|
// Gas converter 0001 0011 13
|
||||||
|
// Heat Value 0001 0100 14
|
||||||
|
// Hot Water (>=90°C) (Non Drinkable) 0001 0101 15
|
||||||
// Cold Water 0001 0110 16
|
// Cold Water 0001 0110 16
|
||||||
// Dual Water 0001 0111 17
|
// Dual Water 0001 0111 17
|
||||||
// Pressure 0001 1000 18
|
// Pressure 0001 1000 18
|
||||||
// A/D Converter 0001 1001 19
|
// A/D Converter 0001 1001 19
|
||||||
// Reserved .......... 20 to FF
|
// Smoke detector 0001 1010 1A
|
||||||
|
// Room sensor (e.g. Temperature or Humidity) 0001 1011 1B
|
||||||
|
// Gas detector 0001 1100 1C
|
||||||
|
// Reserved for Sensors .......... 1D to 1F
|
||||||
|
// Breaker (Electricity) 0010 0000 20
|
||||||
|
// Valve (Gas or Water) 0010 0001 21
|
||||||
|
// Reserved for Switching Units .......... 22 to 24
|
||||||
|
// Customer Unit (Display) 0010 0101 25
|
||||||
|
// Reserved for End User Units .......... 26 to 27
|
||||||
|
// Waste Water (Non Drinkable) 0010 1000 28
|
||||||
|
// Waste 0010 1001 29
|
||||||
|
// Reserved for CO2 0010 1010 2A
|
||||||
|
// Reserved for environmental meter .......... 2B to 2F
|
||||||
|
// Service tool 0011 0000 30
|
||||||
|
// Gateway 0011 0001 31
|
||||||
|
// Unidirectional Repeater 0011 0010 32
|
||||||
|
// Bidirectional Repeater 0011 0011 33
|
||||||
|
// Reserved for System Units .......... 34 to 35
|
||||||
|
// Radio Control Unit (System Side) 0011 0110 36
|
||||||
|
// Radio Control Unit (Meter Side) 0011 0111 37
|
||||||
|
// Bus Control Unit (Meter Side) 0011 1000 38
|
||||||
|
// Reserved for System Units .......... 38 to 3F
|
||||||
|
// Reserved .......... 40 to FE
|
||||||
|
// Placeholder 1111 1111 FF
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
///
|
///
|
||||||
@ -1729,7 +1757,7 @@ mbus_data_variable_medium_lookup(unsigned char medium)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case MBUS_VARIABLE_DATA_MEDIUM_HOT_WATER:
|
case MBUS_VARIABLE_DATA_MEDIUM_HOT_WATER:
|
||||||
snprintf(buff, sizeof(buff), "Hot water");
|
snprintf(buff, sizeof(buff), "Warm water (30-90°C)");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MBUS_VARIABLE_DATA_MEDIUM_WATER:
|
case MBUS_VARIABLE_DATA_MEDIUM_WATER:
|
||||||
@ -1768,6 +1796,30 @@ mbus_data_variable_medium_lookup(unsigned char medium)
|
|||||||
snprintf(buff, sizeof(buff), "Unknown Medium");
|
snprintf(buff, sizeof(buff), "Unknown Medium");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_IRRIGATION:
|
||||||
|
snprintf(buff, sizeof(buff), "Irrigation Water");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_WATER_LOGGER:
|
||||||
|
snprintf(buff, sizeof(buff), "Water Logger");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_GAS_LOGGER:
|
||||||
|
snprintf(buff, sizeof(buff), "Gas Logger");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_GAS_CONV:
|
||||||
|
snprintf(buff, sizeof(buff), "Gas Converter");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_COLORIFIC:
|
||||||
|
snprintf(buff, sizeof(buff), "Calorific value");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_BOIL_WATER:
|
||||||
|
snprintf(buff, sizeof(buff), "Hot water (>90°C)");
|
||||||
|
break;
|
||||||
|
|
||||||
case MBUS_VARIABLE_DATA_MEDIUM_COLD_WATER:
|
case MBUS_VARIABLE_DATA_MEDIUM_COLD_WATER:
|
||||||
snprintf(buff, sizeof(buff), "Cold water");
|
snprintf(buff, sizeof(buff), "Cold water");
|
||||||
break;
|
break;
|
||||||
@ -1784,8 +1836,73 @@ mbus_data_variable_medium_lookup(unsigned char medium)
|
|||||||
snprintf(buff, sizeof(buff), "A/D Converter");
|
snprintf(buff, sizeof(buff), "A/D Converter");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x10: // - 0x15
|
case MBUS_VARIABLE_DATA_MEDIUM_SMOKE:
|
||||||
case 0x20: // - 0xFF
|
snprintf(buff, sizeof(buff), "Smoke Detector");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_ROOM_SENSOR:
|
||||||
|
snprintf(buff, sizeof(buff), "Ambient Sensor");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_GAS_DETECTOR:
|
||||||
|
snprintf(buff, sizeof(buff), "Gas Detector");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_BREAKER_E:
|
||||||
|
snprintf(buff, sizeof(buff), "Breaker: Electricity");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_VALVE:
|
||||||
|
snprintf(buff, sizeof(buff), "Valve: Gas or Water");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_CUSTOMER_UNIT:
|
||||||
|
snprintf(buff, sizeof(buff), "Customer Unit: Display Device");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_WASTE_WATER:
|
||||||
|
snprintf(buff, sizeof(buff), "Waste Water");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_GARBAGE:
|
||||||
|
snprintf(buff, sizeof(buff), "Garbage");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_SERVICE_UNIT:
|
||||||
|
snprintf(buff, sizeof(buff), "Service Unit");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_RC_SYSTEM:
|
||||||
|
snprintf(buff, sizeof(buff), "Radio Converter: System");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MBUS_VARIABLE_DATA_MEDIUM_RC_METER:
|
||||||
|
snprintf(buff, sizeof(buff), "Radio Converter: Meter");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 0x22:
|
||||||
|
case 0x23:
|
||||||
|
case 0x24:
|
||||||
|
case 0x26:
|
||||||
|
case 0x27:
|
||||||
|
case 0x2A:
|
||||||
|
case 0x2B:
|
||||||
|
case 0x2C:
|
||||||
|
case 0x2D:
|
||||||
|
case 0x2E:
|
||||||
|
case 0x2F:
|
||||||
|
case 0x31:
|
||||||
|
case 0x32:
|
||||||
|
case 0x33:
|
||||||
|
case 0x34:
|
||||||
|
case 0x38:
|
||||||
|
case 0x39:
|
||||||
|
case 0x3A:
|
||||||
|
case 0x3B:
|
||||||
|
case 0x3C:
|
||||||
|
case 0x3D:
|
||||||
|
case 0x3E:
|
||||||
|
case 0x3F:
|
||||||
snprintf(buff, sizeof(buff), "Reserved");
|
snprintf(buff, sizeof(buff), "Reserved");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -487,10 +487,27 @@ typedef struct _mbus_data_secondary_address {
|
|||||||
#define MBUS_VARIABLE_DATA_MEDIUM_HEAT_COOL 0x0D
|
#define MBUS_VARIABLE_DATA_MEDIUM_HEAT_COOL 0x0D
|
||||||
#define MBUS_VARIABLE_DATA_MEDIUM_BUS 0x0E
|
#define MBUS_VARIABLE_DATA_MEDIUM_BUS 0x0E
|
||||||
#define MBUS_VARIABLE_DATA_MEDIUM_UNKNOWN 0x0F
|
#define MBUS_VARIABLE_DATA_MEDIUM_UNKNOWN 0x0F
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_IRRIGATION 0x10
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_WATER_LOGGER 0x11
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_GAS_LOGGER 0x12
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_GAS_CONV 0x13
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_COLORIFIC 0x14
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_BOIL_WATER 0x15
|
||||||
#define MBUS_VARIABLE_DATA_MEDIUM_COLD_WATER 0x16
|
#define MBUS_VARIABLE_DATA_MEDIUM_COLD_WATER 0x16
|
||||||
#define MBUS_VARIABLE_DATA_MEDIUM_DUAL_WATER 0x17
|
#define MBUS_VARIABLE_DATA_MEDIUM_DUAL_WATER 0x17
|
||||||
#define MBUS_VARIABLE_DATA_MEDIUM_PRESSURE 0x18
|
#define MBUS_VARIABLE_DATA_MEDIUM_PRESSURE 0x18
|
||||||
#define MBUS_VARIABLE_DATA_MEDIUM_ADC 0x19
|
#define MBUS_VARIABLE_DATA_MEDIUM_ADC 0x19
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_SMOKE 0x1A
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_ROOM_SENSOR 0x1B
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_GAS_DETECTOR 0x1C
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_BREAKER_E 0x20
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_VALVE 0x21
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_CUSTOMER_UNIT 0x25
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_WASTE_WATER 0x28
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_GARBAGE 0x29
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_SERVICE_UNIT 0x30
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_RC_SYSTEM 0x36
|
||||||
|
#define MBUS_VARIABLE_DATA_MEDIUM_RC_METER 0x37
|
||||||
|
|
||||||
//
|
//
|
||||||
// Returns the manufacturer ID or zero if the given
|
// Returns the manufacturer ID or zero if the given
|
||||||
@ -645,4 +662,3 @@ int mbus_is_secondary_address(const char * value);
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* _MBUS_PROTOCOL_H_ */
|
#endif /* _MBUS_PROTOCOL_H_ */
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user