Ver Fonte

[BT-6711]add MIB

balbekova há 4 anos atrás
pai
commit
21ec8317d6
4 ficheiros alterados com 935 adições e 122 exclusões
  1. 7 7
      config/board_bt6711.h
  2. 632 0
      docs/bt6711/BT6711.MIB
  3. 10 0
      docs/bt6711/Changelog.md
  4. 286 115
      modules/Ethernet/private_mib_bt6711.c

+ 7 - 7
config/board_bt6711.h

@@ -167,7 +167,7 @@ XSETTING( Syslog_Settings_t,	sSyslog, SETTINGS_SetSyslogDef, ALL_DEFAULT ) \
   XTRAP(FW_VERSION_UPDATED,                1,      true,      GetVersionStr) \
   XTRAP(DEVICE_RESTORED,                   1,      true,      GetVersionStr) \
   XTRAP(DEVICE_REBOOTED,                   1,      true,      GetVersionStr) \
-  XTRAP(UPS_MODE,                          1,      true,      GetModeStr) \
+  XTRAP(UPS_MODE,                          17,     true,      GetModeStr) \
   XTRAP(BATTERY_HIGH_TEMPERATURE_NORM,     9,      true,      GetInternalTempStr) \
   XTRAP(BATTERY_HIGH_TEMPERATURE_ALARM,    9,      true,      GetInternalTempStr) \
   XTRAP(BATTERY_LOW_TEMPERATURE_NORM,      9,      true,      GetInternalTempStr) \
@@ -178,14 +178,14 @@ XSETTING( Syslog_Settings_t,	sSyslog, SETTINGS_SetSyslogDef, ALL_DEFAULT ) \
   XTRAP(VAC_LOW_OUTPUT_NORM,               12,     true,      GetOutputVoltageStr) \
   XTRAP(VAC_HIGH_OUTPUT_ALARM,             12,     true,      GetOutputVoltageStr) \
   XTRAP(VAC_HIGH_OUTPUT_NORM,              12,     true,      GetOutputVoltageStr) \
-  XTRAP(LOW_BAT_ALARM,                     14,     true,      GetBatCapacityStr) \
-  XTRAP(LOW_BAT_NORM,                      14,     true,      GetBatCapacityStr) \
-  XTRAP(BATTERY_CONNECT_ALARM,             14,     true,      GetBatCapacityStr) \
-  XTRAP(BATTERY_CONNECT_NORM,              14,     true,      GetBatCapacityStr) \
+  XTRAP(LOW_BAT_ALARM,                     16,     true,      GetBatCapacityStr) \
+  XTRAP(LOW_BAT_NORM,                      16,     true,      GetBatCapacityStr) \
+  XTRAP(BATTERY_CONNECT_ALARM,             16,     true,      GetBatCapacityStr) \
+  XTRAP(BATTERY_CONNECT_NORM,              16,     true,      GetBatCapacityStr) \
   XTRAP(POWER_ALARM,                       13,     true,      GetPowerStr) \
   XTRAP(POWER_NORM,                        13,     true,      GetPowerStr) \
-  XTRAP(CONNECT_MONITOR_ALARM,             16,     true,      GetConnectMonitorStr) \
-  XTRAP(CONNECT_MONITOR_NORM,              16,     true,      GetConnectMonitorStr) \
+  XTRAP(CONNECT_MONITOR_ALARM,             20,     true,      GetConnectMonitorStr) \
+  XTRAP(CONNECT_MONITOR_NORM,              20,     true,      GetConnectMonitorStr) \
 
 typedef enum
 {

+ 632 - 0
docs/bt6711/BT6711.MIB

@@ -0,0 +1,632 @@
+RoTeK-swt-BT-BT-6711-signals-MIB DEFINITIONS ::= BEGIN
+
+IMPORTS
+	enterprises, NOTIFICATION-TYPE
+		FROM SNMPV2-SMI;
+
+    rotek           OBJECT IDENTIFIER ::= { enterprises 41752 }
+    swt             OBJECT IDENTIFIER ::= { rotek 911 }
+    BT-6711         OBJECT IDENTIFIER ::= { swt 11}
+    signals         OBJECT IDENTIFIER ::= { BT-6711 1 }
+    traps           OBJECT IDENTIFIER ::= { BT-6711 2 }
+
+	
+    fwVersion OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "FWVersion" 
+    ::= { signals 1 }
+
+    restoreSignal OBJECT-TYPE
+    SYNTAX  INTEGER
+    MAX-ACCESS  write-only
+    STATUS  current
+    DESCRIPTION
+    "Restore settings
+    1 - restore settings"
+    ::= { signals 2 }
+	
+    rebootSignal OBJECT-TYPE
+    SYNTAX  INTEGER
+    MAX-ACCESS  write-only
+    STATUS  current
+    DESCRIPTION
+    "Reboot device: 
+    1 - reboot"
+    ::= { signals 3 }
+    
+    upsModel OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "UPS model" 
+    ::= { signals 4 }
+    
+   	upsSerial OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "UPS serial" 
+    ::= { signals 5 }
+    
+    upsVersion OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "UPS version" 
+    ::= { signals 6 }
+    
+    batTest OBJECT-TYPE
+    SYNTAX  INTEGER
+    MAX-ACCESS  write-only
+    STATUS  current
+    DESCRIPTION
+    "0 - cancel test
+    1-99 - run test to x minutes
+    100 - run test to 10 seconds
+    999 - test till charging"
+    ::= { signals 7 }
+    
+    shutdown OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  write-only
+    STATUS  current
+    DESCRIPTION
+    "Control of shut down UPS load:
+	0 - stop shut down load
+	n - shut down load in n minutes
+	n: 0.2, 0.3, .., 1, 2, .., 10"
+    ::= { signals 8 }
+	
+    intTemp OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Internal temperature" 
+    ::= { signals 9 }
+	
+    inFreq OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Input frequency, Hz" 
+    ::= { signals 10 }
+	
+    inVoltVAC OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Input voltage" 
+    ::= { signals 11 }
+	
+    outVoltVAC OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Output voltage" 
+    ::= { signals 12 }
+	
+    power OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Power, %" 
+    ::= { signals 13 }
+
+    currInput OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "UPS input current, A" 
+    ::= { signals 14 }
+
+    currOutput OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "UPS output current, A" 
+    ::= { signals 15 }
+	
+    batCap OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Battery capacity, %" 
+    ::= { signals 16 }
+
+    upsMode OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "UPS mode" 
+    ::= { signals 17 }
+    
+    batTime OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Rest working time of battery, min" 
+    ::= { signals 18 }
+
+    voltAKB OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "AKB current voltage, V" 
+    ::= { signals 19 }
+		
+    connectMonitor OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Connect status:
+	0 - normal;
+	1 - connect fail" 
+    ::= { signals 20 }
+    
+    alarms OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "bit 7 - utility fail
+	bit 6 - battery low
+	bit 5 - bypass/boost or buck active
+	bit 4 - UPS fail
+	bit 3 - UPS Type is Standby (0 is On_line)
+	bit 2 - Test in Progress
+	bit 1 - Shutdown Active
+	bit 0 - Beeper On" 
+    ::= { signals 21 }
+    
+    server1 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Get/set server1 for traps" 
+    ::= { signals 22 }
+    
+    server2 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Get/set server2 for traps" 
+    ::= { signals 23 }
+    
+    server3 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Get/set server3 for traps" 
+    ::= { signals 24 }
+    
+    server4 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Get/set server4 for traps" 
+    ::= { signals 25 }
+    
+    server5 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Get/set server5 for traps" 
+    ::= { signals 26 }
+    
+    whiteListRange1 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "white List Range1" 
+    ::= { signals 27 }
+    
+    whiteListRange2 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "white List Range2" 
+    ::= { signals 28 }
+    
+    whiteListRange3 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "white List Range3" 
+    ::= { signals 29 }
+    
+    whiteListRange4 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "white List Range4" 
+    ::= { signals 30 }
+    
+    whiteListRange5 OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "white List Range5" 
+    ::= { signals 31 }
+    
+    upsVoltCellMin OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "UPS voltage cell min" 
+    ::= { signals 32 }
+    
+    upsVoltCellMax OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "UPS voltage cell max" 
+    ::= { signals 33 }
+
+    voltAKBNominal OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "AKB nominal capacity, V" 
+    ::= { signals 34 } 
+
+    capAKBNominal OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "AKB norminal capacity, Ah" 
+    ::= { signals 35 } 
+
+    upsFullPower OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "UPS full power, VA" 
+    ::= { signals 36 } 
+    
+    vacAlarmHighRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "VAC alarm high range" 
+    ::= { signals 37 }
+    
+    vacAlarmLowRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "VAC alarm low range" 
+    ::= { signals 38 }
+    
+    vacAlarmHistRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "VAC alarm hist range" 
+    ::= { signals 39 }
+
+    vacInAlarmHighRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "VACin alarm high range" 
+    ::= { signals 40 }
+    
+    vacInAlarmLowRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "VACin alarm low range" 
+    ::= { signals 41 }
+    
+    vacInAlarmHistRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "VACin alarm hist range" 
+    ::= { signals 42 }
+    
+    tempAlarmHighRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Temperature alarm high range" 
+    ::= { signals 43 }
+    
+    tempAlarmLowRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Temprature alarm low range" 
+    ::= { signals 44 }
+    
+    tempAlarmHistRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Temprature alarm hist range" 
+    ::= { signals 45 }
+    
+    loadAlarmHighRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Load alarm high range" 
+    ::= { signals 46 }
+    
+    loadAlarmHistRange OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Load alarm hist range" 
+    ::= { signals 47 }
+
+    sntpTimeZone OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Sntp time zone" 
+    ::= { signals 48 }
+
+    sntpState OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "SNTP synchronization state
+    0 - disable
+    1 - enable" 
+    ::= { signals 49 }
+    
+    sntpServerIp OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Sntp server IP  address" 
+    ::= { signals 50 }
+    
+    sntpLastData OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "SNTP last synchronization timestamp" 
+    ::= { signals 51 }
+    
+    dateController OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Current date, YYYY-MM-DD" 
+    ::= { signals 52 }
+    
+    timeController OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Current time, hh:mm" 
+    ::= { signals 53 }
+    
+    akbWorkTime OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Work time from AKB, minutes" 
+    ::= { signals 54 }
+
+    syslogENA OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Syslog enable,
+    0 - disable;
+    1 - enable" 
+    ::= { signals 55 }
+
+    syslogServerIP OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Syslog server IP" 
+    ::= { signals 56 }
+
+    syslogServerPort OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-write
+    STATUS  current
+    DESCRIPTION
+    "Syslog server port" 
+    ::= { signals 57 }
+
+-- DEVICE TRAPS
+
+     fwVersionUpdate  NOTIFICATION-TYPE
+     OBJECTS              { fwVersion }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 1 }
+
+    fwVersionUpdated  NOTIFICATION-TYPE
+     OBJECTS              { fwVersion }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 2 }
+
+     deviceRestored  NOTIFICATION-TYPE
+     OBJECTS              { restoreSignal }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 3 }
+
+    deviceRebooted  NOTIFICATION-TYPE
+     OBJECTS              { rebootSignal }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 4 }
+
+     upsModeChanged  NOTIFICATION-TYPE
+     OBJECTS              { upsMode }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 5 }
+
+     batteryTemperatureHighNorm  NOTIFICATION-TYPE
+     OBJECTS              { intTemp }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 6 }
+
+    batteryTemperatureHighAlarm  NOTIFICATION-TYPE
+     OBJECTS              { intTemp }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 7 }
+
+     batteryTemperatureLowNorm  NOTIFICATION-TYPE
+     OBJECTS              { intTemp }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 8 }
+
+     batteryTemperatureLowAlarm  NOTIFICATION-TYPE
+     OBJECTS              { intTemp }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 9 }
+	 
+     lineAlarm  NOTIFICATION-TYPE
+     OBJECTS              { inVoltVAC }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 10 }
+
+    lineNorm  NOTIFICATION-TYPE
+     OBJECTS              { inVoltVAC }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 11 } 
+
+     vacOutputLowAlarm  NOTIFICATION-TYPE
+     OBJECTS              { outVoltVAC }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 12 }
+
+     vacOutputLowNorm  NOTIFICATION-TYPE
+     OBJECTS              { outVoltVAC }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 13 } 
+
+     vacOutputHighAlarm  NOTIFICATION-TYPE
+     OBJECTS              { outVoltVAC }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 14 }
+
+     vacOutputHighNorm  NOTIFICATION-TYPE
+     OBJECTS              { outVoltVAC }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 15 } 
+
+     lowBatAlarm  NOTIFICATION-TYPE
+     OBJECTS              { batCap }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 16 }
+
+     lowBatNorm  NOTIFICATION-TYPE
+     OBJECTS              { batCap }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 17 }
+
+     batteryConnectAlarm  NOTIFICATION-TYPE
+     OBJECTS              { batCap }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 18 }
+
+     batteryConnectNorm  NOTIFICATION-TYPE
+     OBJECTS              { batCap }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 19 }	
+	 
+     powerAlarm  NOTIFICATION-TYPE
+     OBJECTS              { power }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 20 }
+
+    powerNorm  NOTIFICATION-TYPE
+     OBJECTS              { power }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 21 }
+
+	ConnectMonitorAlarm  NOTIFICATION-TYPE
+     OBJECTS              { connectMonitor }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 22 }
+	 
+     connectMonitorNorm  NOTIFICATION-TYPE
+     OBJECTS              { connectMonitor }
+     STATUS               current
+     DESCRIPTION ""
+     ::= { traps 23 }
+
+END
+

+ 10 - 0
docs/bt6711/Changelog.md

@@ -0,0 +1,10 @@
+# 1.0
+### Добавлено
+Первый релиз
+### Изменено
+
+### Исправлено
+
+
+
+

+ 286 - 115
modules/Ethernet/private_mib_bt6711.c

@@ -50,25 +50,61 @@ static snmp_err_t signal_set_value(struct snmp_node_instance *instance, u16_t le
 static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len, void *value);
 
 
-/* signal .1.3.6.1.4.1.41752.911.11.1.48  */
-static const struct snmp_scalar_node signal48 = SNMP_SCALAR_CREATE_NODE_READONLY(48, SNMP_ASN1_TYPE_OCTET_STRING,
+/* signal .1.3.6.1.4.1.41752.911.11.1.57  */
+static const struct snmp_scalar_node signal57 = SNMP_SCALAR_CREATE_NODE(57, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.56  */
+static const struct snmp_scalar_node signal56 = SNMP_SCALAR_CREATE_NODE(56, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.55  */
+static const struct snmp_scalar_node signal55 = SNMP_SCALAR_CREATE_NODE(55, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.54  */
+static const struct snmp_scalar_node signal54 =SNMP_SCALAR_CREATE_NODE_READONLY(54, SNMP_ASN1_TYPE_OCTET_STRING,
         signal_get_value);
 
-/* signal .1.3.6.1.4.1.41752.911.11.1.47  */
-static const struct snmp_scalar_node signal47 = SNMP_SCALAR_CREATE_NODE_READONLY(47, SNMP_ASN1_TYPE_OCTET_STRING,
+/* signal .1.3.6.1.4.1.41752.911.11.1.53  */
+static const struct snmp_scalar_node signal53 = SNMP_SCALAR_CREATE_NODE(53, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.52  */
+static const struct snmp_scalar_node signal52 = SNMP_SCALAR_CREATE_NODE(52, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.51  */
+static const struct snmp_scalar_node signal51 = SNMP_SCALAR_CREATE_NODE_READONLY(51, SNMP_ASN1_TYPE_OCTET_STRING,
         signal_get_value);
 
+/* signal .1.3.6.1.4.1.41752.911.11.1.50  */
+static const struct snmp_scalar_node signal50 = SNMP_SCALAR_CREATE_NODE(50, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.49  */
+static const struct snmp_scalar_node signal49 = SNMP_SCALAR_CREATE_NODE(49, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.48  */
+static const struct snmp_scalar_node signal48 = SNMP_SCALAR_CREATE_NODE(48, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
+/* signal .1.3.6.1.4.1.41752.911.11.1.47  */
+static const struct snmp_scalar_node signal47 = SNMP_SCALAR_CREATE_NODE(47, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+
 /* signal .1.3.6.1.4.1.41752.911.11.1.46  */
-static const struct snmp_scalar_node signal46 = SNMP_SCALAR_CREATE_NODE_READONLY(46, SNMP_ASN1_TYPE_OCTET_STRING,
-        signal_get_value);
+static const struct snmp_scalar_node signal46 = SNMP_SCALAR_CREATE_NODE(46, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.45  */
-static const struct snmp_scalar_node signal45 = SNMP_SCALAR_CREATE_NODE_READONLY(45, SNMP_ASN1_TYPE_OCTET_STRING,
-        signal_get_value);
+static const struct snmp_scalar_node signal45 = SNMP_SCALAR_CREATE_NODE(45, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.44  */
-static const struct snmp_scalar_node signal44 = SNMP_SCALAR_CREATE_NODE_READONLY(44, SNMP_ASN1_TYPE_OCTET_STRING,
-        signal_get_value);
+static const struct snmp_scalar_node signal44 = SNMP_SCALAR_CREATE_NODE(44, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.43  */
 static const struct snmp_scalar_node signal43 = SNMP_SCALAR_CREATE_NODE(43, SNMP_NODE_INSTANCE_READ_WRITE,
@@ -119,60 +155,59 @@ static const struct snmp_scalar_node signal32 = SNMP_SCALAR_CREATE_NODE(32, SNMP
         SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.31  */
-static const struct snmp_scalar_node signal31 = SNMP_SCALAR_CREATE_NODE(31, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
-
+static const struct snmp_scalar_node signal31 = SNMP_SCALAR_CREATE_NODE_READONLY(31, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 /* signal .1.3.6.1.4.1.41752.911.11.1.30  */
-static const struct snmp_scalar_node signal30 = SNMP_SCALAR_CREATE_NODE(30, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+static const struct snmp_scalar_node signal30 = SNMP_SCALAR_CREATE_NODE_READONLY(30, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.29  */
-static const struct snmp_scalar_node signal29 = SNMP_SCALAR_CREATE_NODE(29, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+static const struct snmp_scalar_node signal29 = SNMP_SCALAR_CREATE_NODE_READONLY(29, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.28  */
-static const struct snmp_scalar_node signal28 = SNMP_SCALAR_CREATE_NODE(28, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+static const struct snmp_scalar_node signal28 =SNMP_SCALAR_CREATE_NODE_READONLY(28, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.27  */
 static const struct snmp_scalar_node signal27 = SNMP_SCALAR_CREATE_NODE_READONLY(27, SNMP_ASN1_TYPE_OCTET_STRING,
         signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.26  */
-static const struct snmp_scalar_node signal26 = SNMP_SCALAR_CREATE_NODE_READONLY(26, SNMP_ASN1_TYPE_OCTET_STRING,
-        signal_get_value);
+static const struct snmp_scalar_node signal26 = SNMP_SCALAR_CREATE_NODE(26, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.25  */
-static const struct snmp_scalar_node signal25 = SNMP_SCALAR_CREATE_NODE_READONLY(25, SNMP_ASN1_TYPE_OCTET_STRING,
-        signal_get_value);
+static const struct snmp_scalar_node signal25 = SNMP_SCALAR_CREATE_NODE(25, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.24  */
-static const struct snmp_scalar_node signal24 = SNMP_SCALAR_CREATE_NODE_READONLY(24, SNMP_ASN1_TYPE_OCTET_STRING,
-        signal_get_value);
+static const struct snmp_scalar_node signal24 = SNMP_SCALAR_CREATE_NODE(24, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.23  */
-static const struct snmp_scalar_node signal23 = SNMP_SCALAR_CREATE_NODE_READONLY(23, SNMP_ASN1_TYPE_OCTET_STRING,
-        signal_get_value);
+static const struct snmp_scalar_node signal23 = SNMP_SCALAR_CREATE_NODE(23, SNMP_NODE_INSTANCE_READ_WRITE,
+        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.22  */
 static const struct snmp_scalar_node signal22 = SNMP_SCALAR_CREATE_NODE(22, SNMP_NODE_INSTANCE_READ_WRITE,
         SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.21  */
-static const struct snmp_scalar_node signal21 = SNMP_SCALAR_CREATE_NODE(21, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+static const struct snmp_scalar_node signal21 = SNMP_SCALAR_CREATE_NODE_READONLY(21, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.20  */
-static const struct snmp_scalar_node signal20 = SNMP_SCALAR_CREATE_NODE(20, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+static const struct snmp_scalar_node signal20 = SNMP_SCALAR_CREATE_NODE_READONLY(20, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.19  */
-static const struct snmp_scalar_node signal19 = SNMP_SCALAR_CREATE_NODE(19, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+static const struct snmp_scalar_node signal19 = SNMP_SCALAR_CREATE_NODE_READONLY(19, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.18  */
-static const struct snmp_scalar_node signal18 = SNMP_SCALAR_CREATE_NODE(18, SNMP_NODE_INSTANCE_READ_WRITE,
-        SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
+static const struct snmp_scalar_node signal18 = SNMP_SCALAR_CREATE_NODE_READONLY(18, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
 
 /* signal .1.3.6.1.4.1.41752.911.11.1.17  */
 static const struct snmp_scalar_node signal17 = SNMP_SCALAR_CREATE_NODE_READONLY(17, SNMP_ASN1_TYPE_OCTET_STRING,
@@ -293,6 +328,15 @@ static const struct snmp_node *const signals_nodes[] = {
     &signal46.node.node,
     &signal47.node.node,
     &signal48.node.node,
+    &signal49.node.node,
+    &signal50.node.node,
+    &signal51.node.node,
+    &signal52.node.node,
+    &signal53.node.node,
+    &signal54.node.node,
+    &signal55.node.node,
+    &signal56.node.node,
+    &signal57.node.node,
 };
 static const struct snmp_tree_node signals_node = SNMP_CREATE_TREE_NODE(1, signals_nodes);
 
@@ -408,110 +452,137 @@ static s16_t signal_get_value(struct snmp_node_instance *instance, void *value)
         case 13: /* Power */
             GetPowerStr((char *)paramStr, &paramLength);
             break;
-        case 14: /* BatCap */
+         case 14: /* InputCurrent */
+            GetInputCurrentStr((char *)paramStr, &paramLength);
+            break;
+        case 15: /* OutputCurrent */
+            GetOutputCurrentStr((char *)paramStr, &paramLength);
+            break;
+        case 16: /* BatCap */
             GetBatCapacityStr((char *)paramStr, &paramLength);
             break;
-        case 15: /* BatTime */
+         case 17: /* UPS mode */
+            GetModeStr((char *)paramStr, &paramLength);
+            break;
+        case 18: /* BatTime */
             GetRuntimeStr((char *)paramStr, &paramLength);
             break;
-        case 16: /* ConnectMonitor */
+        case 19: /* VoltageAKB */
+            GetVoltageAKBtStr((char *)paramStr, &paramLength);
+            break;
+        case 20: /* ConnectMonitor */
             GetConnectMonitorStr((char *)paramStr, &paramLength);
             break;
-        case 17: /* Alarms */
+        case 21: /* Alarms */
             GetAlarmStr((char *)paramStr, &paramLength);
             break;
-        case 18: /* IP server1 (traps) */
+        case 22: /* IP server1 (traps) */
             GetManagerIp((char *)paramStr, &paramLength);
             break;
-        case 19: /* IP server2 (traps) */
+        case 23: /* IP server2 (traps) */
             GetManagerIp2((char *)paramStr, &paramLength);
             break;
-        case 20: /* IP server3 (traps) */
+        case 24: /* IP server3 (traps) */
             GetManagerIp3((char *)paramStr, &paramLength);
             break;
-        case 21: /* IP server4 (traps) */
+        case 25: /* IP server4 (traps) */
             GetManagerIp4((char *)paramStr, &paramLength);
             break;
-        case 22: /* IP server5 (traps) */
+        case 26: /* IP server5 (traps) */
             GetManagerIp5((char *)paramStr, &paramLength);
             break;
-        case 23: /* WhiteList range 1 */
+        case 27: /* WhiteList range 1 */
             GetWhiteListSTR((char *)paramStr, &paramLength, 0);
             break;
-        case 24: /* WhiteList range 2 */
+        case 28: /* WhiteList range 2 */
             GetWhiteListSTR((char *)paramStr, &paramLength, 1);
             break;
-        case 25: /* WhiteList range 3 */
+        case 29: /* WhiteList range 3 */
             GetWhiteListSTR((char *)paramStr, &paramLength, 2);
             break;
-        case 26: /* WhiteList range 4 */
+        case 30: /* WhiteList range 4 */
             GetWhiteListSTR((char *)paramStr, &paramLength, 3);
             break;
-        case 27: /* WhiteList range 5 */
+        case 31: /* WhiteList range 5 */
             GetWhiteListSTR((char *)paramStr, &paramLength, 4);
             break;
-        case 28: /* UPSVoltCellMin */
+        case 32: /* UPSVoltCellMin */
             GetUPSVoltCellMinStr((char *)paramStr, &paramLength);
             break;
-        case 29: /* UPSVoltCellMax */
+        case 33: /* UPSVoltCellMax */
             GetUPSVoltCellMaxStr((char *)paramStr, &paramLength);
             break;
-        case 30: /* VACAlarmHighRange */
+        case 34: /*  VoltageAKBNominal*/
+            GetVoltageAKBNominalStr((char *)paramStr, &paramLength);
+            break;
+        case 35: /*  CapacityNominalAKB*/
+            GetCapacityNominalAKBStr((char *)paramStr, &paramLength);
+            break;
+        case 36: /*  UPSFullPower*/
+            GetUPSPowerStr((char *)paramStr, &paramLength);
+            break;
+        case 37: /* VACAlarmHighRange */
             GetVACAlarmHighRangeStr((char *)paramStr, &paramLength);
             break;
-        case 31: /* VACAlarmLowRange */
+        case 38: /* VACAlarmLowRange */
             GetVACAlarmLowRangeStr((char *)paramStr, &paramLength);
             break;
-        case 32: /* VACAlarmHistRange */
+        case 39: /* VACAlarmHistRange */
             GetVACAlarmHisteStr((char *)paramStr, &paramLength);
             break;
-        case 33: /* TemperatureAlarmHighRange */
+         case 40: /* VACInAlarmHighRange */
+            GetVACInputAlarmHighRangeStr((char *)paramStr, &paramLength);
+            break;
+        case 41: /* VACInAlarmLowRange */
+            GetVACInputAlarmLowRangeStr((char *)paramStr, &paramLength);
+            break;
+        case 42: /* VACInAlarmHistRange */
+            GetVACinputAlarmHisteStr((char *)paramStr, &paramLength);
+            break;
+        case 43: /* TemperatureAlarmHighRange */
             GetTemperatureAlarmHighRangeStr((char *)paramStr, &paramLength);
             break;
-        case 34: /* TemperatureAlarmLowRange */
+        case 44: /* TemperatureAlarmLowRange */
             GetTemperatureAlarmLowRangeStr((char *)paramStr, &paramLength);
             break;
-        case 35: /* TemperatureAlarmHistRange */
+        case 45: /* TemperatureAlarmHistRange */
             GetTemperatureAlarmHisteStr((char *)paramStr, &paramLength);
             break;
-        case 36: /* LoadAlarmHighRange */
+        case 46: /* LoadAlarmHighRange */
             GetLoadAlarmHighRangeStr((char *)paramStr, &paramLength);
             break;
-        case 37: /* LoadAlarmHistRange */
+        case 47: /* LoadAlarmHistRange */
             GetLoadAlarmHisteStr((char *)paramStr, &paramLength);
             break;
-        case 38: /* SntpTimeZone */
+        case 48: /* SntpTimeZone */
             GetSntpTimeZoneStr((char *)paramStr, &paramLength);
             break;
-        case 39: /* SntpState */
+        case 49: /* SntpState */
             GetSntpStateStr((char *)paramStr, &paramLength);
             break;
-        case 40: /* SntpServerIp */
+        case 50: /* SntpServerIp */
             GetSntpServerIpStr((char *)paramStr, &paramLength);
             break;
-        case 41: /* SntpLastData */
+        case 51: /* SntpLastData */
             GetSntpLastDataStr((char *)paramStr, &paramLength);
             break;
-        case 42: /* Date */
+        case 52: /* Date */
             GetDateStr((char *)paramStr, &paramLength);
             break;
-        case 43: /* Time */
+        case 53: /* Time */
             GetTimeStr((char *)paramStr, &paramLength);
             break;
-        case 44: /* AKBTimeWork */
+        case 54: /* AKBTimeWork */
             GetAKBWorktimeStr((char *)paramStr, &paramLength);
             break;
-        case 45: /* InputCurrent */
-            GetInputCurrentStr((char *)paramStr, &paramLength);
-            break;
-        case 46: /* OutputCurrent */
-            GetOutputCurrentStr((char *)paramStr, &paramLength);
+        case 55: /* syslogEnable */
+            GetSyslogEnable((char *)paramStr, &paramLength);
             break;
-        case 47: /* VoltageAKB */
-            GetVoltageAKBtStr((char *)paramStr, &paramLength);
+         case 56: /* syslogServerIP */
+            GetSyslogServer((char *)paramStr, &paramLength);
             break;
-        case 48: /*  CapacityNominalAKB*/
-            GetCapacityNominalAKBStr((char *)paramStr, &paramLength);
+        case 57: /* syslogServerPort */
+            GetSyslogPort((char *)paramStr, &paramLength);
             break;
         default:
             break;
@@ -586,71 +657,95 @@ static snmp_err_t signal_set_value(struct snmp_node_instance *instance, u16_t le
                 }
             }
             break;
-        case 18:
+        case 22:
             val_string = (char *)value;
             SetManagerIp(val_string);
             break;
-        case 19:
+        case 23:
             val_string = (char *)value;
             SetManagerIp2(val_string);
             break;
-        case 20:
+        case 24:
             val_string = (char *)value;
             SetManagerIp3(val_string);
             break;
-        case 21:
+        case 25:
             val_string = (char *)value;
             SetManagerIp4(val_string);
             break;
-        case 22:
+        case 26:
             val_string = (char *)value;
             SetManagerIp5(val_string);
             break;
-        case 28:
+        case 32:
             val_string = (char *)value;
             SetUPSVoltCellMinStr(val_string);
             break;
-        case 29:
+        case 33:
             val_string = (char *)value;
             SetUPSVoltCellMaxStr(val_string);
             break;
-        case 30:
+        case 34:
+            val_string = (char *)value;
+            SetVoltageAKBNominalStr(val_string);
+            break;
+        case 35:
+            val_string = (char *)value;
+            SetCapacityNominalAKBStr(val_string);
+            break;
+        case 36:
+            val_string = (char *)value;
+            SetUPSPowerStr(val_string);
+            break;
+        case 37:
             val_string = (char *)value;
             SetVACAlarmHighRangeStr(val_string);
             break;
-        case 31:
+        case 38:
             val_string = (char *)value;
             SetVACAlarmLowRangeStr(val_string);
             break;
-        case 32:
+        case 39:
             val_string = (char *)value;
             SetVACAlarmHisteStr(val_string);
             break;
-        case 33:
+        case 40:
+            val_string = (char *)value;
+            SetVACInputAlarmHighRangeStr(val_string);
+            break;
+        case 41:
+            val_string = (char *)value;
+            SetVACInputAlarmLowRangeStr(val_string);
+            break;
+        case 42:
+            val_string = (char *)value;
+            SetVACinputAlarmHisteStr(val_string);
+            break;
+        case 43:
             val_string = (char *)value;
             SetTemperatureAlarmHighRangeStr(val_string);
             break;
-        case 34:
+        case 44:
             val_string = (char *)value;
             SetTemperatureAlarmLowRangeStr(val_string);
             break;
-        case 35:
+        case 45:
             val_string = (char *)value;
             SetTemperatureAlarmHisteStr(val_string);
             break;
-        case 36:
+        case 46:
             val_string = (char *)value;
             SetLoadAlarmHighRangeStr(val_string);
             break;
-        case 37:
+        case 47:
             val_string = (char *)value;
             SetLoadAlarmHistStr(val_string);
             break;
-        case 38:
+        case 48:
             val_string = (char *)value;
             SetSntpTimeZoneStr(val_string);
             break;
-        case 39:
+        case 49:
             enable_old_sntp = sSettings.sSNTP.sntpEnable;
             val_string = (char *)value;
             SetSntpStateStr(val_string);
@@ -659,7 +754,7 @@ static snmp_err_t signal_set_value(struct snmp_node_instance *instance, u16_t le
                 log_event_data(LOG_SETTING_SAVE, "Администратор (SNMP)");
             }
             break;
-        case 40:
+        case 50:
             val_string = (char *)value;
             if (strncmp(val_string, sSettings.sSNTP.ip, strlen(val_string)) != 0) {
                 SetSntpServerIpStr(val_string);
@@ -670,16 +765,35 @@ static snmp_err_t signal_set_value(struct snmp_node_instance *instance, u16_t le
                 SNTP_Poll();
             }
             break;
-        case 41:
+        case 51:
             break;
-        case 42:
+        case 52:
             val_string = (char *)value;
             SetDateStr(val_string);
             break;
-        case 43:
+        case 53:
             val_string = (char *)value;
             SetTimeStr(val_string);
             break;
+        case 54: /* AKBTimeWork */
+            break;
+        case 55: /* syslogEnable */
+            val_string = (char *)value;
+            if (val_string[0] == '1') {
+                strcpy(val_string, "on");
+            } else {
+                strcpy(val_string, "off");
+            }
+            SetSyslogEnable(val_string);
+            break;
+         case 56: /* syslogServerIP */
+            val_string = (char *)value;
+            SetSyslogServer(val_string);
+            break;
+        case 57: /* syslogServerPort */
+            val_string = (char *)value;
+            SetSyslogPort(val_string);
+            break;
         default :
             return SNMP_ERR_GENERROR;
             break;
@@ -729,12 +843,13 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 }
             }
             break;
-        case 18:
-        case 19:
-        case 20:
-        case 21:
         case 22:
-        case 40:
+        case 23:
+        case 24:
+        case 25:
+        case 26:
+        case 50:
+        case 56:
             if ( len <= 15 ) {
                 val_string = (char *)value;
                 val_string[len] = 0;
@@ -743,7 +858,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 }
             }
             break;
-        case 28:
+        case 32:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -756,7 +871,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 29:
+        case 33:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -769,7 +884,47 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 30:
+        case 34:
+            val_string = (char *)value;
+            val_string[len] = 0;
+            for (j = 0; j < len; j ++) {
+                if (!isfloatdigit(val_string[j])) {
+                    return ret;
+                }
+            }
+            tmp_value = atof(val_string);
+            if (tmp_value > AKB_VOLTAGE_MIN_RANGE && tmp_value <= AKB_VOLTAGE_MAX_RANGE) {
+                ret = SNMP_ERR_NOERROR;
+            }
+            break;
+        case 35:
+            val_string = (char *)value;
+            val_string[len] = 0;
+            for (j = 0; j < len; j ++) {
+                if (!isdigit_int(val_string[j])) {
+                    return ret;
+                }
+            }
+            val = atoi(val_string);
+            if (val > CAPACITY_MIN_RANGE && val <= CAPACITY_MAX_RANGE) {
+                ret = SNMP_ERR_NOERROR;
+            }
+            break;
+        case 36:
+            val_string = (char *)value;
+            val_string[len] = 0;
+            for (j = 0; j < len; j ++) {
+                if (!isfloatdigit(val_string[j])) {
+                    return ret;
+                }
+            }
+            tmp_value = atof(val_string);
+            if (tmp_value > UPS_POWER_MIN_RANGE && tmp_value <= UPS_POWER_MAX_RANGE) {
+                ret = SNMP_ERR_NOERROR;
+            }
+            break;
+        case 37:
+        case 40:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -782,7 +937,8 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 31:
+        case 38:
+        case 41:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -795,7 +951,8 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 32:
+        case 39:
+        case 42:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -808,7 +965,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 33:
+        case 43:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -821,7 +978,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 34:
+        case 44:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -838,7 +995,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 35:
+        case 45:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -851,7 +1008,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 36:
+        case 46:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -864,7 +1021,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 37:
+        case 47:
             val_string = (char *)value;
             val_string[len] = 0;
             for (j = 0; j < len; j ++) {
@@ -877,7 +1034,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 ret = SNMP_ERR_NOERROR;
             }
             break;
-        case 38:
+        case 48:
             val_string = (char *)value;
             val_string[len] = 0;
             if (len > 1 && len < 5) {
@@ -902,7 +1059,8 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 }
             }
             break;
-        case 39:
+        case 49:
+        case 55:
             val_string = (char *)value;
             val_string[len] = 0;
             if (len == 1) {
@@ -911,7 +1069,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 }
             }
             break;
-        case 42:
+        case 52:
             val_string = (char *)value;
             val_string[len] = 0;
             if (len == 10) {
@@ -951,7 +1109,7 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 }
             }
             break;
-        case 43:
+        case 53:
             val_string = (char *)value;
             val_string[len] = 0;
             if (len == 5) {
@@ -986,6 +1144,19 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
                 }
             }
             break;
+        case 57:
+            val_string = (char *)value;
+            val_string[len] = 0;
+            for (j = 0; j < len; j ++) {
+                if (!isdigit_int(val_string[j])) {
+                    return ret;
+                }
+            }
+            val = atoi(val_string);
+            if (val >= 0 && val <= 65535) {
+                ret = SNMP_ERR_NOERROR;
+            }
+            break;
     };