--                   
-- *****************************************************************************
-- Copyright (c) 2009 :
-- Westermo Teleindustri AB
-- 640 40 Stora Sundby
-- Sweden
-- url: http://www.westermo.com
--
-- Contact:  info@westermo.se
-- Description: Westermo MRD-310/330 MIB-file
--
-- ****************************************************************************
-- 

WESTERMO-MRD-300-MIB DEFINITIONS ::= BEGIN

IMPORTS
    Counter32, IpAddress, TimeTicks,
    MODULE-IDENTITY, NOTIFICATION-TYPE,
    enterprises, Integer32              FROM SNMPv2-SMI
    DisplayString                       FROM SNMPv2-TC
    OBJECT-TYPE                         FROM RFC-1212
    OBJECT-GROUP, NOTIFICATION-GROUP    FROM SNMPv2-CONF;


westermo MODULE-IDENTITY
    LAST-UPDATED "200901261200Z"
    ORGANIZATION "Westermo Teleindustri AB"
    CONTACT-INFO
		  "Westermo Teleindustri AB
		   640 40 Stora Sundby
		   Sweden
		   info@westermo.se"
    DESCRIPTION
		  "This MIB module contains the Westermo MRD 310/330 mib."

    REVISION  	  "200901261200Z"
    DESCRIPTION   "New MIB implementation."

    ::= { enterprises 16177 }
   
--
--  Node definitions.
--  define OIDs for
--

products	OBJECT IDENTIFIER ::= { westermo 1 }
mrd 	      	OBJECT IDENTIFIER ::= { products 200 }

config	      	OBJECT IDENTIFIER ::= { mrd 1 }
status 	      	OBJECT IDENTIFIER ::= { mrd 2 }
wireless      	OBJECT IDENTIFIER ::= { mrd 3 }
wirelessPacket 	OBJECT IDENTIFIER ::= { wireless 15 }
wirelessCSD   	OBJECT IDENTIFIER ::= { wireless 16 }
serialServer  	OBJECT IDENTIFIER ::= { mrd 4 }
gpio 	      	OBJECT IDENTIFIER ::= { mrd 5 }
mrdTraps      	OBJECT IDENTIFIER ::= { mrd 20 }
mrdTrapsNode  	OBJECT IDENTIFIER ::= { mrdTraps 0 }

configModelName OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The model name of the unit."
  ::= { config 1 }

configSerialNumber OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The serial number of the unit."
  ::= { config 2 }

configFirmwareRev OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The release version of the application firmware."
  ::= { config 3 }



statusSelfTest OBJECT-TYPE
  SYNTAX INTEGER {
    failed (0),
    passed (1)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the modem's power on self test alarm."
  ::= { status 1 }

statusTemperature OBJECT-TYPE
  SYNTAX Integer32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current temperature of the modem."
  ::= { status 2 }



wirelessOperatingMode OBJECT-TYPE
  SYNTAX INTEGER {
    disabled (2),
    packet (0),
    csd (1)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current network registration of the modem."
  ::= { wireless 1 }

wirelessNetworkReg OBJECT-TYPE
  SYNTAX INTEGER {
    no (0),
    yes (1)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current network registration of the modem."
  ::= { wireless 2 }

wirelessRFLevel OBJECT-TYPE
  SYNTAX Integer32 (0..30)
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current RF level of the modem."
  ::= { wireless 3 }

wirelessProvider OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The mobile network provider."
  ::= { wireless 4 }

wirelessLocationID OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The mobile network cell location ID."
  ::= { wireless 5 }

wirelessCellID OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The mobile network cell ID."
  ::= { wireless 6 }



wirelessPacketState  OBJECT-TYPE
  SYNTAX INTEGER {
    disabled (0),
    errored (1),
    waitingForActivity (2),
    connecting (3),
    connected (4),
    csdFallback (5)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the packet network connection."
  ::= { wirelessPacket 1 }

wirelessPacketCurrentSessionTime  OBJECT-TYPE
  SYNTAX TimeTicks
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the packet network connection."
  ::= { wirelessPacket 2 }

wirelessPacketTotalSessionTime  OBJECT-TYPE
  SYNTAX TimeTicks
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the packet network connection."
  ::= { wirelessPacket 3 }



wirelessCSDState  OBJECT-TYPE
  SYNTAX INTEGER {
    offline (0),
    dialing (1),
    ringing (2),
    answering (3),
    online (4)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the packet network connection."
  ::= { wirelessCSD 1 }

wirelessCSDSessions  OBJECT-TYPE
  SYNTAX Integer32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the packet network connection."
  ::= { wirelessCSD 2 }

wirelessCSDCurrentSessionTime  OBJECT-TYPE
  SYNTAX TimeTicks
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the packet network connection."
  ::= { wirelessCSD 3 }

wirelessCSDTotalSessionTime  OBJECT-TYPE
  SYNTAX TimeTicks
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the packet network connection."
  ::= { wirelessCSD 4 }

serialServerTable OBJECT-TYPE
  SYNTAX SEQUENCE OF SerialServerEntry
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
    "Table of serial server status."
  ::= { serialServer 1 }

serialServerEntry OBJECT-TYPE
  SYNTAX SerialServerEntry
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
   "Digital Inputs entries."
  INDEX { serialServerIndex }
  ::= { serialServerTable 1 }

SerialServerEntry ::=  SEQUENCE {
    serialServerIndex           Integer32,
    serialServerFunction        INTEGER,
    serialServerNetState        INTEGER,
    serialServerRemoteAddress   IpAddress,
    serialServerUptime          TimeTicks,
    serialServerBytesTx         Counter32,
    serialServerBytesRx         Counter32,
    serialServerFramingErrors   Counter32,
    serialServerOverrunErrors   Counter32,
    serialServerParityErrors    Counter32,
    serialServerBreaks          Counter32
  }

serialServerIndex OBJECT-TYPE
  SYNTAX Integer32 (1..5)
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
    "The table index for the serial server table."
  ::= { serialServerEntry 1 }

serialServerFunction OBJECT-TYPE
  SYNTAX INTEGER  {
    disabled (0),
    rawTCPorUDP (1),
    modemEmulator (2),
    dnp3Gateway (3),
    telnetServer (4),
    modbusGateway (5)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The function of the serial server."
  ::= { serialServerEntry 2 }

serialServerNetState OBJECT-TYPE
  SYNTAX INTEGER  {
    notConnected (0),
    connecting (1),
    connected (2)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The state of the network connection."
  ::= { serialServerEntry 3 }

serialServerRemoteAddress OBJECT-TYPE
  SYNTAX IpAddress
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The remote address the server is currently connected to."
  ::= { serialServerEntry 4 }

serialServerUptime OBJECT-TYPE
  SYNTAX TimeTicks
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The length of the current connection."
  ::= { serialServerEntry 5 }

serialServerBytesTx OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of bytes transmitted out the serial port."
  ::= { serialServerEntry 6 }

serialServerBytesRx OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of bytes received from the serial port."
  ::= { serialServerEntry 7 }

serialServerFramingErrors OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of framing errors detected."
  ::= { serialServerEntry 8 }

serialServerOverrunErrors OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of overrun errors detected."
  ::= { serialServerEntry 9 }

serialServerParityErrors OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of parity errors detected."
  ::= { serialServerEntry 10 }

serialServerBreaks OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of breaks detected."
  ::= { serialServerEntry 11 }



gpioInputsTable OBJECT-TYPE
  SYNTAX SEQUENCE OF GPIOInputsTableEntry
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
    "Table of GPIO status."
  ::= { gpio 1 }

gpioInputsTableEntry OBJECT-TYPE
  SYNTAX GPIOInputsTableEntry
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
   "Digital Inputs entries."
  INDEX { gpioInputsIndex }
 ::= { gpioInputsTable 1 }

GPIOInputsTableEntry ::=  SEQUENCE {
    gpioInputsIndex             Integer32,
    gpioInputsLabel             DisplayString,
    gpioInputsState             INTEGER,
    gpioInputsToggles           Counter32,
    gpioInputsClosedTime        TimeTicks
}

gpioInputsIndex OBJECT-TYPE
  SYNTAX Integer32 (1..2)
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
    "The table index for the GPIO input table."
  ::= { gpioInputsTableEntry 1 }

gpioInputsLabel OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The label for the input."
  ::= { gpioInputsTableEntry 2 }

gpioInputsState OBJECT-TYPE
  SYNTAX INTEGER {
    open (0),
    closed (1)
  }
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The current state of the input."
  ::= { gpioInputsTableEntry 3 }

gpioInputsToggles OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of times the input has transitioned from open to closed."
  ::= { gpioInputsTableEntry 4 }

gpioInputsClosedTime OBJECT-TYPE
  SYNTAX TimeTicks
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The amount of time the input has been closed."
  ::= { gpioInputsTableEntry 5 }

gpioOutputsTable OBJECT-TYPE
  SYNTAX SEQUENCE OF GPIOOutputsTableEntry
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
    "Table of serial server status."
  ::= { gpio 2 }

gpioOutputsTableEntry OBJECT-TYPE
  SYNTAX GPIOOutputsTableEntry
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
   "Digital Outputs entries."
  INDEX { gpioOutputsIndex }
 ::= { gpioOutputsTable 1 }

GPIOOutputsTableEntry ::=  SEQUENCE {
    gpioOutputsIndex             Integer32,
    gpioOutputsLabel             DisplayString,
    gpioOutputsState             INTEGER,
    gpioOutputsToggles           Counter32,
    gpioOutputsClosedTime        TimeTicks
}

gpioOutputsIndex OBJECT-TYPE
  SYNTAX Integer32 (1..2)
  MAX-ACCESS not-accessible
  STATUS current
  DESCRIPTION
    "The table index for the GPIO output table."
  ::= { gpioOutputsTableEntry 1 }

gpioOutputsLabel OBJECT-TYPE
  SYNTAX DisplayString
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The label for the output."
  ::= { gpioOutputsTableEntry 2 }

gpioOutputsState OBJECT-TYPE
  SYNTAX INTEGER {
    open (0),
    closed (1)
  }
  MAX-ACCESS read-write
  STATUS current
  DESCRIPTION
    "The current state of the output."
  ::= { gpioOutputsTableEntry 3 }

gpioOutputsToggles OBJECT-TYPE
  SYNTAX Counter32
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The number of times the output has transitioned from open to closed."
  ::= { gpioOutputsTableEntry 4 }

gpioOutputsClosedTime OBJECT-TYPE
  SYNTAX TimeTicks
  MAX-ACCESS read-only
  STATUS current
  DESCRIPTION
    "The amount of time the output has been closed."
  ::= { gpioOutputsTableEntry 5 }


wirelessState NOTIFICATION-TYPE
  OBJECTS {
    wirelessNetworkReg,
    wirelessRFLevel,
    wirelessProvider,
    wirelessLocationID,
    wirelessCellID
  }
  STATUS current
  DESCRIPTION
    "This trap is sent when a change occurs to the state of the wireless
link."
  ::= { mrdTrapsNode 1 }

gpioInputState NOTIFICATION-TYPE
  OBJECTS {
    gpioInputsState,
    gpioInputsToggles
  }
  STATUS current
  DESCRIPTION
    "This trap is sent when a change occurs to the state of a GPIO input."
  ::= { mrdTrapsNode 10 }

gpioOutputState NOTIFICATION-TYPE
  OBJECTS {
    gpioOutputsState,
    gpioOutputsToggles
  }
  STATUS current
  DESCRIPTION
    "This trap is sent when a change occurs to the state of a GPIO output."
  ::= { mrdTrapsNode 11 }

END

