Closed willglynn closed 8 years ago
I believe @aquette fixed that segfault in 8428fa576. Maybe he can help diagnose the empty ups.status
field - as you pointed out, it should have some value there.
Yep, that looks like the same segfault. I'm running FreeNAS which makes upgrading a nontrivial endeavor, but… good to know.
As to the ups.status
emptiness, I thought that maybe updating from my old firmware (v53?) to the current firmware (v64) would be a good idea.
I was wrong. The new firmware ripped out the normal web interface and replaced it entirely with a Java applet that doesn't actually work. I hate it so much. (Also: now this bug is a moving target. Yay! Those are fun right?) I don't know what else it did, but… well, it didn't change the snmp-ups
behavior.
Anyway, here's my current snmpwalk
results for the RFC 1628 UPS OID:
$ snmpwalk -v2c -c tripplite -O fn 172.16.3.35 1.3.6.1.2.1.33
.1.3.6.1.2.1.33.1.1.1.0 = STRING: TRIPP LITE
.1.3.6.1.2.1.33.1.1.2.0 = STRING: SUINT3000RTX
.1.3.6.1.2.1.33.1.1.3.0 = STRING: 10
.1.3.6.1.2.1.33.1.1.4.0 = STRING: 12.06.0064
.1.3.6.1.2.1.33.1.1.5.0 = STRING: Device 1
.1.3.6.1.2.1.33.1.1.6.0 = STRING: ,,
.1.3.6.1.2.1.33.1.2.1.0 = INTEGER: batteryNormal(2)
.1.3.6.1.2.1.33.1.2.3.0 = INTEGER: 242 minutes
.1.3.6.1.2.1.33.1.2.4.0 = INTEGER: 100 percent
.1.3.6.1.2.1.33.1.2.5.0 = INTEGER: 825 0.1 Volt DC
.1.3.6.1.2.1.33.1.2.7.0 = INTEGER: 28 degrees Centigrade
.1.3.6.1.2.1.33.1.3.2.0 = INTEGER: 1
.1.3.6.1.2.1.33.1.3.3.1.1.1 = INTEGER: 1
.1.3.6.1.2.1.33.1.3.3.1.2.1 = INTEGER: 600 0.1 Hertz
.1.3.6.1.2.1.33.1.3.3.1.3.1 = INTEGER: 251 RMS Volts
.1.3.6.1.2.1.33.1.3.3.1.5.1 = INTEGER: 99 Watts
.1.3.6.1.2.1.33.1.4.1.0 = INTEGER: 9
.1.3.6.1.2.1.33.1.4.2.0 = INTEGER: 600 0.1 Hertz
.1.3.6.1.2.1.33.1.4.3.0 = INTEGER: 1
.1.3.6.1.2.1.33.1.4.4.1.1.1 = INTEGER: 1
.1.3.6.1.2.1.33.1.4.4.1.2.1 = INTEGER: 230 RMS Volts
.1.3.6.1.2.1.33.1.4.4.1.3.1 = INTEGER: 0 0.1 RMS Amp
.1.3.6.1.2.1.33.1.4.4.1.5.1 = INTEGER: 0 percent
.1.3.6.1.2.1.33.1.6.1.0 = INTEGER: 0
.1.3.6.1.2.1.33.1.9.1.0 = INTEGER: 240 RMS Volts
.1.3.6.1.2.1.33.1.9.3.0 = INTEGER: 240 RMS Volts
.1.3.6.1.2.1.33.1.9.8.0 = INTEGER: enabled(2)
.1.3.6.1.2.1.33.1.9.9.0 = INTEGER: 160 RMS Volts
.1.3.6.1.2.1.33.1.9.10.0 = INTEGER: 288 RMS Volts
And the corresponding console output, for comparison:
>>
-------- Device 1 -------------------------------------------------------------
Device Name : Device 1
Location : Region :
Vendor : TRIPP LITE Product : SUINT3000RTX
Protocol : 4005 Date Installed : 2014-11-20
State : NORMAL Type : UPS
Port Mode : RS232 Port Name : /com/1
Role : UPS Keyword : ups
Importance : 1
Device Type : On-Line Firmware Version : 10
Serial Number : ----snip----- Device ID : 0
Self Test Date : Self Test Status : No Test
1- Status
2- Identification
3- Controls
4- Events
5- Loads
6- Preferences and Thresholds
7- Device Alarms
8- Logs
X/M- Return to Main Menu
<ENTER> Refresh Menu
>> 1
-------- Device Status Menu ----------------------------------------------------
System
======
General Fault Alarm : Normal
Site Wiring : Wiring OK
Device
======
Device Type : On-Line
Self Test Date :
Self Test Status : No Test
Battery
=======
Battery Status : Normal
Battery Minutes Remaining : 242 Minutes
Battery Charge Remaining : 100 %
Battery Voltage : 82.5 V
Battery Temperature (C) : 28.0 C
Battery Temperature (F) : 82.4 F
Battery Age : 0.0 Years
Battery Condition : Good
Battery Charge : Charging
Last Battery Replacement : 071840416
Battery Fully Charged : Yes
Input
=====
Input Frequency : 60.0 Hz
Input Voltage : 251.0 V
Input Power : 102 W
Device Mode : Utility
Tap State : Normal
Minimum Input Voltage : 248.0 V
Maximum Input Voltage : 254.0 V
Low Transfer Voltage : 160 V
High Transfer Voltage : 288 V
Output
======
Output Source : Economy
Output Frequency : 60.0 Hz
Output Voltage : 230.0 V
Output Current : 0.6 A - Total
Output Load : 0 %
X- Device Main Menu
M- Return to Main Menu
<ENTER> Refresh Menu
>>
In particular, I note:
.1.3.6.1.2.1.33.1.4.1.0 = INTEGER: 9
seems wrong. That's upsOutputSource.0
. The value 9
isn't defined by the RFC, and it's not handled by snmp-ups
. The console says Output Source : Economy
, which means it's bypassing the double-conversion circuitry because the mains power is clean enough to permit that. I would think other(1)
, normal(3)
, or bypass(4)
would all be reasonable encodings, but Tripp-Lite has chosen 9
..1.3.6.1.2.1.33.1.4.4.1.3.1 = INTEGER: 0 0.1 RMS Amp
seems wrong. That's upsOutputCurrent.1
, and the console clearly shows 0.6 A
, so this seems like it should be INTEGER: 6
..1.3.6.1.2.1.33.1.4.4.1.5.1 = INTEGER: 0 percent
That's upsOutputPercentLoad.1
, and sure 230V * 0.6A is light vs 3000 VA, but this seems like it should be 4-5% load. Well, at least it matches the console…I wrote Tripp-Lite tech support asking them to explain since the values in SNMP make no sense to me. On the other hand, I'm sure there are other SNMPWEBCARDs in the wild; does it make sense to add workarounds?
I'm trying to get the attention of @aquette (since he wrote this driver) but it's not working ;-) I am not as familiar with the SNMP driver architecture, but we do have a lot of special cases in the USB HID PDC driver - so we could probably add a workaround for the upsOutputSource value. If you're feeling adventurous, you could hex-edit the table for ietf_power_source_info[] and change the "other" value to 9, but at some point, we should figure out an easy way to either inject new drivers into FreeNAS, or spin new FreeNAS beta-test images.
I'd try to get a few more data points towards the center of the rated load range before passing judgement on the load-related values. Often the low end of the scale is not linear, or the manufacturer did not properly factor out the converter load and losses.
I think I can update my FreeNAS install by remounting /
read-write and copying in replacement binaries. Now, I haven't exactly tried that, but I don't know why it wouldn't work, and I can't imagine there's much in the way of FreeBSD/FreeNAS ABI incompatibility that would bite me. I'm less sure about mixing nut
components from different releases, but I could swap out all the associated bits in one fell swoop.
The SNMP driver doesn't need any hardware access, so I was thinking I could test patches and such from inside a jail, I just haven't set that up yet. Or, really, I can test it from any other system too. Well, any system except my Mac, since net-snmp 5.7.2.1 stable is known not to work on OSX >= 10.9 and net-snmp 5.7.3.pre3 is also broken here for reasons I haven't yet diagnosed. That would be too easy :-P
So: on this particular unit, my experimentation suggests that 9
means it's in "economy mode". Assuming we're adding workarounds, what should ups.status
be? This UPS can operate in three modes: OL
(double-converting line power), OB
(inverting battery power), and… what do we label the third? SNMP other(1)
maps to ""
, which is what we have now, and that's not helpful. Maybe OL BYPASS
, since that's sorta true? (It's a sort of bypass that can un-bypass automatically…) Would it be legal and make sense to add OL ECONOMY
? Alternately: the UPS is still adjusting voltage in this mode; should we compare upsInputVoltage.1
to upsOutputVoltage.1
and pick OL BOOST
/OL TRIM
as appropriate?
As for testing output figures under load: fair enough. There's very little equipment on that UPS right now, and I should be able to report higher utilization values soon. Still, upsOutputCurrent.1
is definitely broken; it's defined an integer number of tenths of an amp which should be able to report identical values when compared to the console, but it doesn't.
Good news! I RTFM'd! Specifically, I found the section describing possible values for status_set
. Seems like:
ups.status
should be OL something
in this mode,OL BOOST
/OL TRIM
isn't necessarily wrong,OL BYPASS
isn't necessarily wrong, though it is confusing here as this UPS also has honest bypass functions,OL CHRG DISCHRG
, except that would be silly, andOL ECONOMY
wouldn't work (though it requires coordination)The manual for this UPS describes use of the front-panel Bypass LED:
Maybe OL BYPASS
is the best option for economy mode, with the fault bypass mode being OL BYPASS ALARM
.
I still haven't had time to figure out the best way to add Tripp Lite detection to the IETF MIB (since another vendor might have a different interpretation of status 9) but I did run across this configure string for FreeNAS:
http://article.gmane.org/gmane.comp.monitoring.nut.user/8082
Although we don't guarantee binary compatibility between upsd
and drivers from different versions of NUT, I know we haven't changed anything between 2.6.5 and 2.7.2+ that would cause problems if you were to just install a new snmp-ups
driver.
That configure string will be helpful. Thanks!
I think the foolproof way to identify a Tripp-Lite PowerAlert SNMP device is sysObjectID.0
(.1.3.6.1.2.1.1.2.0
) = .1.3.6.1.4.1.850.1
, and it would be reasonable to enable Tripp-Lite specific behavior based on that value. snmp-ups
captures this already and appears to use it for identifying the appropriate MIB implementation.
We could plumb that identifier into ietf-mib
somehow and use it for enabling vendor quirks inside the MIB sub-driver. Alternately, we could fork ietf-mib
into tripplite-mib
, modify it as appropriate, and match the Tripp-Lite identifier into the Tripp-Lite handler with no extra fuss.
Tripp-lite has updated the firmware on the SNMPWEBCARD to version 12.06.0067. a.k.a. v67. And yes the horrible Java web interface is still there...
The sysObjectID.0 is unchanged:
spidey MIBs # snmpwalk -c publ13 -On trip1.in.rellim.com sysObjectID.0 .1.3.6.1.2.1.1.2.0 = OID: .1.3.6.1.4.1.850.1 spidey MIBs # snmpwalk -c publ13 trip1.in.rellim.com sysObjectID.0 RFC1213-MIB::sysObjectID.0 = OID: TRIPPLITE-MIB::tripplite.1
What needs to be done to finish the auto detect?
Hi @garyemiller
I've just added the sysOID ".1.3.6.1.4.1.850.1" to the IETF MIB: https://github.com/networkupstools/nut/commit/9f2fa1816ff2190f318d1544cb0080c104b523b5
Could you also please:
thanks and cheers Arno
@garyemiller and @willglynn : any news on this ticket? Your feedback would be gladly welcome to reach 2.7.4 and have this ticket closed. Thanks
retargetting to 2.7.5, since there is no user feedback.
Hi, I have a TrippLite SNMPWebCard recently upgraded to the most recent firmware release
Driver Version : 12.06.0067.8625.8624 Engine Version : 12.06.0067.8625.8624
I've run the gen-snmp-subdriver mentioned above and attached the generated .c and .h file
bkc@orwell:/tmp? bash gen-snmp-subdriver.sh -H 10.1.253.20 sysOID retrieved: .1.3.6.1.4.1.850.1 Retrieving SNMP information. This may take some time
Please enter a name for this driver. Use only letters and numbers. Use natural (upper- and lowercase) capitalization, e.g., 'Belkin', 'APC'. Name of subdriver: TrippLiteSNMPWebCard COUNT = 0 / 0 gen-snmp-subdriver.sh: line 219: FIXME:: command not found gen-snmp-subdriver.sh: line 219: UDRIVER: command not found Creating tripplitesnmpwebcard-mib.h Creating tripplitesnmpwebcard-mib.c Done.
ssh to port 2112 on this device and running devstatus -v shows
01: SU3000RTXL3UHV 'Device 1'
Device Type: UPS Device Status: NORMAL
General Fault Alarm: Normal
Buzzer Status: On
Economic Mode Supported: No
Fan Status: OKDevice Type: On-Line
Self Test Date: 2016-01-08
Self Test Status: No TestBattery Charge Remaining: 100 %
Battery Voltage: 83.4 V
Battery Temperature (F): 77.0 F
Battery Status: Normal
Seconds on Battery: 0 Seconds
Battery Temperature (C): 25.0 C
Battery Age: 0.3 Years
Battery Condition: Good
Battery Charge: Charging
Last Battery Replacement Date: 10/22/2014
Next Battery Replacement Date: 10/22/2019
Seconds On Battery: 0 SecondsDevice Mode: Utility
Input Voltage: 210.8 V
Input Frequency: 59.9 Hz
Input Frequency Rating: 60.0 Hz
Input Bad Alarm: NormalOutput Load: 0 %
Output Power: 0 W
Output Current: 0.0 A - Total
Output Voltage: 208.9 V
Output Frequency: 59.9 Hz
Output Source: Normal
Load State: Normal
Bypass Frequency: 0.0 HzTemperature Alarm: Normal
Outlets On: 1 2 3
snmpwalk
iso.3.6.1.4.1.850.10.1.1.0 = INTEGER: 1 iso.3.6.1.4.1.850.10.1.2.1.0 = IpAddress: 10.1.253.20 iso.3.6.1.4.1.850.10.1.2.2.0 = INTEGER: 5 iso.3.6.1.4.1.850.10.1.2.3.0 = STRING: "12.06.0067.8625.8624" iso.3.6.1.4.1.850.10.1.2.6.0 = STRING: "00:06:67:26:63:2F" iso.3.6.1.4.1.850.10.1.2.18.1.0 = INTEGER: 11 iso.3.6.1.4.1.850.10.1.2.18.2.0 = INTEGER: 80 iso.3.6.1.4.1.850.10.1.2.18.3.0 = INTEGER: 443 iso.3.6.1.4.1.850.10.1.2.18.4.0 = INTEGER: 23 iso.3.6.1.4.1.850.10.1.2.18.5.0 = INTEGER: 21 iso.3.6.1.4.1.850.10.1.2.20.0 = STRING: "ca9a4b65-cfa8-4b28-9254-0aa97389db83" iso.3.6.1.4.1.850.10.1.13.9.0 = STRING: "0.0.0.0:0" iso.3.6.1.4.1.850.10.2.1.0 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.1.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.2.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.3.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.4.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.5.1 = STRING: "/com/1" iso.3.6.1.4.1.850.10.2.2.1.8.1 = STRING: "Tripp Lite" iso.3.6.1.4.1.850.10.2.2.1.9.1 = STRING: "SU3000RTXL3UHV" iso.3.6.1.4.1.850.10.2.2.1.10.1 = STRING: "Device 1" iso.3.6.1.4.1.850.10.2.2.1.12.1 = "" iso.3.6.1.4.1.850.10.2.2.1.13.1 = "" iso.3.6.1.4.1.850.10.2.2.1.15.1 = STRING: "4000 (Unison RT)" iso.3.6.1.4.1.850.10.2.2.1.16.1 = STRING: "2016-01-08" iso.3.6.1.4.1.850.10.2.2.1.17.1 = INTEGER: 85 iso.3.6.1.4.1.850.10.2.2.1.18.1 = INTEGER: 16 iso.3.6.1.4.1.850.10.2.2.1.19.1 = INTEGER: 29 iso.3.6.1.4.1.850.10.2.2.1.20.1 = INTEGER: 3 iso.3.6.1.4.1.850.10.2.2.1.22.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.23.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.24.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.2.1.25.1 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.2.1.27.1 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.2.1.28.1 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.1 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.2 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.3 = INTEGER: 3 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.4 = INTEGER: 4 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.5 = INTEGER: 5 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.6 = INTEGER: 6 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.7 = INTEGER: 7 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.8 = INTEGER: 8 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.9 = INTEGER: 9 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.10 = INTEGER: 10 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.11 = INTEGER: 11 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.12 = INTEGER: 12 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.13 = INTEGER: 13 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.14 = INTEGER: 14 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.15 = INTEGER: 15 iso.3.6.1.4.1.850.10.2.3.2.1.1.1.16 = INTEGER: 16 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.1 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.2 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.3 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.4 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.5 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.6 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.7 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.8 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.9 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.10 = INTEGER: 1 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.11 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.12 = INTEGER: 3 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.13 = INTEGER: 3 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.14 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.15 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.3.1.16 = INTEGER: 2 iso.3.6.1.4.1.850.10.2.3.2.1.4.1.1 = STRING: "Load Level Above Threshold" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.2 = STRING: "General Fault" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.3 = STRING: "On Battery" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.4 = STRING: "Output Source On Bypass" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.5 = STRING: "Battery Bad" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.6 = STRING: "Battery Low" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.7 = STRING: "Overload" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.8 = STRING: "Temperature High" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.9 = STRING: "Battery Capacity Below Warning Level" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.10 = STRING: "Output Off" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.11 = STRING: "Self Test Failed" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.12 = STRING: "Battery Age Above Threshold" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.13 = STRING: "Communications Lost" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.14 = STRING: "Loads Not All On" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.15 = STRING: "Load 01 Off" iso.3.6.1.4.1.850.10.2.3.2.1.4.1.16 = STRING: "Load 02 Off" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.1 = STRING: "Load Level Below Threshold" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.2 = STRING: "Fault Okay" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.3 = STRING: "On Utility Power" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.4 = STRING: "Output Source Normal" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.5 = STRING: "Battery Okay" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.6 = STRING: "Battery Okay" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.7 = STRING: "Load Okay" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.8 = STRING: "Temperature Okay" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.9 = STRING: "Battery Capacity Above Warning Level" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.10 = STRING: "Output On" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.11 = STRING: "Self Test Passed" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.12 = STRING: "Battery Age Is OK" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.13 = STRING: "Communications Established" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.14 = STRING: "Loads All On" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.15 = STRING: "Load 01 On" iso.3.6.1.4.1.850.10.2.3.2.1.5.1.16 = STRING: "Load 02 On" iso.3.6.1.4.1.850.10.2.3.2.1.6.1.1 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.2 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.3 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.4 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.5 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.6 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.7 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.8 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.9 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.10 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.11 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.12 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.13 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.14 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.15 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.6.1.16 = INTEGER: 0 iso.3.6.1.4.1.850.10.2.3.2.1.23.1.1 = STRING: "Reduce the equipment draw on this device" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.2 = STRING: "Possible unit replacement needed" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.3 = STRING: "Prepare system for shutdown." iso.3.6.1.4.1.850.10.2.3.2.1.23.1.4 = STRING: "Service Unit Immediately" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.5 = STRING: "Replace your battery." iso.3.6.1.4.1.850.10.2.3.2.1.23.1.6 = STRING: "Device shutdown is imminent." iso.3.6.1.4.1.850.10.2.3.2.1.23.1.7 = STRING: "Reduce load connected to device" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.8 = STRING: "Check device ventilation" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.9 = STRING: "Prepare system for shutdown." iso.3.6.1.4.1.850.10.2.3.2.1.23.1.10 = STRING: "Turn output on" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.11 = STRING: "Try self-test again in 24 hours. Contact Tripp Lite support if failure occurs again." iso.3.6.1.4.1.850.10.2.3.2.1.23.1.12 = STRING: "Battery replacement is recommended" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.13 = STRING: "Check communications cable" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.14 = "" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.15 = "" iso.3.6.1.4.1.850.10.2.3.2.1.23.1.16 = "" iso.3.6.1.4.1.850.90.1.1.1.1.0 = INTEGER: 1 iso.3.6.1.4.1.850.90.1.1.1.2.1.1.1 = INTEGER: 1 iso.3.6.1.4.1.850.90.1.1.1.2.1.2.1 = INTEGER: 1 iso.3.6.1.4.1.850.90.1.1.1.2.1.3.1 = STRING: "brad clements" iso.3.6.1.4.1.850.90.1.1.1.2.1.4.1 = STRING: "redacted" iso.3.6.1.4.1.850.90.1.1.2.1.0 = INTEGER: 1 iso.3.6.1.4.1.850.90.1.1.2.2.1.1.4 = INTEGER: 4 iso.3.6.1.4.1.850.90.1.1.2.2.1.2.4 = INTEGER: 1 iso.3.6.1.4.1.850.90.1.1.2.2.1.3.4 = STRING: "Poweralert Network Management 10.1.250.29_162" iso.3.6.1.4.1.850.90.1.1.2.2.1.4.4 = STRING: "10.1.250.29" iso.3.6.1.4.1.850.90.1.1.2.2.1.5.4 = INTEGER: 162 iso.3.6.1.4.1.850.90.1.1.2.2.1.6.4 = INTEGER: 2 iso.3.6.1.4.1.850.90.1.1.2.2.1.7.4 = STRING: "tripplite" iso.3.6.1.4.1.850.90.1.1.2.2.1.8.4 = "" iso.3.6.1.4.1.850.90.1.1.2.2.1.9.4 = "" iso.3.6.1.4.1.850.100.1.1.1.0 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.1.3.0 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.1.4.0 = STRING: "2447CV0AC881300689" iso.3.6.1.4.1.850.100.1.1.5.0 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.1.6.0 = "" iso.3.6.1.4.1.850.100.1.2.1.0 = STRING: "0.3" iso.3.6.1.4.1.850.100.1.2.2.0 = INTEGER: 770 iso.3.6.1.4.1.850.100.1.3.1.0 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.3.2.1.1.1 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.3.2.1.2.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.3.2.1.3.1 = INTEGER: 210 iso.3.6.1.4.1.850.100.1.4.6.0 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.6.1.0 = Gauge32: 0 iso.3.6.1.4.1.850.100.1.7.1.0 = STRING: "2016-01-08" iso.3.6.1.4.1.850.100.1.7.2.0 = STRING: "No Test" iso.3.6.1.4.1.850.100.1.8.1.0 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.8.2.0 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.8.3.1.0 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.8.3.4.0 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.8.3.5.0 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.9.1.0 = STRING: "10/22/2014" iso.3.6.1.4.1.850.100.1.10.1.0 = INTEGER: 3 iso.3.6.1.4.1.850.100.1.10.2.1.1.1 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.10.2.1.1.2 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.10.2.1.1.3 = INTEGER: 3 iso.3.6.1.4.1.850.100.1.10.2.1.2.1 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.10.2.1.2.2 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.10.2.1.2.3 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.10.2.1.3.1 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.10.2.1.3.2 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.10.2.1.3.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.4.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.4.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.4.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.5.1 = "" iso.3.6.1.4.1.850.100.1.10.2.1.5.2 = "" iso.3.6.1.4.1.850.100.1.10.2.1.5.3 = "" iso.3.6.1.4.1.850.100.1.10.2.1.6.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.6.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.6.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.7.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.7.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.7.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.8.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.8.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.8.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.9.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.9.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.9.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.10.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.10.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.10.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.11.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.11.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.11.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.12.1 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.12.2 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.10.2.1.12.3 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.11.1.0 = INTEGER: 0 iso.3.6.1.4.1.850.100.1.12.1.0 = INTEGER: 2 iso.3.6.1.4.1.850.100.1.12.2.0 = INTEGER: 1 iso.3.6.1.4.1.850.100.1.12.3.0 = INTEGER: 0
testing with the default nut release on ubuntu: Network UPS Tools upsd 2.7.1
[test] driver = snmp-ups mibs=ietf port = 10.1.253.20
upsc test Init SSL without certificate database battery.charge: 100.00 battery.temperature: 24.00 battery.voltage: 83.00 device.mfr: Tripp Lite device.model: SU3000RTXL3UHV device.type: ups driver.name: snmp-ups driver.parameter.mibs: ietf driver.parameter.pollinterval: 2 driver.parameter.port: 10.1.253.20 driver.version: 2.7.1 driver.version.data: ietf MIB 1.4 driver.version.internal: 0.70 input.bypass.phases: 0.00 input.frequency: 59.90 input.phases: 1.00 input.transfer.high: 275.00 input.transfer.low: 130.00 input.voltage: 210.00 input.voltage.nominal: 208.00 output.current: 0.00 output.frequency: 59.90 output.phases: 1.00 output.realpower: 0.00 output.voltage: 208.00 ups.firmware: 10 ups.firmware.aux: 12.06.0067 ups.load: 0.00 ups.mfr: Tripp Lite ups.model: SU3000RTXL3UHV ups.status: OL
@bkcsfi the version in Ubuntu (2.7.1) is old. Can you please try with Rodney Dawes' PPA? The version number there says 2.7.3.1, but it seems to be tracking the Git master branch.
@bkcsfi thanks for trying with gen-snmp-subdriver.sh. However, the subtree pointed by the sysOID (.1.3.6.1.4.1.850.1) is empty. Could you please retry with the following: bash gen-snmp-subdriver.sh -H 10.1.253.20 -s .1.3.6.1.4.1.850
Note that you should also have the matching MIB file (allowing friendly name resolution of .1.3.6.1.4.1.850.*) in the same directory as gen-snmp-subdriver.sh
Otherwise, the segfault issue is confirmed to be solved, and I'm closing the present ticket. I've created another one (#309) for the additional Tripplite mib mapping. @bkcsfi please post the results of gen-snmp-subdriver.sh there, thx.
I've gotten this (sort of?) working:
(
ups.status:
is bad, right? That should beOL
or something?)This configuration yields some "unhandled ASN" errors:
When run with
mibs = auto
,snmp-ups
segfaults:I've also captured full
snmpwalk
results, in numeric, symbolic, and debugging form.