瀏覽代碼

BT6706: fix MIB and traps

balbekova 7 年之前
父節點
當前提交
9603b1a3cc
共有 2 個文件被更改,包括 68 次插入7 次删除
  1. 2 2
      docs/SmartUPS _bt6706.MIB
  2. 66 5
      modules/Ethernet/trap_api.c

+ 2 - 2
docs/SmartUPS _bt6706.MIB

@@ -7,8 +7,8 @@ IMPORTS
     rotek           OBJECT IDENTIFIER ::= { enterprises 41752 }
     swt             OBJECT IDENTIFIER ::= { rotek 911 }
     BT-6706         OBJECT IDENTIFIER ::= { swt 4 }
-    signals         OBJECT IDENTIFIER ::= { BT-6702 1 }
-    traps           OBJECT IDENTIFIER ::= { BT-6702 2 }
+    signals         OBJECT IDENTIFIER ::= { BT-6706 1 }
+    traps           OBJECT IDENTIFIER ::= { BT-6706 2 }
 
 	
     fwVersion OBJECT-TYPE

+ 66 - 5
modules/Ethernet/trap_api.c

@@ -78,13 +78,21 @@ void SNMP_InitTrapsBase(void)
   
   /* 5. DI0Norm */ // +
    traps[DI0_NORM].trapId = DI0_NORM;
-   traps[DI0_NORM].varbindId = 9;
+#ifdef HARDWARE_BT6702
+  traps[DI0_NORM].varbindId = 9;
+#elif HARDWARE_BT6706
+  traps[DI0_NORM].varbindId = 10;
+#endif
    traps[DI0_NORM].trapEnable = true;
    traps[DI0_NORM].handle = GetDIN0StatusStr; /* State DIN */
 
    /* 6. DI0Alarm */ // +
    traps[DI0_ALARM].trapId = DI0_ALARM;
-   traps[DI0_ALARM].varbindId = 9;
+#ifdef HARDWARE_BT6702
+  traps[DI0_ALARM].varbindId = 9;
+#elif HARDWARE_BT6706
+  traps[DI0_ALARM].varbindId = 10;
+#endif
    traps[DI0_ALARM].trapEnable = true;
    traps[DI0_ALARM].handle = GetDIN0StatusStr; /* State DIN */
 
@@ -103,80 +111,128 @@ void SNMP_InitTrapsBase(void)
 #ifdef HARDWARE_BT6706
     /* 8. DO1Toggle */ // +
     traps[DO2_TOGGLED].trapId = DO2_TOGGLED;
-    traps[DO2_TOGGLED].varbindId = 19;
+    traps[DO2_TOGGLED].varbindId = 7;
     traps[DO2_TOGGLED].trapEnable = true;
     traps[DO2_TOGGLED].handle = GetDOUT2StatusStr; /* State DO2 */
 #endif
 
   /* 9. BatteryTemperatureNorm */ // +
   traps[BATTERY_TEMPERATURE_NORM].trapId = BATTERY_TEMPERATURE_NORM;
+#ifdef HARDWARE_BT6702
   traps[BATTERY_TEMPERATURE_NORM].varbindId = 10;
+#elif HARDWARE_BT6706
+  traps[BATTERY_TEMPERATURE_NORM].varbindId = 11;
+#endif
   traps[BATTERY_TEMPERATURE_NORM].trapEnable = true;
   traps[BATTERY_TEMPERATURE_NORM].handle = GetInternalTempStr; /* BatteryTemperature */  
   
   /* 10. BatteryTemperatureAlarm */ // +
   traps[BATTERY_TEMPERATURE_ALARM].trapId = BATTERY_TEMPERATURE_ALARM;
+#ifdef HARDWARE_BT6702
   traps[BATTERY_TEMPERATURE_ALARM].varbindId = 10;
+#elif HARDWARE_BT6706
+  traps[BATTERY_TEMPERATURE_ALARM].varbindId = 11;
+#endif
   traps[BATTERY_TEMPERATURE_ALARM].trapEnable = true;
   traps[BATTERY_TEMPERATURE_ALARM].handle = GetInternalTempStr; /* BatteryTemperature */
   
   /* 11. LineAlarm */ // +
   traps[LINE_ALARM].trapId = LINE_ALARM;
+#ifdef HARDWARE_BT6702
   traps[LINE_ALARM].varbindId = 12;
+#elif HARDWARE_BT6706
+  traps[LINE_ALARM].varbindId = 13;
+#endif
   traps[LINE_ALARM].trapEnable = true;
   traps[LINE_ALARM].handle = GetInputVoltageStr; /* LineAlarm */
   
   /* 12. LineNorm */ // +
   traps[LINE_NORM].trapId = LINE_NORM;
+#ifdef HARDWARE_BT6702
   traps[LINE_NORM].varbindId = 12;
+#elif HARDWARE_BT6706
+  traps[LINE_NORM].varbindId = 13;
+#endif
   traps[LINE_NORM].trapEnable = true;
   traps[LINE_NORM].handle = GetInputVoltageStr; /* LineNorm */
   
   /* 13. LowBatAlarm */ // +
   traps[LOW_BAT_ALARM].trapId = LOW_BAT_ALARM;
+#ifdef HARDWARE_BT6702
   traps[LOW_BAT_ALARM].varbindId = 15;
+#elif HARDWARE_BT6706
+  traps[LOW_BAT_ALARM].varbindId = 16;
+#endif
   traps[LOW_BAT_ALARM].trapEnable = true;
   traps[LOW_BAT_ALARM].handle = GetBatCapacityStr; /* LowBatAlarm */
   
   /* 14. LowBatNorm */ // +
   traps[LOW_BAT_NORM].trapId = LOW_BAT_NORM;
+#ifdef HARDWARE_BT6702
   traps[LOW_BAT_NORM].varbindId = 15;
+#elif HARDWARE_BT6706
+  traps[LOW_BAT_NORM].varbindId = 16;
+#endif
   traps[LOW_BAT_NORM].trapEnable = true;
   traps[LOW_BAT_NORM].handle = GetBatCapacityStr; /* LowBatNorm */
   
   /* 15. PowerAlarm */ // +
   traps[POWER_ALARM].trapId = POWER_ALARM;
+#ifdef HARDWARE_BT6702
   traps[POWER_ALARM].varbindId = 14;
+#elif HARDWARE_BT6706
+  traps[POWER_ALARM].varbindId = 15;
+#endif
   traps[POWER_ALARM].trapEnable = true;
   traps[POWER_ALARM].handle = GetPowerStr; /* PowerAlarm */
   
   /* 16. PowerNorm */ // +
   traps[POWER_NORM].trapId = POWER_NORM;
+#ifdef HARDWARE_BT6702
   traps[POWER_NORM].varbindId = 14;
+#elif HARDWARE_BT6706
+  traps[POWER_NORM].varbindId = 15;
+#endif
   traps[POWER_NORM].trapEnable = true;
   traps[POWER_NORM].handle = GetPowerStr; /* PowerNorm */
   
   /* 17. ConnectMonitorAlarm */ //
   traps[CONNECT_MONITOR_ALARM].trapId = CONNECT_MONITOR_ALARM;
+#ifdef HARDWARE_BT6702
   traps[CONNECT_MONITOR_ALARM].varbindId = 17;
+#elif HARDWARE_BT6706
+  traps[CONNECT_MONITOR_ALARM].varbindId = 18;
+#endif
   traps[CONNECT_MONITOR_ALARM].trapEnable = true;
   traps[CONNECT_MONITOR_ALARM].handle = GetConnectMonitorStr;//GetConnectMonitorStr; /* ConnectMonitor */
   
   /* 18. ConnectMonitorNorm */ //
   traps[CONNECT_MONITOR_NORM].trapId = CONNECT_MONITOR_NORM;
+#ifdef HARDWARE_BT6702
   traps[CONNECT_MONITOR_NORM].varbindId = 17;
+#elif HARDWARE_BT6706
+  traps[CONNECT_MONITOR_NORM].varbindId = 18;
+#endif
   traps[CONNECT_MONITOR_NORM].trapEnable = true;
   traps[CONNECT_MONITOR_NORM].handle = GetConnectMonitorStr;//GetConnectMonitorStr; /* ConnectMonitor */
 
   /* 19. BatteryConnectAlarm */ // +
   traps[BATTERY_CONNECT_ALARM].trapId = BATTERY_CONNECT_ALARM;
+#ifdef HARDWARE_BT6702
   traps[BATTERY_CONNECT_ALARM].varbindId = 15;
+#elif HARDWARE_BT6706
+  traps[BATTERY_CONNECT_ALARM].varbindId = 16;
+#endif
   traps[BATTERY_CONNECT_ALARM].trapEnable = true;
   traps[BATTERY_CONNECT_ALARM].handle = GetBatCapacityStr; /* LowBatAlarm */
 
   /* 20. BatteryConnectNorm */ // +
   traps[BATTERY_CONNECT_NORM].trapId = BATTERY_CONNECT_NORM;
+#ifdef HARDWARE_BT6702
   traps[BATTERY_CONNECT_NORM].varbindId = 15;
+#elif HARDWARE_BT6706
+  traps[BATTERY_CONNECT_NORM].varbindId = 16;
+#endif
   traps[BATTERY_CONNECT_NORM].trapEnable = true;
   traps[BATTERY_CONNECT_NORM].handle = GetBatCapacityStr; /* LowBatNorm */
 }
@@ -226,11 +282,16 @@ bool SNMP_SendMessageTrap(TRAP_t trap, char* str, uint8_t len)
 struct snmp_varbind vb1, vb2, vb;
 char msg[50];
 uint32_t snmp_time = 0;
-struct snmp_obj_id trapObjId = {11, {1, 3, 6, 1, 4, 1, 41752, 911, 3, 2, 1}};
+
 struct snmp_obj_id  mib2_base_oid_systime ={ 9, { 1, 3, 6, 1, 2, 1, 1, 3, 0 }};
 struct snmp_obj_id  trap_oid = {11, {1, 3, 6, 1, 6, 3, 1, 1, 4, 1, 0}};
+#ifdef HARDWARE_BT6702
+struct snmp_obj_id trapObjId = {11, {1, 3, 6, 1, 4, 1, 41752, 911, 3, 2, 1}};
 struct snmp_obj_id varObjId  = {11, {1, 3, 6, 1, 4, 1, 41752, 911, 3, 1, 1}};
-
+#elif HARDWARE_BT6706
+struct snmp_obj_id trapObjId = {11, {1, 3, 6, 1, 4, 1, 41752, 911, 4, 2, 1}};
+struct snmp_obj_id varObjId  = {11, {1, 3, 6, 1, 4, 1, 41752, 911, 4, 1, 1}};
+#endif
 /**
   * @brief  Отправка трапа с переменной, зарегистрированного в базе.
   * @retval