--
-- MOXA-SYS-MIB.txt
--

	MOXA-SYS-MIB DEFINITIONS ::= BEGIN
 
		IMPORTS
			enterprises, IpAddress, Integer32, Gauge32, OBJECT-TYPE, 
			MODULE-IDENTITY, NOTIFICATION-TYPE			
				FROM SNMPv2-SMI			
			DisplayString			
				FROM SNMPv2-TC;
	
	
		-- 1.3.6.1.4.1.8691.17.1
		moxaSystem MODULE-IDENTITY 
			LAST-UPDATED "201203211854Z"		-- March 21, 2012 at 18:54 GMT
			ORGANIZATION 
				"Moxa Techonology , Software Research Department"
			CONTACT-INFO 
				"This mib is being maintained by the Moxa System Software R&D who handle product line.
				
				    postal:   Taiwan,Taipei,ShienTien
				              P.O. Box 222
				              Phone:(02)8919-1230
				
				    email:    technical_support@moxa.com"
			DESCRIPTION 
				"MIB script for all serial product of Embedded Communication & Computing .Dep."
			REVISION "201203211854Z"		-- March 21, 2012 at 18:54 GMT
			DESCRIPTION 
				"This file defines the private Moxa product MIB."
			::= { embeddedComputer 1 }

		
	
	
--
-- Node definitions
--
	
		-- 1.3.6.1.4.1.8691
		moxa OBJECT IDENTIFIER ::= { enterprises 8691 }

		
-- Current Moxa System company and main entries:
		-- 1.3.6.1.4.1.8691.17
		embeddedComputer OBJECT IDENTIFIER ::= { moxa 17 }

		
-- product table checks
-- Mib sections utilizing the above conventions:
--   product manager: version, description, build date
-- 
		-- 1.3.6.1.4.1.8691.17.1.1
		productInfoMgmt OBJECT IDENTIFIER ::= { moxaSystem 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.1.1
		productName OBJECT-TYPE
			SYNTAX DisplayString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Showing product name eg. UC7110-LX/IA240-LX/DA683-LX/DA683-XPE."
			::= { productInfoMgmt 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.1.2
		productDesc OBJECT-TYPE
			SYNTAX DisplayString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Showing product short description.(if one exists)."
			::= { productInfoMgmt 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.1.3
		productVersion OBJECT-TYPE
			SYNTAX DisplayString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Showing product version eg. 1.0/1.0.1"
			::= { productInfoMgmt 3 }

		
		-- 1.3.6.1.4.1.8691.17.1.1.4
		productBuildDate OBJECT-TYPE
			SYNTAX DisplayString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Showing product last build date, the format is YYMMDDHH.
				eg. 2012/01/23 19:22 -> 12012319."
			::= { productInfoMgmt 4 }

		
-- In biosMgmt section, all of write able object will not really write to BIOS
--  CMOS area when the BIOS write able object value modified. To save BIOS
--  setting, write biosSaveSetting to 1(apply), and wait the operate
--  complete(the biosSaveSetting is 0 (none)).
-- 
		-- 1.3.6.1.4.1.8691.17.1.4
		biosMgmt OBJECT IDENTIFIER ::= { moxaSystem 4 }

		
		-- 1.3.6.1.4.1.8691.17.1.4.1
		biosVersion OBJECT-TYPE
			SYNTAX DisplayString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Showing the BIOS version. eg. V1.00S01"
			::= { biosMgmt 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.5
		sensorMgmt OBJECT IDENTIFIER ::= { moxaSystem 5 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1
		sensorObject OBJECT IDENTIFIER ::= { sensorMgmt 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.1
		tempSensorsTable OBJECT-TYPE
			SYNTAX SEQUENCE OF TempSensorsEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"Table of temperature sensors and their values."
			::= { sensorObject 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.1.1
		tempSensorsEntry OBJECT-TYPE
			SYNTAX TempSensorsEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"An entry containing a device and its statistics."
			INDEX { tempSensorsIndex }
			::= { tempSensorsTable 1 }

		
		TempSensorsEntry ::=
			SEQUENCE { 
				tempSensorsIndex
					Integer32,
				tempSensorsDevice
					DisplayString,
				tempSensorsValue
					Gauge32
			 }

		-- 1.3.6.1.4.1.8691.17.1.5.1.1.1.1
		tempSensorsIndex OBJECT-TYPE
			SYNTAX Integer32 (1..65535)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Reference index for each observed device."
			::= { tempSensorsEntry 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.1.1.2
		tempSensorsDevice OBJECT-TYPE
			SYNTAX DisplayString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The name of the temperature sensor we are reading."
			::= { tempSensorsEntry 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.1.1.3
		tempSensorsValue OBJECT-TYPE
			SYNTAX Gauge32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The temperature of this sensor in mC."
			::= { tempSensorsEntry 3 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.2
		voltSensorsTable OBJECT-TYPE
			SYNTAX SEQUENCE OF VoltSensorsEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"Table of voltage sensors and their values."
			::= { sensorObject 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.2.1
		voltSensorsEntry OBJECT-TYPE
			SYNTAX VoltSensorsEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"An entry containing a device and its statistics."
			INDEX { voltSensorsIndex }
			::= { voltSensorsTable 1 }

		
		VoltSensorsEntry ::=
			SEQUENCE { 
				voltSensorsIndex
					Integer32,
				voltSensorsDevice
					DisplayString,
				voltSensorsValue
					Gauge32
			 }

		-- 1.3.6.1.4.1.8691.17.1.5.1.2.1.1
		voltSensorsIndex OBJECT-TYPE
			SYNTAX Integer32 (1..65535)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Reference index for each observed device."
			::= { voltSensorsEntry 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.2.1.2
		voltSensorsDevice OBJECT-TYPE
			SYNTAX DisplayString
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The name of the device we are reading."
			::= { voltSensorsEntry 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.5.1.2.1.3
		voltSensorsValue OBJECT-TYPE
			SYNTAX Gauge32
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The voltage in mV."
			::= { voltSensorsEntry 3 }

		
		-- 1.3.6.1.4.1.8691.17.1.6
		peripheralMgmt OBJECT IDENTIFIER ::= { moxaSystem 6 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.1
		perIoMgmt OBJECT IDENTIFIER ::= { peripheralMgmt 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.3
		perSerialMgmt OBJECT IDENTIFIER ::= { peripheralMgmt 3 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.3.1
		uartNumber OBJECT-TYPE
			SYNTAX Integer32 (0..65535)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Number of internal UART in current system."
			::= { perSerialMgmt 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.3.2
		uartConfigTable OBJECT-TYPE
			SYNTAX SEQUENCE OF UartConfigEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"Table of internal UART and their values."
			::= { perSerialMgmt 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.3.2.1
		uartConfigEntry OBJECT-TYPE
			SYNTAX UartConfigEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"An entry containing a UART port and its statistics."
			INDEX { uartIndex }
			::= { uartConfigTable 1 }

		
		UartConfigEntry ::=
			SEQUENCE { 
				uartIndex
					Integer32,
				uartType
					INTEGER
			 }

		-- 1.3.6.1.4.1.8691.17.1.6.3.2.1.1
		uartIndex OBJECT-TYPE
			SYNTAX Integer32 (1..65535)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"Reference index for each UART port."
			::= { uartConfigEntry 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.3.2.1.2
		uartType OBJECT-TYPE
			SYNTAX INTEGER
				{
				rs232(0),
				rs485w2(1),
				rs422(2),
				rs485w4(3)
				}
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"The UART mode, 0 is RS232, 1 is RS485 2 wires, 2 is RS422, 3 is RS485 4 wires."
			::= { uartConfigEntry 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4
		perUsbMgmt OBJECT IDENTIFIER ::= { peripheralMgmt 4 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.1
		usbObject OBJECT IDENTIFIER ::= { perUsbMgmt 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.1.1
		usbNumber OBJECT-TYPE
			SYNTAX Integer32 (0..65535)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The number of ports regardless of their current state
				in the usb general port table"
			::= { usbObject 1 }

		
--  usb Device MIB
-- 
		-- 1.3.6.1.4.1.8691.17.1.6.4.1.3
		usbDeviceTable OBJECT-TYPE
			SYNTAX SEQUENCE OF UsbDeviceEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"A list of USB device ports. Usually the device has
				only one USB device port"
			::= { usbObject 3 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.1.3.1
		usbDeviceEntry OBJECT-TYPE
			SYNTAX UsbDeviceEntry
			MAX-ACCESS not-accessible
			STATUS current
			DESCRIPTION
				"Status and parameter values for the USB device port."
			INDEX { usbDeviceIndex }
			::= { usbDeviceTable 1 }

		
		UsbDeviceEntry ::=
			SEQUENCE { 
				usbDeviceIndex
					Integer32,
				usbDeviceVendorID
					OCTET STRING,
				usbDeviceProductID
					OCTET STRING,
				usbDeviceActiveClass
					INTEGER
			 }

		-- 1.3.6.1.4.1.8691.17.1.6.4.1.3.1.1
		usbDeviceIndex OBJECT-TYPE
			SYNTAX Integer32 (1..65535)
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The index is identical to usbPortIndex for the
				correspondent USB port"
			::= { usbDeviceEntry 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.1.3.1.2
		usbDeviceVendorID OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The USB device port vendor HEX-formatted string as it
				is provided to the USB host by the USB device"
			::= { usbDeviceEntry 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.1.3.1.3
		usbDeviceProductID OBJECT-TYPE
			SYNTAX OCTET STRING
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"The product ID HEX-formatted string as it is provided
				to the USB host by the USB device"
			::= { usbDeviceEntry 3 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.1.3.1.4
		usbDeviceActiveClass OBJECT-TYPE
			SYNTAX INTEGER
				{
				other(1),
				hid(2),
				mass(3)
				}
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
				"This object returns USB Device Class type of the
				active configuration"
			::= { usbDeviceEntry 4 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.1.4
		usbPlugTrapEnable OBJECT-TYPE
			SYNTAX INTEGER
				{
				disable(0),
				enable(1)
				}
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Agent will send trap message when USB device inserted or removed and this object enbeled."
			::= { usbObject 4 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.2
		usbNotification OBJECT IDENTIFIER ::= { perUsbMgmt 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.4.2.1
		usbPlugEvent NOTIFICATION-TYPE
			STATUS current
			DESCRIPTION 
				"This trap is sent when USB device inserted or removed."
			::= { usbNotification 1 }
		-- 1.3.6.1.4.1.8691.17.1.6.6
		perSystemMgmt OBJECT IDENTIFIER ::= { peripheralMgmt 6 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.6.2
		systemWatchdog OBJECT IDENTIFIER ::= { perSystemMgmt 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.6.2.1
		watchdogPeriod OBJECT-TYPE
			SYNTAX Second (0..255)
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Watchdog period, 0 means disable watchdog monitor program; otherwise enable watchdog monitor program and configure the expired time."
			::= { systemWatchdog 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.6.6.2.2
		watchdogStatus OBJECT-TYPE
			SYNTAX INTEGER
				{
				running(1),
				stopped(2)
				}
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"To show the watchdog monitor program status."
			::= { systemWatchdog 2 }

		
		-- 1.3.6.1.4.1.8691.17.1.9
		notificationMgmt OBJECT IDENTIFIER ::= { moxaSystem 9 }

		
		-- 1.3.6.1.4.1.8691.17.1.9.1
		moxaSystemTrapIP OBJECT-TYPE
			SYNTAX IpAddress
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Set Trap IP address. eg. 192.168.1.100"
			::= { notificationMgmt 1 }

		
		-- 1.3.6.1.4.1.8691.17.1.9.2
		moxaSystemTrapCommunity OBJECT-TYPE
			SYNTAX OCTET STRING (SIZE (0..127))
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
				"Trap community. eg. public"
			::= { notificationMgmt 2 }

		
	
	END

--
-- MOXA-SYS-MIB.txt
--
