-- MARTEM-MIB.txt:  Martem devices (TELEM-RTA-A, TELEM-GW6, TELEM-GWM) MIB file
-- Copyright (c) 2014 by Martem, Inc.
-- All rights reserved.

MARTEM-MIB  DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, enterprises, OBJECT-IDENTITY, Integer32
    FROM SNMPv2-SMI
    DisplayString
    FROM SNMPv2-TC
    TRAP-TYPE
    FROM RFC-1215;

martem MODULE-IDENTITY
    LAST-UPDATED    "201408100700Z"
    ORGANIZATION    "Martem, Inc."
    CONTACT-INFO    "E-mail: martem@martem.eu"
    DESCRIPTION     "The MIB module for entities common for all Martem devices."
    REVISION        "201408210535Z"
    DESCRIPTION     "Added support for MIB setupSha512"
    REVISION        "201408140500Z"
    DESCRIPTION     "Added support for modem MIB modemSignalQualityBars."
    REVISION        "201408100700Z"
    DESCRIPTION     "Added support for modem MIBs."
    REVISION        "201404220935Z"
    DESCRIPTION     "The initial version of this MIB module."
    ::= { enterprises 43098 }

martemMgmt OBJECT-IDENTITY
    STATUS  current
    DESCRIPTION
        "Martem defined MIBS"
    ::= { martem 2 }            -- 1.3.6.1.4.1.43098.1 is reserved for future use

martemMgmtMIBObjects OBJECT IDENTIFIER ::= { martemMgmt 1 } -- 1.3.6.1.4.1.43098.2.1

systemBootCount OBJECT-TYPE
    SYNTAX  Integer32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Number of system reboots with current firmware"
    ::= { martemMgmtMIBObjects 1 }

systemBootCountTotal OBJECT-TYPE
    SYNTAX  Integer32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Number of total system reboots"
    ::= { martemMgmtMIBObjects 2 }
    
appStartCount OBJECT-TYPE
    SYNTAX  Integer32 (1..2147483647)
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Number of main application start count"
    ::= { martemMgmtMIBObjects 3 }

swVersion OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Firmware version. Content of the file /VERSION"
    ::= { martemMgmtMIBObjects 4 }

swBuildInfo OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Info of the compilation time and place. Content of the file /PACKED"
    ::= { martemMgmtMIBObjects 5 }

product OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Product name. Content of the file /usr/local/etc/telem/product"
    ::= { martemMgmtMIBObjects 6 }

productId OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Product identification. Content of the file /usr/local/etc/telem/product_id"
    ::= { martemMgmtMIBObjects 7 }

orderCode OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "Product order code. Content of the file /usr/local/etc/telem/order_code"
    ::= { martemMgmtMIBObjects 8 }

setupSha512 OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "SHA512 checksum of the setup.tar.xz after configuration change. Content of the file /usr/local/etc/telem/setup.sha512"
    ::= { martemMgmtMIBObjects 9 }

martemMgmtTraps OBJECT IDENTIFIER ::= { martemMgmt 2 } -- 1.3.6.1.4.1.43098.2.2

systemBoot TRAP-TYPE
    ENTERPRISE  martemMgmtTraps
    DESCRIPTION
        "A systemBoot trap indicates system reboot."
    ::= 1

appStart TRAP-TYPE
    ENTERPRISE  martemMgmtTraps
    DESCRIPTION
        "A appStart trap indicates main application start."
    ::= 2

martemMgmtGpsMIBObjects OBJECT IDENTIFIER ::= { martemMgmt 3 } -- 1.3.6.1.4.1.43098.2.3

gpsInvalid OBJECT-TYPE
    SYNTAX  INTEGER
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            0 - Clock is not synchronized from GPS, instead for example NTP client is used
            1 - Clock is synchronized from GPS and is valid
            2 - Clock is synchronized from GPS and is invalid
        "
    ::= { martemMgmtGpsMIBObjects 1 }

martemMgmtModemMIBObjects OBJECT IDENTIFIER ::= { martemMgmt 4 } -- 1.3.6.1.4.1.43098.2.4

modemRegistration OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /tmp/telem/modem/registration. Possible values:
            1. Not registered
            2. Home network
            3. Searching
            4. Denied
            5. Unknown
            6. Roaming
        "
    ::= { martemMgmtModemMIBObjects 1 }

modemAccessTechnology OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /tmp/telem/modem/at.
        "
    ::= { martemMgmtModemMIBObjects 2 }

modemBand OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /tmp/telem/modem/band. Example values:
            1. 1900/2100MHz (FDD I)
            2. 1900MHz (FDD II), or
            3. GSM 850MHz + DCS 1800MHz            
        "
    ::= { martemMgmtModemMIBObjects 3 }

modemOperator OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /tmp/telem/modem/operator.          
        "
    ::= { martemMgmtModemMIBObjects 4 }

modemBitErrorRate OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /tmp/telem/modem/ber_text.          
        "
    ::= { martemMgmtModemMIBObjects 5 }

modemSignalQuality OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /tmp/telem/modem/sq_text.          
        "
    ::= { martemMgmtModemMIBObjects 6 }

modemImei OBJECT-TYPE
    SYNTAX  DisplayString
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /var/local/telem/modem_imei.          
        "
    ::= { martemMgmtModemMIBObjects 7 }

modemSignalQualityBars OBJECT-TYPE
    SYNTAX  Integer32 (0..4)
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "
            Content of the file /tmp/telem/modem/bars. Values:
            0 - No signal
            1 - Marginal
            2 - OK
            3 - Good
            4 - Excelent       
        "
    ::= { martemMgmtModemMIBObjects 8 }

END
