-- MIB file for PoE Ethernet Sensors (PoE-X), created 4-May-2020 by KSL -- REVISED POEXMIB DEFINITIONS ::= BEGIN IMPORTS enterprises FROM RFC1155-SMI OBJECT-TYPE FROM RFC-1212 TRAP-TYPE FROM RFC-1215 DisplayString FROM RFC1213-MIB TEXTUAL-CONVENTION FROM SNMPv2-TC; manufacturer OBJECT IDENTIFIER ::= { enterprises 41542 } POEX OBJECT IDENTIFIER ::= { manufacturer 3 } -- DESCRIPTION -- "PoE-X Sensor platform supporting the delivery of data from a varity -- of sensor type family on an Ethernet connection through the SNMP v1 -- protocol and others." POEXGatewaySpecificInfo OBJECT IDENTIFIER ::= { POEX 1 } -- DESCRIPTION -- "The POEX reports certain information specific to the particular -- gateway device, which are reported under this hierarchy." -- -- Gateway-specific section -- POEXGatewayID OBJECT-TYPE SYNTAX Unsigned32 ACCESS read-only STATUS mandatory DESCRIPTION "The serial number identifier of the gateway device assigned and programmed by the manufacturer. This will ordinarily be printed on a label on the housing of the device." ::= {POEXGatewaySpecificInfo 1} POEXGatewayFirmwareVerNo OBJECT-TYPE SYNTAX OCTET STRING ACCESS read-only STATUS mandatory DESCRIPTION "The version number of the firmware of the gateway device. Note that this can change upon a firmware update." ::= {POEXGatewaySpecificInfo 2} POEXGatewaySensorDeviceCount OBJECT-TYPE SYNTAX INTEGER(0..256) ACCESS read-only STATUS mandatory DESCRIPTION "The number of sensors registered to the gateway, i.e. on its netlist. Note that this can change as sensors are added or removed." ::= {POEXGatewaySpecificInfo 3} POEXGatewayTrapIPAddr OBJECT-TYPE SYNTAX IpAddress ACCESS read-only STATUS mandatory DESCRIPTION "The configured destination IP address for trap messages from this gateway." ::= {POEXGatewaySpecificInfo 4} POEXGatewaySensorTrapPort OBJECT-TYPE SYNTAX INTEGER(0..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The configured IP port for trap messages from this gateway." ::= {POEXGatewaySpecificInfo 5} -- -- Definitions of sensor-specific informational types -- POEXSensorID ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The serial number identifier of the sensor device assigned and programmed by the manufacturer. This will ordinarily be printed on a label on the housing of the device." SYNTAX Unsigned32 POEXSensorRegistrationIndex ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The index number of a sensor device in a gateway's sensor registration list. This is determined by the order in which a set of sensors has been registered, but will not change so long as the list remains fixed. This is included for legacy applications: please consider using the more convenient POEXSensorInfoTranslatedFormat and POEXSensorInfoBySensorID hierarchies." SYNTAX INTEGER(0..255) POEXDatumNo ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The datum number of a sequence of data readings from a sensor. The range of this type depends upon the number of datums reported by a sensor device. Thus, a 3-axis accelerometer sensor might report three datums for the X, Y and Z axes, and the datums would range from 1 to 3. For a simple temperature sensor reporting one reading, this value would always be 1." SYNTAX INTEGER(1..8) POEXSensorDeviceType ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The textual description of the type of the sensor device." SYNTAX OCTET STRING POEXDatumNumber ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The number of a datum in a set of datums comprising a sensor reading. For sensors reporting one datum, this will always be one. Otherwise it will be a number between 1 and the number of datums reported by the particular type of sensor." SYNTAX INTEGER POEXSensorDeviceReadingTranslatedValue ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The value of a sensor reading, in textual format, translated according to sensor and datum types. These formats can include integers, fixed-point, and binary values. In several examples: a pulse counter might report '12345', a current sensor might report '1.43', and a door closed sensor might report 'Yes'." SYNTAX OCTET STRING POEXSensorDeviceReadingTranslatedUnits ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The units or scale of value of a sensor reading, reported in textual format. In several examples: a pulse counter might report 'Count', a current sensor might report 'A', and a door sensor might report 'Closed'." SYNTAX OCTET STRING POEXSensorDeviceReadingValuesAll ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "All of the datums for the most recent reading of the sensor device, separated by commas, in textual format. For example, a report for a temperature and humidity sensor might read '20.3, 35' indicating 20.3 degrees at 35 percent humidity. If only one datum is reported by a sensor device, e.g. for a simple temperature sensor, it will be reported singly with no commas." SYNTAX OCTET STRING POEXSensorDeviceReadingUnitsAll ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "All of the units corresponding to the datums for the most recent reading of the sensor device, separated by commas, in textual format. For example, for a sensor reporting temperature and humidity this might read 'degrees C, %RH'" SYNTAX OCTET STRING POEXSensorDeviceReadingUntranslated ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The untranslated data block received from a sensor, in hexadecimal format. This may be used where a translating function isn't yet present, and for development purposes. Most users should use the translated values delivered in the format of POEXSensorDeviceReadingValuesAll." SYNTAX OCTET STRING POEXSensorDeviceReadingU32Value ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "Either a single sensor value of up to 32 bits, or half of a 64-bit value. Thus where a sensor value is reportable in a single Unsigned32, one OID is sufficient to gather that value. Where more than 32 bits are needed, the value is reported in two successive values of type POEXSensorDeviceReadingU32Value. Where a set of datums is reported, those datums are reported beginning with the lowest-numbered OID proceeding sequentially through the highest. Thus were a sensor to report a single-bit value A followed by 32-bit and a 64 bit ones B and C, and where OIDS x.10 through x.17 were used for reporting values, the value A would be encoded in x.10, B in x.11 and C in x.12 (low-order bits) and x.13 (high-order bits). These values are merely converted from sensor-specific internal formats to integers, and not beyond to human-readable formats. Furthermore, where for a sensor datums extend only part-way through the available U32Value OIDs, the ones unused may be filled with 0. Where an SNMP walk is performed, the gateway may not traverse these unused OIDs." SYNTAX Unsigned32 POEXSensorDeviceReadingAge ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The age of the sensor report received most recently from a sensor. That time is reported as the number of seconds between the time of the sensor report and the time this information is requested." SYNTAX Unsigned32 POEXSensorDeviceReadingAlarming ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "Either 'Alarming' or 'Not alarming'. A device will report an alarm if it is programmed with a threshold found to be exceeded. Examples: a temperature sensor for a refrigeration unit can be programmed to alarm if the measured temperature rises above a threshold, and a door sensor might alarm if a security door is opened." SYNTAX OCTET STRING -- -- Sensor-specific section, translated format -- POEXSensorInfoTranslatedFormatTable OBJECT-TYPE SYNTAX SEQUENCE OF POEXSensorInfoTranslatedFormatEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The (conceptual) table containing sensor-specific information in an easy-to-use translated string format, indexed by sensor ID is reported under this hierarchy. Sensor data is translated by the gateway from sensor-internal format to human-readable and scriptable values. Use of this format is preferred for most users. The gateway will report the most current information received from sensors, according to their programmed reporting period or heartbeat. When using this section through getRequests or getNextRequests, successive polling is required to keep sensor data current. This table can change as sensors are added or removed. If queried, this OID will return the number of rows in the table, which is the number of sensors registered to this gateway." ::= { POEX 2 } -- Table portion consisting of non-datum-specific info POEXSensorInfoTranslatedFormatEntry OBJECT-TYPE SYNTAX POEXSensorInfoTranslatedFormatEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry (conceptual row) in the Translated Format Table containing the latest sensor state for a single sensor." INDEX { POEXSensorInfoTranslatedFormatSensorDeviceID } ::= { POEXSensorInfoTranslatedFormatTable 1 } POEXSensorInfoTranslatedFormatEntry ::= SEQUENCE { POEXSensorInfoTranslatedFormatSensorDeviceID POEXSensorID, POEXSensorInfoTranslatedFormatSensorDeviceType POEXSensorDeviceType, POEXSensorInfoTranslatedFormatSensorDeviceReadingValuesAll POEXSensorDeviceReadingValuesAll, POEXSensorInfoTranslatedFormatSensorDeviceReadingUnitsAll POEXSensorDeviceReadingUnitsAll, POEXSensorInfoTranslatedFormatSensorDeviceRptUT POEXSensorDeviceReadingUntranslated, POEXSensorInfoTranslatedFormatSensorDeviceReadingTime DisplayString, POEXSensorInfoTranslatedFormatSensorDeviceReadingAge POEXSensorDeviceReadingAge, POEXSensorInfoTranslatedFormatSensorDeviceTypeNo DisplayString, POEXSensorInfoTranslatedFormatSensorDeviceRFStrength DisplayString, POEXSensorInfoTranslatedFormatSensorDeviceActive DisplayString, POEXSensorInfoTranslatedFormatSensorDeviceAlarming POEXSensorDeviceReadingAlarming, POEXSensorInfoTranslatedFormatSensorDeviceVoltage DisplayString, POEXSensorInfoTranslatedFormatSensorDeviceWDIndexNo DisplayString } POEXSensorInfoTranslatedFormatSensorDeviceID OBJECT-TYPE SYNTAX POEXSensorID ACCESS read-only STATUS mandatory DESCRIPTION "The serial number identifier of the sensor device assigned and programmed by the manufacturer. This will ordinarily be printed on a label on the housing of the device." ::= { POEXSensorInfoTranslatedFormatEntry 1 } POEXSensorInfoTranslatedFormatSensorDeviceType OBJECT-TYPE SYNTAX POEXSensorDeviceType ACCESS read-only STATUS mandatory DESCRIPTION "The textual description of the type of the sensor device." ::= {POEXSensorInfoTranslatedFormatEntry 2 } POEXSensorInfoTranslatedFormatSensorDeviceReadingValuesAll OBJECT-TYPE SYNTAX POEXSensorDeviceReadingValuesAll ACCESS read-only STATUS mandatory DESCRIPTION "All of the datums for the most recent reading of the sensor device, separated by commas, in textual format. For example, a report for a temperature and humidity sensor might read '20.3, 35' indicating 20.3 degrees at 35 percent humidity. If only one datum is reported by a sensor device, e.g. for a simple temperature sensor, it will be reported singly with no commas. The use of this OID is recommended for most users, rather than the single value ones, because all values can be retrieved atomically from a sensor in one SNMP request." ::= {POEXSensorInfoTranslatedFormatEntry 3 } POEXSensorInfoTranslatedFormatSensorDeviceReadingUnitsAll OBJECT-TYPE SYNTAX POEXSensorDeviceReadingUnitsAll ACCESS read-only STATUS mandatory DESCRIPTION "All of the units corresponding to the datums for the most recent reading of the sensor device, separated by commas, in textual format. For example, for a sensor reporting temperature and humidity this might read 'degrees C, %RH'" ::= {POEXSensorInfoTranslatedFormatEntry 4 } POEXSensorInfoTranslatedFormatSensorDeviceRptUT OBJECT-TYPE SYNTAX POEXSensorDeviceReadingUntranslated ACCESS read-only STATUS mandatory DESCRIPTION "The untranslated data block received from a sensor, in hexadecimal format. This may be used where a translating function isn't yet present, and for development purposes. Most users should use the translated values delivered in the format of POEXSensorDeviceReadingValuesAll." ::= {POEXSensorInfoTranslatedFormatEntry 5 } POEXSensorInfoTranslatedFormatSensorDeviceReadingTime OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "The time of the sensor report received most recently from a sensor. That time is reported as the number of seconds elapsed since the epoch of the gateway, which is presently Jan. 1, 2010." ::= {POEXSensorInfoTranslatedFormatEntry 6 } POEXSensorInfoTranslatedFormatSensorDeviceReadingAge OBJECT-TYPE SYNTAX POEXSensorDeviceReadingAge ACCESS read-only STATUS mandatory DESCRIPTION "The age of the sensor report received most recently from a sensor. That time is reported as the number of seconds between the time of the sensor report and the time this information is requested." ::= {POEXSensorInfoTranslatedFormatEntry 7 } POEXSensorInfoTranslatedFormatSensorDeviceTypeNo OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "The manufacturer's type number that identifies the kind of sensor." ::= {POEXSensorInfoTranslatedFormatEntry 8 } POEXSensorInfoTranslatedFormatSensorDeviceRFStrength OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "The signal strength, in percent, of the radio link between the gateway and the particular sensor, as measured at the time of the most recent sensor report." ::= {POEXSensorInfoTranslatedFormatEntry 9 } POEXSensorInfoTranslatedFormatSensorDeviceActive OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "Either 'Active' or '' (an empty string). A sensor will be reported active if it has recently communicated with the gateway since the last reboot. If a sensor device does not show active, it is likely because (1) the sensor lacks a power source, (2) the sensor is not in proximity to the gateway, or (3) the gateway has recently been powered on, and the sensor hasn't yet communicated." ::= {POEXSensorInfoTranslatedFormatEntry 10 } POEXSensorInfoTranslatedFormatSensorDeviceAlarming OBJECT-TYPE SYNTAX POEXSensorDeviceReadingAlarming ACCESS read-only STATUS mandatory DESCRIPTION "Either 'Alarming' or 'Not alarming'. A device will report an alarm if it is programmed with a threshold found to be exceeded. Examples: a temperature sensor for a refrigeration unit can be programmed to alarm if the measured temperature rises above a threshold, and a door sensor might alarm if a security door is opened." ::= {POEXSensorInfoTranslatedFormatEntry 11 } POEXSensorInfoTranslatedFormatSensorDeviceVoltage OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "The value of the voltage of the supply powering a sensor device. Ordinarily this will report the voltage at the battery terminals of a sensor. It is provided mainly so batteries can be changed when depleted." ::= {POEXSensorInfoTranslatedFormatEntry 12 } POEXSensorInfoTranslatedFormatSensorDeviceWDIndexNo OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "The index number of the sensor in the gateway's sensor registration table. This is the number used in referencing the sensor in the POEXSensorInformationBySensorRegisOrder hierarchy." ::= {POEXSensorInfoTranslatedFormatEntry 13 } -- Table portion consisting of datum-specific info (single values and units addressed by device ID and datum) POEXSensorInfoTranslatedFormatByDatumNumberEntry OBJECT-TYPE SYNTAX POEXSensorInfoTranslatedFormatByDatumNumberEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry (conceptual row) in the Translated Format Table containing the sensor datums, indexed by a sensor ID and datum number." INDEX { POEXSensorInfoTranslatedFormatSensorDeviceID, POEXSensorInfoTranslatedFormatByDatumNumberDatumNumber } ::= { POEXSensorInfoTranslatedFormatTable 2 } POEXSensorInfoTranslatedFormatByDatumNumberEntry ::= SEQUENCE { POEXSensorInfoTranslatedFormatByDatumNumberSensorDeviceID POEXSensorID, POEXSensorInfoTranslatedFormatByDatumNumberDatumNumber POEXDatumNumber, POEXSensorInfoTranslatedFormatByDatumNumberReadingValue POEXSensorDeviceReadingTranslatedValue, POEXSensorInfoTranslatedFormatByDatumNumberReadingUnits POEXSensorDeviceReadingTranslatedUnits } POEXSensorInfoTranslatedFormatByDatumNumberSensorDeviceID OBJECT-TYPE SYNTAX POEXSensorID ACCESS read-only STATUS mandatory DESCRIPTION "The serial number identifier of the sensor device assigned and programmed by the manufacturer. This will ordinarily be printed on a label on the housing of the device." ::= { POEXSensorInfoTranslatedFormatByDatumNumberEntry 1 } POEXSensorInfoTranslatedFormatByDatumNumberDatumNumber OBJECT-TYPE SYNTAX POEXDatumNumber ACCESS read-only STATUS mandatory DESCRIPTION "The number of a datum in a set of datums comprising a sensor reading. For sensors reporting one datum, this will always be one. Otherwise it will be a number between 1 and the number of datums reported by the particular type of sensor." ::= { POEXSensorInfoTranslatedFormatByDatumNumberEntry 2 } POEXSensorInfoTranslatedFormatByDatumNumberReadingValue OBJECT-TYPE SYNTAX POEXSensorDeviceReadingTranslatedValue ACCESS read-only STATUS mandatory DESCRIPTION "The value of a sensor reading, in textual format, translated according to sensor and datum types. These formats can include integers, fixed-point, and binary values. In several examples: a pulse counter might report '12345', a current sensor might report '1.43', and a door sensor might report 'closed'." ::= { POEXSensorInfoTranslatedFormatByDatumNumberEntry 3 } POEXSensorInfoTranslatedFormatByDatumNumberReadingUnits OBJECT-TYPE SYNTAX POEXSensorDeviceReadingTranslatedUnits ACCESS read-only STATUS mandatory DESCRIPTION "The units or scale of value of a sensor reading, reported in textual format. In several examples: a pulse counter might report 'Count', a current sensor might report 'A', and a door sensor might report 'Closed'." ::= { POEXSensorInfoTranslatedFormatByDatumNumberEntry 4 } -- -- Sensor-specific section, untranslated legacy format, by sensor ID -- POEXSensorInfoBySensorIDTable OBJECT-TYPE SYNTAX SEQUENCE OF POEXSensorInfoBySensorIDSensorEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The (conceptual) table containing sensor information in a legacy untranslated numeric format, addressed by sensor ID. This is provided for users who need a precise match of the format of the older EGW1 platform. The gateway will report the most current information received from sensors, according to their programmed reporting period or heartbeat. A more convenient format to new users is available under the POEXSensorInfoTranslatedFormat. If queried, this OID will return the number of rows in the table, which is the number of sensors registered to this gateway." ::= { POEX 3 } POEXSensorInfoBySensorIDEntry OBJECT-TYPE SYNTAX POEXSensorInfoBySensorIDEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry (conceptual row) in the untranslated by-sensor-ID-order table containing the latest sensor state for a single sensor." INDEX { POEXSensorInfoBySensorIDSensorDeviceID } ::= { POEXSensorInfoBySensorIDTable 1 } POEXSensorInfoBySensorIDEntry ::= SEQUENCE { POEXSensorInfoBySensorIDSensorDeviceID Unsigned32, POEXSensorInfoBySensorIDSensorDeviceWDIndexNo INTEGER, POEXSensorInfoBySensorIDSensorDeviceTypeNo INTEGER, POEXSensorInfoBySensorIDSensorDeviceReadingAge Unsigned32, POEXSensorInfoBySensorIDSensorDeviceActive INTEGER, POEXSensorInfoBySensorIDSensorDeviceAlarming INTEGER, POEXSensorInfoBySensorIDSensorDeviceVoltage INTEGER, POEXSensorInfoBySensorIDSensorDeviceRFStrength INTEGER, POEXSensorInfoBySensorIDSensorDeviceRptUT DisplayString, POEXSensorInfoBySensorIDSensorDeviceReadingValue1 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorIDSensorDeviceReadingValue2 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorIDSensorDeviceReadingValue3 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorIDSensorDeviceReadingValue4 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorIDSensorDeviceReadingValue5 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorIDSensorDeviceReadingValue6 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorIDSensorDeviceReadingValue7 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorIDSensorDeviceReadingValue8 POEXSensorDeviceReadingU32Value } POEXSensorInfoBySensorIDSensorDeviceID OBJECT-TYPE SYNTAX Unsigned32 ACCESS read-only STATUS mandatory DESCRIPTION "The serial number identifier of the sensor device assigned and programmed by the manufacturer. This will ordinarily be printed on a label on the housing of the device." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 1 } POEXSensorInfoBySensorIDSensorDeviceWDIndexNo OBJECT-TYPE SYNTAX INTEGER(0..255) ACCESS read-only STATUS mandatory DESCRIPTION "The index number of the sensor in the gateway's sensor registration table. This is the number used in referencing the sensor in the POEXSensorInfoBySensorRegisOrder hierarchy." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 2 } POEXSensorInfoBySensorIDSensorDeviceTypeNo OBJECT-TYPE SYNTAX INTEGER(1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The manufacturer's type number that identifies the kind of sensor." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 3 } POEXSensorInfoBySensorIDSensorDeviceReadingAge OBJECT-TYPE SYNTAX Unsigned32 ACCESS read-only STATUS mandatory DESCRIPTION "The age of the sensor report received most recently from a sensor. That time is reported as the number of seconds between the time of the sensor report and the time this information is requested." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 4 } POEXSensorInfoBySensorIDSensorDeviceActive OBJECT-TYPE SYNTAX INTEGER(0..1) ACCESS read-only STATUS mandatory DESCRIPTION "Either 1 (active) or 0 (inactive). A sensor will be reported active if it has recently communicated with the gateway since the last reboot. If a sensor device does not show active, it is likely because (1) the sensor lacks a power source, (2) the sensor is not in proximity to the gateway, or (3) the gateway has recently been powered on, and the sensor hasn't yet communicated." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 5 } POEXSensorInfoBySensorIDSensorDeviceAlarming OBJECT-TYPE SYNTAX INTEGER(0..1) ACCESS read-only STATUS mandatory DESCRIPTION "Either 1 (alarming) or 0 (not alarming)'. A device will report an alarm if it is programmed with a threshold found to be exceeded. Examples: a temperature sensor for a refrigeration unit can be programmed to alarm if the measured temperature rises above a threshold, and a door sensor might alarm if a security door is opened." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 6 } POEXSensorInfoBySensorIDSensorDeviceVoltage OBJECT-TYPE SYNTAX INTEGER(0..255) ACCESS read-only STATUS mandatory DESCRIPTION "A value representing the voltage of the supply powering a sensor device. Ordinarily this will report the voltage at the battery terminals of a sensor. It is provided mainly so batteries can be changed when depleted. The formula for calculating the voltage from this number is: voltage=(150 + v) / 10.0." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 7 } POEXSensorInfoBySensorIDSensorDeviceRFStrength OBJECT-TYPE SYNTAX INTEGER(-128..127) ACCESS read-only STATUS mandatory DESCRIPTION "The signal strength, in percent, of the radio link between the gateway and the particular sensor, as measured at the time of the most recent sensor report." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 8 } POEXSensorInfoBySensorIDSensorDeviceRptUT OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "The untranslated data block received from a sensor, in hexadecimal format. This may be used where a translating function isn't yet present, and for development purposes. Most users should use the translated values delivered in the format of POEXSensorDeviceReadingValuesAll." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 9 } POEXSensorInfoBySensorIDSensorDeviceReadingValue1 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 10 } POEXSensorInfoBySensorIDSensorDeviceReadingValue2 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 11 } POEXSensorInfoBySensorIDSensorDeviceReadingValue3 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 12 } POEXSensorInfoBySensorIDSensorDeviceReadingValue4 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 13 } POEXSensorInfoBySensorIDSensorDeviceReadingValue5 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 14 } POEXSensorInfoBySensorIDSensorDeviceReadingValue6 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 15 } POEXSensorInfoBySensorIDSensorDeviceReadingValue7 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 16 } POEXSensorInfoBySensorIDSensorDeviceReadingValue8 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." INDEX { POEXSensorID } ::= {POEXSensorInfoBySensorIDEntry 17 } -- -- Sensor-specific section, untranslated legacy format, by registration order -- POEXSensorInfoBySensorRegisOrderTable OBJECT-TYPE SYNTAX SEQUENCE OF POEXSensorInfoBySensorRegisOrderSensorEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "The (conceptual) table containing an untranslated numeric format, addressed by sensor registration order starting at 1 and ascending by one, in a legacy integer format. This is provided for users who need a precise match of the format and order of the older EGW1 platform. The gateway will report the most current information received from sensors, according to their programmed reporting period or heartbeat. A more convenient format to new users is available under the POEXSensorInfoTranslatedFormat. If queried, this OID will return the number of rows in the table, which is the number of sensors registered to this gateway." ::= { POEX 4 } POEXSensorInfoBySensorRegisOrderEntry OBJECT-TYPE SYNTAX POEXSensorInfoBySensorRegisOrderEntry ACCESS not-accessible STATUS mandatory DESCRIPTION "An entry (conceptual row) in the untranslated by-registration-order table containing the latest sensor state for a single sensor." INDEX { POEXSensorInfoBySensorRegisOrderSensDevID } ::= { POEXSensorInfoBySensorRegisOrderTable 1 } POEXSensorInfoBySensorRegisOrderEntry ::= SEQUENCE { POEXSensorInfoBySensorRegisOrderSensorDeviceID Unsigned32, POEXSensorInfoBySensorRegisOrderSensorDeviceWDIndexNo INTEGER, POEXSensorInfoBySensorRegisOrderSensorDeviceTypeNo INTEGER, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingAge Unsigned32, POEXSensorInfoBySensorRegisOrderSensorDeviceActive INTEGER, POEXSensorInfoBySensorRegisOrderSensorDeviceAlarming INTEGER, POEXSensorInfoBySensorRegisOrderSensorDeviceVoltage INTEGER, POEXSensorInfoBySensorRegisOrderSensorDeviceRFStrength INTEGER, POEXSensorInfoBySensorRegisOrderSensorDeviceRptUT DisplayString, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue1 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue2 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue3 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue4 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue5 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue6 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue7 POEXSensorDeviceReadingU32Value, POEXSensorInfoBySensorRegisOrderSensorDeviceReadingValue8 POEXSensorDeviceReadingU32Value } POEXSensorInfoBySensorRegisOrderSensDevID OBJECT-TYPE SYNTAX Unsigned32 ACCESS read-only STATUS mandatory DESCRIPTION "The serial number identifier of the sensor device assigned and programmed by the manufacturer. This will ordinarily be printed on a label on the housing of the device." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 1 } POEXSensorInfoBySensorRegisOrderSensDevWDIndexNo OBJECT-TYPE SYNTAX INTEGER(0..255) ACCESS read-only STATUS mandatory DESCRIPTION "The index number of the sensor in the gateway's sensor registration table. This is the number used in referencing the sensor in the POEXSensorInfoBySensorRegisOrder hierarchy." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 2 } POEXSensorInfoBySensorRegisOrderSensDevTypeNo OBJECT-TYPE SYNTAX INTEGER(1..65535) ACCESS read-only STATUS mandatory DESCRIPTION "The manufacturer's type number that identifies the kind of sensor." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 3 } POEXSensorInfoBySensorRegisOrderSensDevReadingAge OBJECT-TYPE SYNTAX Unsigned32 ACCESS read-only STATUS mandatory DESCRIPTION "The age of the sensor report received most recently from a sensor. That time is reported as the number of seconds between the time of the sensor report and the time this information is requested." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 4 } POEXSensorInfoBySensorRegisOrderSensDevActive OBJECT-TYPE SYNTAX INTEGER(0..1) ACCESS read-only STATUS mandatory DESCRIPTION "Either 1 (active) or 0 (inactive). A sensor will be reported active if it has recently communicated with the gateway since the last reboot. If a sensor device does not show active, it is likely because (1) the sensor lacks a power source, (2) the sensor is not in proximity to the gateway, or (3) the gateway has recently been powered on, and the sensor hasn't yet communicated." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 5 } POEXSensorInfoBySensorRegisOrderSensDevAlarming OBJECT-TYPE SYNTAX INTEGER(0..1) ACCESS read-only STATUS mandatory DESCRIPTION "Either 1 (alarming) or 0 (not alarming)'. A device will report an alarm if it is programmed with a threshold found to be exceeded. Examples: a temperature sensor for a refrigeration unit can be programmed to alarm if the measured temperature rises above a threshold, and a door sensor might alarm if a security door is opened." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 6 } POEXSensorInfoBySensorRegisOrderSensDevVoltage OBJECT-TYPE SYNTAX INTEGER(0..255) ACCESS read-only STATUS mandatory DESCRIPTION "A value representing the voltage of the supply powering a sensor device. Ordinarily this will report the voltage at the battery terminals of a sensor. It is provided mainly so batteries can be changed when depleted. The formula for calculating the voltage from this number is: voltage=(150 + v) / 10.0." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 7 } POEXSensorInfoBySensorRegisOrderSensDevRFStrength OBJECT-TYPE SYNTAX INTEGER(-128..127) ACCESS read-only STATUS mandatory DESCRIPTION "The signal strength, in percent, of the radio link between the gateway and the particular sensor, as measured at the time of the most recent sensor report." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 8 } POEXSensorInfoBySensorRegisOrderSensDevRptUT OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "The untranslated data block received from a sensor, in hexadecimal format. This may be used where a translating function isn't yet present, and for development purposes. Most users should use the translated values delivered in the format of POEXSensorDeviceReadingValuesAll." INDEX { POEXSensorRegistrationIndex } ::= {POEXSensorInfoBySensorRegisOrderEntry 9 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl1 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 10 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl2 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 11 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl3 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 12 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl4 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 13 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl5 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 14 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl6 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 15 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl7 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 16 } POEXSensorInfoBySensorRegisOrderSensDevReadingVl8 OBJECT-TYPE SYNTAX POEXSensorDeviceReadingU32Value ACCESS read-only STATUS mandatory DESCRIPTION "The value of a single sensor reading, or one half of a 64-bit reading, in integer format, not translated to human-readable form. See POEXSensorDeviceReadingU32Value for further explanation." ::= {POEXSensorInfoBySensorRegisOrderEntry 17 } -- -- Traps -- --Map of types used in traps to those used in requests -- POEX-Trap-DevIDReported ::= POEX-GatewayID -- POEX-Trap-AllValuesReported ::= -- CHOICE { -- POEX-trap-values-translatable POEX-SensorDeviceReadingValuesAll, -- POEX-trap-values-unknown POEX-SensorDeviceReadingUntranslated -- } -- POEX-Trap-AllUnitsReported ::= POEX-SensorDeviceReadingUnitsAll -- POEX-Trap-AgeReported ::= POEX-SensorDeviceReadingUnitsAll -- POEX-Trap-AlarmingReported ::= POEX-SensorDeviceReadingUnitsAll POEXTrapDevIDReported ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The serial number identifier of the sensor device assigned and programmed by the manufacturer. This will ordinarily be printed on a label on the housing of the device. POEXTrapDevIDReported is the same as POEXSensorID." SYNTAX Unsigned32(1..2147483631) POEXTrapAllValuesReported ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "This will make one of two reports. For the case the sensor type is known to the gateway, this will be all of the datums for the most recent reading of the sensor device, separated by commas, in textual format, using the POEXSensorDeviceReadingValuesAll format. Where the sensor type is not known to the gateway, this will be the untranslated data block received from a sensor, in hexadecimal format. This POEXTrapAllValuesReported is the same as either POEXSensorDeviceReadingValuesAll or POEXSensorDeviceReadingUntranslated." SYNTAX OCTET STRING POEXTrapAllUnitsReported ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "All of the units corresponding to the datums for the most recent reading of the sensor device, separated by commas, in textual format. For example, for a sensor reporting temperature and humidity this might read 'degrees C, %RH'. POEXTrapAllUnitsReported is the same as POEXSensorDeviceReadingUnitsAll." SYNTAX OCTET STRING POEXTrapAgeReported ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "The age of the sensor report received most recently from a sensor. That time is reported as the number of seconds between the time of the sensor report and the time this information is requested. POEXTrapAgeReported is the same as POEXSensorDeviceReadingAge." SYNTAX OCTET STRING POEXTrapAlarmingReported ::= TEXTUAL-CONVENTION STATUS mandatory DESCRIPTION "Either 'Alarming' or 'Not alarming'. A device will report an alarm if it is programmed with a threshold found to be exceeded. Examples: a temperature sensor for a refrigeration unit can be programmed to alarm if the measured temperature rises above a threshold, and a door sensor might alarm if a security door is opened. POEXTrapAlarmingReported is the same as POEXSensorDeviceReadingAlarming." SYNTAX OCTET STRING POEXNewSensorTraffic TRAP-TYPE ENTERPRISE POEX VARIABLES { POEXSensorInfoTranslatedFormatSensorDeviceID, POEXTrapDevIDReported, POEXSensorInfoTranslatedFormatSensorDeviceReadingValuesAll, POEXTrapAllValuesReported, POEXSensorInfoTranslatedFormatSensorDeviceReadingUnitsAll, POEXTrapAllUnitsReported, POEXSensorInfoTranslatedFormatSensorDeviceReadingAge, POEXTrapAgeReported, POEXSensorInfoTranslatedFormatSensorDeviceAlarming, POEXTrapAlarmingReported } DESCRIPTION "This trap, when enabled, will generate a report corresponding to new data from any registered sensor as it is received. Included with the trap message are the sensor ID, all values the sensor reports, units for all those values, the age, and whether the sensor is alarming." ::= 1 POEXDeviceAlarming TRAP-TYPE ENTERPRISE POEX VARIABLES { POEXSensorInfoTranslatedFormatSensorDeviceID, POEXTrapDevIDReported, POEXSensorInfoTranslatedFormatSensorDeviceReadingValuesAll, POEXTrapAllValuesReported, POEXSensorInfoTranslatedFormatSensorDeviceReadingUnitsAll, POEXTrapAllUnitsReported, POEXSensorInfoTranslatedFormatSensorDeviceReadingAge, POEXTrapAgeReported, POEXSensorInfoTranslatedFormatSensorDeviceAlarming, POEXTrapAlarmingReported } DESCRIPTION "This trap, when enabled, will generate a report corresponding to new data from any registered sensor as it is received, but only if that sensor is alarming and the POEXNewSensorTraffic trap is disabled. (That trap will generate the same message, rendering this trap redundant.) Included with the trap message are the sensor ID, all values the sensor reports, units for all those values, the age, and whether the sensor is alarming." ::= 2 END