This document explains how to download a software image to a Cisco 2600/2800/3800 Series Router using Trivial File Transfer Protocol (TFTP) over the first LAN port using the ROMmon tftpdnld command.
  • The ROMmon TFTP transfer works on the first LAN port only. However, for the Cisco 2612, you can choose the Token Ring or Fast Ethernet port.
  • You can only download files to the router. You cannot use ROMmon TFTP to get files from the router.
  • The transfer does not support route bridging on Token Ring ports.



There are no specific requirements for this document.

Components Used

This document is not restricted to specific software and hardware versions.


Refer to Cisco Technical Tips Conventions for more information on document conventions.


First, you must set ROMmon environment variables prior to the TFTP download. All variable names are case sensitive.
You can view the ROMmon environment variables by using the set command, as shown here:
rommon 3 > set 
    PS1=rommon ! > 
The variables to set for tftpdnld are shown here:
usage: tftpdnld [-ur]
  Use this command for disaster recovery only to recover an image via TFTP.
  Monitor variables are used to set up parameters for the transfer.
  (Syntax: "VARIABLE_NAME=value" and use "set" to show current variables.)
  "ctrl-c" or "break" stops the transfer before flash erase begins.
  The following variables are REQUIRED to be set for tftpdnld:
            IP_ADDRESS: The IP address for this unit
        IP_SUBNET_MASK: The subnet mask for this unit
       DEFAULT_GATEWAY: The default gateway for this unit
           TFTP_SERVER: The IP address of the server to fetch from
             TFTP_FILE: The filename to fetch
  The following variables are OPTIONAL:
          TFTP_VERBOSE: Print setting. 0=quiet, 1=progress(default), 2=verbose
      TFTP_RETRY_COUNT: Retry count for ARP and TFTP (default=7)
          TFTP_TIMEOUT: Overall timeout of operation in seconds (default=7200)
         TFTP_CHECKSUM: Perform checksum test on image, 0=no, 1=yes (default=1)
  Command line options:
   -r: do not write flash, load to DRAM only and launch image
   -u: upgrade the rommon, system will reboot once upgrade is complete
rommon 14 >
Note: As detailed in Cisco bug ID CSCdk81077 (registered customers only) , for Cisco 2600 and 1720 Series Routers running the ROM monitor command tftpdnld, the command might report a bad checksum comparison when it loads Cisco IOS software images of Cisco IOS Software Release 12.0(2.2)T or later.
Note: As a workaround to this problem, set the ROM monitor variable TFTP_CHECKSUM to 0. This is done by defining the variable TFTP_CHECKSUM=0 from the ROM monitor set command, and then proceeding with the tftpdnld procedure.

Token Ring

The variables to set for Token Ring are shown here:
On the Cisco 2612, this variable sets the Token Ring or Ethernet port.
0 = use Ethernet port
1 = use Token Ring port
Default is 0
For a Token Ring port, this variable sets the ring speed and duplex mode.
0 = 4 Mbps half-duplex mode
1 = 4 Mbps full-duplex mode
2 = 16 Mbps half-duplex mode
3 = 16 Mbps full-duplex mode
Default is 2

Fast Ethernet

The variables to set for Fast Ethernet are shown here:
0 = 10 Mbps half-duplex mode
1 = 10 Mbps full-duplex mode
2 = 100 Mbps half-duplex mode
3 = 100 Mbps full-duplex mode
4 = auto-negotiation
Default is 4
You must use the sync command to save ROMmon environment variables to nonvolatile RAM (NVRAM).


rommon 16 > IP_ADDRESS=
     rommon 17 > IP_SUBNET_MASK=
     rommon 18 > DEFAULT_GATEWAY=
     rommon 19 > TFTP_SERVER=
     rommon 20 > TFTP_FILE=c2600-is-mz.113-2.0.3.Q
     rommon 21 > tftpdnld
                TFTP_FILE: c2600-is-mz.113-2.0.3.Q
     Invoke this command for disaster recovery only.
     WARNING: all existing data in all partitions on flash will be lost!
     Do you wish to continue? y/n:  [n]:  y
     Receiving c2600-is-mz.113-2.0.3.Q from !!!!!.!!!!!!!!!!!!!!!!!!!.!!
     File reception completed.
     Copying file c2600-is-mz.113-2.0.3.Q to flash.
     Erasing flash at 0x607c0000
     program flash location 0x60440000
     rommon 22 >