Driver Management

Document revision:2.1.0 (Fri Mar 05 08:05:49 GMT 2004)
Applies to: V2.9

General Information


Device drivers represent the software interface part of installed network devices. Some drivers are included in the system software package and some in additional feature packages.

For complete list of supported devices and respective device driver names please consult the 'Related Documents' section.

The device drivers for PCI, miniPCI, PC (PCMCIA) and CardBus cards are loaded automatically. Other network interface cards (most ISA and PCI ISDN cards) require the device drivers to be loaded manually using the /driver add command.

Users cannot add their own device drivers, only drivers included in the Mikrotik RouterOS software packages can be used. If you need a support for a device, which hasn't a driver yet, you are welcome to suggest it at suggestion page on our web site.


Submenu level: /driver
Standards and Technologies: PCI, ISA, PCMCIA, miniPCI, CardBus
Hardware usage: Not significant

Related Documents

Loading Device Drivers

Submenu level: /driver


In order to use network interface card which has a driver that is not loaded automatically, exempli gratia NE2000 compatible ISA card, you need to add driver manually. This is accomplished by issuing add command under the driver submenu level.

To see system resources occupied by the installed devices, use the /system resource io print and /system resource irq print commands.

Property Description

io (integer) - input-output port base address

irq (integer) - interrupt request number

isdn-protocol (euro | german; default: euro) - line protocol setting for ISDN cards

memory (integer; default: 0) - shared memory base address

name (name) - driver name


Not all combinatios of irq and io base addresses might work on your particular system. It is recommended, that you first find an acceptable irq setting and then try different i/o base addresses.

If you need to specify hexadecimal values instead of decimal for the argument values, put 0x before the number.

To see the list of available drivers, issue the /driver add name ? command.

The resource list shows only those interfaces, which are enabled.

Typical io values for ISA cards are 0x280, 0x300 and 0x320


To view the list of available drivers, do the following:

[admin@MikroTik] driver> add name ?
3c509  c101  lance  ne2k-isa  pc-isa
[admin@MikroTik] driver> add name

To see system resources occupied by the devices, use the /system resource io print and /system resource irq print commands:

[admin@MikroTik] system resource> io print
 0x20-0x3F         APIC
 0x40-0x5F         timer
 0x60-0x6F         keyboard
 0x80-0x8F         DMA
 0xA0-0xBF         APIC
 0xC0-0xDF         DMA
 0xF0-0xFF         FPU
 0x100-0x13F       [prism2_cs]
 0x180-0x1BF       [orinoco_cs]
 0x1F0-0x1F7       IDE 1
 0x3D4-0x3D5       [cga]
 0x3F6-0x3F6       IDE 1
 0x3F8-0x3FF       serial port
 0xCF8-0xCFF       [PCI conf1]
 0x1000-0x10FF     [National Semiconductor Corporation DP83815 (MacPhyter) Et...
 0x1000-0x10FF     ether1
 0x1400-0x14FF     [National Semiconductor Corporation DP83815 (MacPhyter) Et...
 0x1400-0x14FF     ether2
 0x1800-0x18FF     [PCI device 100b:0511 (National Semiconductor Corporation)]
 0x1C00-0x1C3F     [PCI device 100b:0510 (National Semiconductor Corporation)]
 0x1C40-0x1C7F     [PCI device 100b:0510 (National Semiconductor Corporation)]
 0x1C80-0x1CBF     [PCI device 100b:0515 (National Semiconductor Corporation)]
 0x1CC0-0x1CCF     [National Semiconductor Corporation SCx200 IDE]
 0x4000-0x40FF     [PCI CardBus #01]
 0x4400-0x44FF     [PCI CardBus #01]
 0x4800-0x48FF     [PCI CardBus #05]
 0x4C00-0x4CFF     [PCI CardBus #05]

[admin@MikroTik] system resource> irq print
Flags: U - unused
   1   keyboard
   2   APIC
 U 3
   4   serial port
 U 5
 U 6
 U 7
 U 8
   9   ether1
   10  ether2
   11  [Texas Instruments PCI1250 PC card Cardbus Controller]
   11  [Texas Instruments PCI1250 PC card Cardbus Controller (#2)]
   11  [prism2_cs]
   11  [orinoco_cs]
   12  [usb-ohci]
 U 13
   14  IDE 1

[admin@MikroTik] system resource>

Suppose we need to load a driver for a NE2000 compatible ISA card. Assume we had considered the information above and have checked avalable resources in our system. To add the driver, we must do the following:

[admin@MikroTik] driver> add name=ne2k-isa io=0x280
[admin@MikroTik] driver> print
Flags: I - invalid, D - dynamic
  #   DRIVER                                IRQ IO       MEMORY   ISDN-PROTOCOL
  0 D RealTek 8139
  1 D Intel EtherExpressPro
  2 D PCI NE2000
  3   ISA NE2000                            280
  4   Moxa C101 Synchronous                              C8000
[admin@MikroTik] driver>

Removing Device Drivers


You can remove only statically loaded drivers, id est those which do not have the D flag before the driver name. The device drivers can be removed only if the appropriate interface has been disabled.

To remove a device driver use the /driver remove command. Unloading a device driver is useful when you swap or remove a network device - it saves system resources by avoiding to load drivers for removed devices.

The device driver needs to be removed and loaded again, if some parameters (memory range, i/o base address) have been changed for the network interface card.

Notes on PCMCIA Adapters


Currently only the following PCMCIA-ISA and PCMCIA-PCI adapters are tested to comply with MikroTik RouterOS:

Other PCMCIA-ISA and PCMCIA-PCI adapters might not function properly.


The Ricoh adapter might not work properly with some older motherboards. When recognized properly by the BIOS during the boot up of the router, it should be reported under the PCI device listing as "PCI/CardBus bridge". Try using another motherboard, if the adapter or the PCMCIA card are not recognized properly.

The maximum number of PCMCIA ports for a single system is equal to 8. If you will try to install 9 or more ports (no matter one-port or two-port adapters), no one will be recognized.