Generally to upgrade/downgrade an IOS, you use the classical ftp/tftp transfer from a laptop to a router/switch; unfortunately, there are some cases where this way is not possible, so the only solution is to use the console.
Suppose you have to upload an image of about 20Mb. On a 9600bps intereface, the time required to upload this image is about 35minutes (20000000/9600)! Oh my God!
Fortunately Cisco permit to change the console speed using the command “speed”.
By default the console interface works at 9600bps:
Ciscozine#sh line console 0 Tty Line Typ Tx/Rx A Modem Roty AccO AccI Uses Noise Overruns Int 0 0 CTY - - - - - 0 0 0/0 - Line 0, Location: "", Type: "" Length: 24 lines, Width: 80 columns Baud rate (TX/RX) is 9600/9600, no parity, 2 stopbits, 8 databits Status: Ready Capabilities: none Modem state: Ready Group codes: 0 Modem hardware state: noCTS DSR* DTR RTS TTY NUMBER 0 Receive Overrun = 0, Carrier Detect Loss = 0 Receive Clock Glitch = 0, Transmit Underrun = 0 CTS Loss = 0, Transmit Clock Glitch = 0 Outcount = 0 totalout = 92838 incount = 0 totalin = 0 Special Chars: Escape Hold Stop Start Disconnect Activation ^^x none - - none Timeouts: Idle EXEC Idle Session Modem Answer Session Dispatch 00:10:00 never none not set Idle Session Disconnect Warning never Login-sequence User Response 00:00:30 Autoselect Initial Wait not set Modem type is unknown. Session limit is not set. Time since activation: never Editing is enabled. History is enabled, history size is 20. DNS resolution in show commands is enabled Full user help is disabled Allowed input transports are none. Allowed output transports are telnet. Preferred transport is telnet. Shell: enabled Shell trace: off Ciscozine#
…but it is possible “improve” the baud rate. To increase it:
Ciscozine(config)#line console 0 Ciscozine(config-line)#speed 115200
Ciscozine#sh line console 0 Tty Line Typ Tx/Rx A Modem Roty AccO AccI Uses Noise Overruns Int 0 0 CTY - - - - - 0 0 0/0 - Line 0, Location: "", Type: "" Length: 24 lines, Width: 80 columns Baud rate (TX/RX) is 115200/115200, no parity, 2 stopbits, 8 databits Status: Ready Capabilities: none Modem state: Ready Group codes: 0 Modem hardware state: noCTS DSR* DTR RTS TTY NUMBER 0 Receive Overrun = 0, Carrier Detect Loss = 0 Receive Clock Glitch = 0, Transmit Underrun = 0 CTS Loss = 0, Transmit Clock Glitch = 0 Outcount = 0 totalout = 94534 incount = 0 totalin = 0 Special Chars: Escape Hold Stop Start Disconnect Activation ^^x none - - none Timeouts: Idle EXEC Idle Session Modem Answer Session Dispatch 00:10:00 never none not set Idle Session Disconnect Warning never Login-sequence User Response 00:00:30 Autoselect Initial Wait not set Modem type is unknown. Session limit is not set. Time since activation: never Editing is enabled. History is enabled, history size is 20. DNS resolution in show commands is enabled Full user help is disabled Allowed input transports are none. Allowed output transports are telnet. Preferred transport is telnet. Shell: enabled Shell trace: off No output characters are padded No special data dispatching characters Ciscozine#
Now, the previous file of 20Mb is transferred in less than 3 minutes (20000000/115200)!
Note: Obviously, when you change the console speed on your device you have to change the console speed in your terminal!
Another solution to change the console speed is during the boot fase. In fact, if you enter in ROMmon mode, you can change this value using the command “confreg”.
rommon 1 >confreg Configuration Summary enabled are: break/abort has effect console baud: 9600 boot: the ROM Monitor do you wish to change the configuration? y/n [n]: y enable "diagnostic mode"? y/n [n]: enable "use net in IP bcast address"? y/n [n]: enable "load rom after netboot fails"? y/n [n]: enable "use all zero broadcast"? y/n [n]: disable "break/abort has effect"? y/n [n]: enable "ignore system config info"? y/n [n]: change console baud rate? y/n [n]: y enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400 4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [0]: 7 change the boot characteristics? y/n [n]: Configuration Summary enabled are: break/abort has effect console baud: 115200 boot: the ROM Monitor do you wish to change the configuration? y/n [n]: You must reset or power cycle for new config to take effect. rommon 2 >
Note: Once the router boots up in ROMmon, you need to exit the current terminal session and start a new one at a data rate of 115200 bps.
And what can you do if you don’t know the console speed?
A solution would be to just try the eight possible console speeds above and see which one works. Another solution (for Cisco 2600 and 3600 Series Routers) would be to open up the box and move a jumper. Yes, you have understood, you can reset this value moving a jumper!
Jumper J3 on the motherboard of the Cisco 2600 and 3600 Series Routers controls the speed reset. The factory default position of the shunt shorts pins 2-3. When the shunt is moved to pins 1-2, the console is reset to 9600 baud on the next power cycle. The following figures show the location of the console reset jumper, labeled DUART_RST or BAUD_RST.
Cisco 3640 Motherboard Showing Console Baud Reset Jumper
Cisco 2600 Motherboard Showing Console Baud Reset Jumper
Remember: If you open your device, you lose the warranty.
References:
“…Remember: If you open your device, you lose the warranty…”
Often not an optimum solution.
What about the new usb console. Any speeds improved there?
USB Serial Console
The USB serial console port connects directly to the USB connector of a PC using a USB Type A to 5-pin mini Type-B cable. The USB Console supports full speed (12Mb/s) operation. The console port does not support hardware flow control.
The default parameters for the console port are 9600 baud, 8 data bits, no parity, and 1 stop bit. The console port does not support mode control. For detailed information about installing a console terminal, see the “Connecting to the Console Port with Microsoft Windows” section.
For operation with Microsoft Windows, the Cisco Windows USB Console Driver must be installed on any PC connected to the Console port. If it is not installed, prompts guide you through a simple installation process.
The Cisco Windows USB Console Driver allows plugging and unplugging the USB cable from the console port without affecting Windows HyperTerminal operations. No special drivers are needed for Mac OS X or Linux.
Only one console port can be active at a time. When a cable is plugged into the USB console port the RJ 45 port becomes inactive. Conversely, when the USB cable is removed from the USB port the RJ 45 port becomes active.
Baud rates for the USB console port are 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 bps.
Info at http://www.cisco.com/c/en/us/td/docs/routers/access/1900/hardware/installation/guide/1900_HIG/19cblspc.html
how to transfer an IOS file on console port?
In the USA, it’s technically illegal to deny someone warranty for opening up equipment they bought.
It’s part of the tying provsions of the Magnuson-Moss Warranty Act of 1975. Cisco will give you crap, but probably knuckle under in the end.