Improved model mapping

- initialize result buffer
- added new mappings
- added und fixed man codes
This commit is contained in:
Stefan Wahren 2012-05-29 20:33:09 +02:00
parent 0cb23161e7
commit 989eada28a
2 changed files with 36 additions and 16 deletions

View File

@ -754,6 +754,8 @@ mbus_data_product_name(mbus_data_variable_header *header)
static char buff[128]; static char buff[128];
unsigned int manufacturer; unsigned int manufacturer;
memset(buff, 0, sizeof(buff));
if (header) if (header)
{ {
manufacturer = (header->manufacturer[1] << 8) + header->manufacturer[0]; manufacturer = (header->manufacturer[1] << 8) + header->manufacturer[0];
@ -782,6 +784,15 @@ mbus_data_product_name(mbus_data_variable_header *header)
break; break;
} }
} }
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_EFE)
{
switch (header->version)
{
case 0x01:
strcpy(buff,"Engelmann SensoStar 2C");
break;
}
}
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_SLB) else if (manufacturer == MBUS_VARIABLE_DATA_MAN_SLB)
{ {
switch (header->version) switch (header->version)
@ -821,18 +832,6 @@ mbus_data_product_name(mbus_data_variable_header *header)
break; break;
} }
} }
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_ZRM)
{
switch (header->version)
{
case 0x81:
strcpy(buff,"Minol Minocal C2");
break;
case 0x82:
strcpy(buff,"Minol Minocal WR3");
break;
}
}
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_SVM) else if (manufacturer == MBUS_VARIABLE_DATA_MAN_SVM)
{ {
switch (header->version) switch (header->version)
@ -868,6 +867,7 @@ mbus_data_product_name(mbus_data_variable_header *header)
switch (header->version) switch (header->version)
{ {
case 0x31: case 0x31:
case 0x34:
strcpy(buff,"Sensus PolluTherm"); strcpy(buff,"Sensus PolluTherm");
break; break;
} }
@ -908,11 +908,30 @@ mbus_data_product_name(mbus_data_variable_header *header)
break; break;
} }
} }
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_TCH)
return buff; {
switch (header->version)
{
case 0x26:
strcpy(buff,"Techem m-bus S");
break;
}
}
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_ZRM)
{
switch (header->version)
{
case 0x81:
strcpy(buff,"Minol Minocal C2");
break;
case 0x82:
strcpy(buff,"Minol Minocal WR3");
break;
}
}
} }
return ""; return buff;
} }
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------

View File

@ -465,6 +465,7 @@ typedef struct _mbus_data_secondary_address {
#define MBUS_VARIABLE_DATA_MAN_ACW 0x0477 #define MBUS_VARIABLE_DATA_MAN_ACW 0x0477
#define MBUS_VARIABLE_DATA_MAN_ABB 0x0442 #define MBUS_VARIABLE_DATA_MAN_ABB 0x0442
#define MBUS_VARIABLE_DATA_MAN_AMT 0x05B4 #define MBUS_VARIABLE_DATA_MAN_AMT 0x05B4
#define MBUS_VARIABLE_DATA_MAN_EFE 0x14C5
#define MBUS_VARIABLE_DATA_MAN_ELS 0x1593 #define MBUS_VARIABLE_DATA_MAN_ELS 0x1593
#define MBUS_VARIABLE_DATA_MAN_EMH 0x15A8 #define MBUS_VARIABLE_DATA_MAN_EMH 0x15A8
#define MBUS_VARIABLE_DATA_MAN_HYD 0x2324 #define MBUS_VARIABLE_DATA_MAN_HYD 0x2324
@ -478,7 +479,7 @@ typedef struct _mbus_data_secondary_address {
#define MBUS_VARIABLE_DATA_MAN_SON 0x4DEE #define MBUS_VARIABLE_DATA_MAN_SON 0x4DEE
#define MBUS_VARIABLE_DATA_MAN_SPX 0x4E18 #define MBUS_VARIABLE_DATA_MAN_SPX 0x4E18
#define MBUS_VARIABLE_DATA_MAN_SVM 0x4ECD #define MBUS_VARIABLE_DATA_MAN_SVM 0x4ECD
#define MBUS_VARIABLE_DATA_MAN_TCM 0x5068 #define MBUS_VARIABLE_DATA_MAN_TCH 0x5068
#define MBUS_VARIABLE_DATA_MAN_ZRM 0x6A4D #define MBUS_VARIABLE_DATA_MAN_ZRM 0x6A4D
// //