User Tools

Site Tools



This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Previous revision
toh:mikrotik:rb450g [2013/02/16 23:37]
toh:mikrotik:rb450g [2015/12/31 10:28] (current)
tmomas links fixed, section heading formatting fixed
Line 1: Line 1:
 +====== Mikrotik RouterBoard RB450G ======
 +The good news: Barrier Breaker 14.07 works very well on the RB-450G. ​ The device is built with good hardware, almost all of which is fully supported. ​ The switch chipset (Atheros AR8316) however does not provide support for mixing tagged and untagged VLAN's on the same port. With a fast processor, gigabit ethernet, and relatively huge amounts of RAM and flash, this is a very capable device once OpenWRT is installed.
 +The bad news: getting OpenWRT installed in the first place is not straightforward (but almost).
 +===== Installing a New Firmware Image =====
 +OpenWrt doesn'​t provide a firmware image that can be written directly to the flash memory via the firmware update system in Mikrotik'​s RouterOS. ​ So installing OpenWRT is a two step process that requires two separate kernel images.
 +You're going to need a desktop computer that has a working serial port (or adapter) and an ethernet interface. ​ This computer will also need to have:
 +  * some kind of serial terminal software
 +  * a DHCP server; this documentation will use ''​dnsmasq''​
 +  * a TFTP server; also ''​dnsmasq''​
 +The following instructions illustrate installing Barrier Breaker 14.07, but should be easily adaptable to newer versions. For Attitude Adjustment 12.09 and previous it is required to build OpenWrt from source.
 +==== Download a netboot image for the RB450G ====
 +https://​​barrier_breaker/​14.07/​ar71xx/​mikrotik/​openwrt-ar71xx-mikrotik-vmlinux-initramfs-lzma.elf should be OK.
 +==== Boot the RB450G from the network ====
 +  - Connect the ethernet adapter of your desktop computer to Eth1 of the RB450G using either a straight or crossover cable. ​ The RB450G will figure out the crossover on its own.
 +  - Manually assign an IPv4 address (anything other than,​ or anything in the range of IPs used in your local LAN) to the ethernet adapter on your desktop computer. ​ Here I'll use ''​''​.
 +  - Set up ''​dnsmasq''​ on the desktop computer.
 +    - The RB450G'​s bootloader apparently ignores all DHCP options, such as ''​tftp-server''​ or ''​bootp-filename'',​ normally used to instruct a netboot device how to find its image. ​ So you need to set up ''​dnsmasq''​ with specific options to work around this quirk.
 +    - Copy the file ''​openwrt-ar71xx-mikrotik-vmlinux-initramfs-lzma.elf''​ to a clean directory like ''​~/​tftproot/''​. ​ Rename the file to ''​vmlinux''​ (this helps when testing other images).
 +    - Run ''​sudo dnsmasq -a -z -d -p 0 -F,​ --enable-tftp --tftp-root=~/​tftproot/​ --dhcp-boot=~/​tftproot/​vmlinux''​.
 +    - ''​dnsmasq''​ should start in the foreground writing all its output to the terminal; you're only going to run it temporarily,​ and having the debugging information may come in handy.
 +  - Connect the serial port of your desktop computer to the serial port of your RB450G using a [[wp>​null modem cable]]. ​ Start your terminal server program. ​ The RB450G serial interface uses 8N1 with hardware flow control at 115200 bps (which is the default, but it can be configured through various means).
 +TIP: Try setting hardware flow control to off if you can't get to the bootloader menu (i.e. it always times out without detecting a key press). If using minicom, try ''​minicom -o --color=on --device=/​dev/​ttyS#'',​ then once minicom opens, type ''​CONTROL A Z''​ and find your way to disable hardware flow control. Or try ''​screen /dev/ttyS# 115200''​ To figure out which ttyS device you should use, the command ''​dmesg | grep ttyS''​ can be helpful.
 +  - Power up the RB450G. ​ Immediately hit any key to go to the bootloader menu:<​code>​
 +What do you want to configure?
 +  d - boot delay
 +  k - boot key
 +  s - serial console
 +  o - boot device
 +  u - cpu mode
 +  f - cpu frequency
 +  r - reset booter configuration
 +  e - format nand
 +  g - upgrade firmware
 +  i - board info
 +  p - boot protocol
 +  t - do memory testing
 +  x - exit setup</​code>​
 +  - Select ''​p - boot protocol''​ and then select ''​2 - dhcp protocol'',​ because bootp (default) does not support dynamic address.
 +  - Select ''​o - boot device''​ and then select ''​1 - boot Ethernet once, then NAND''​ to boot once from the network, and then boot from the nand after that.
 +  - Hit ''​x''​ to exit setup, the RB450G will reboot. ​ Let the bootloader menu time out, and it should get an address via DHCP and then load the netboot image from your desktop computer. ​ After a minute or so, you should be able to hit <​enter>​ and get to the OpenWRT prompt.
 +==== Install the OpenWRT distribution ====
 +  - Don't bother configuring anything while in netboot. ​ Any changes you make won't be written back to the original image, so they'​ll all be lost when you reboot anyway.
 +  - You can disconnect the ethernet connection between your RB450G and your desktop system but  **Do not disconnect the serial connection.**.
 +  - Now you'll need to establish a connection between the RB450G and the internet so that it can download the OpenWRT packages it needs for installation. ​ Since personal LANs vary so much, I will leave this as an exercise to the reader (on my setup I chose to provide internet through the same desktop used to netboot it).
 +    * Use Eth0/PoE port to connect the RB450G to your local LAN because the netboot image will only have this port with a dynamic DHCP config. All other ports are static to,​ so they will require further configuration changes which are pointless at this stage given that anything you do to your system now will not be persisted;
 +    * You may need to change the dns nameserver by editing the file ''/​etc/​resolv.conf''​ (''​vi /​etc/​resolv.conf''​). Replace with or any other public dns server. ''​rm /​etc/​resolv.conf;​ echo nameserver > /​etc/​resolv.conf''​ will do it.
 +    * Issue the command ''/​etc/​init.d/​network restart''​ so all configuration changes are reloaded and applied;
 +    * Try ''​ping''​ and see if it works;
 +    * If networking is not okay, try editing ''/​etc/​config/​network''​ to your needs and remember to ''/​etc/​init.d/​network restart''​ after you make any changes;
 +  - There is a small quirk now, you'll have to edit wget2nand to download the right rootfs, in our case it is the DefaultNoWifi one.  So ''​sed -i '​s/​openwrt-ar71xx-mikrotik-rootfs.tar.gz/​openwrt-ar71xx-mikrotik-DefaultNoWifi-rootfs.tar.gz/​g'​ $(which wget2nand)''​ will do it.
 +  - Once the internet connection is established,​ use the ''​wget2nand''​ script to install OpenWRT into the flash of the RB450G: ''​wget2nand http://​​barrier_breaker/​14.07/​ar71xx/​mikrotik''​.
 +  - Once ''​wget2nand''​ finishes, you can reboot the router. ​ This time, the router should boot from flash (since we chose try ethernet once and then nand) and give you a working OpenWRT installation that you can configure as you like.
 +===== Hardware =====
 +^ CPU       ^ Ram     ^ Flash   ^ Network ​  ^ Gigabit ​  ^ USB   ^ Serial ​  ^ JTag             ^
 +| Atheros ​  | 256MB   | 512MB   | 5x1       | Yes       | No    | Yes      | <​del>​Yes</​del> ​  |
 +[[http://​​RB450G|Official Specification for Microtik RouterBoard 450G ]]
 +==== Info ====
 +| **Architecture:​** ​    | MIPS                        |
 +| **Vendor:​** ​          | Atheros ​                    |
 +| **Bootloader:​** ​      | RouterBoot ​                 |
 +| **System-On-Chip:​** ​  | Atheros (AR7161) MIPS 24K   |
 +| **CPU Speed:​** ​       | 680Mhz (Max 800Mhz) ​        |
 +| **Flash-Chip:​** ​      | Hynix NAND 512MiB 3,3V 8-bit (HY27UF082G2A,​ HY27UT084G2A) or Samsung 4Gibit (K9F4G08U0B-PIB0) |
 +| **Flash size:​** ​      | 512 MiB                            |
 +| **RAM:​** ​             | 256 MiB DDR                        |
 +| **Boot Flash:​** ​      | PMC Pm25LV512 512Kbit 3.0V         |
 +| **Wireless:​** ​        | No extension ports                 |
 +| **Switch:​** ​          | Atheros AR8316 ​                    |
 +| **CPLD:​** ​            | Xilinx XC9536XL ​                   |
 +| **Ethernet ports:​** ​  | 1+4 Gbit                           |
 +| **Storage:​** ​         | MicroSD ​                           |
 +| **USB:​** ​             | No                                 |
 +| **Extras:​** ​          | Beeper ​                            |
 +| **Serial:​** ​          | [[#​Serial|Yes]] (Standard RS232) ​  |
 +| **JTAG:​** ​            | [[#​JTAG|Yes]] (But no pins)        |
 +  * Some information about Atheros AR8316 network Switch capabilities is available on the [[http://​​wiki/​Switch_Chip_Features|MikroTik Wiki]]
 +  * CPU can be overclocked to 800Mhz from firmware (bootloader)
 +  * :!: **Warning:​** Unit uses a proprietary max. 28V PoE (Power over Ethernet), the RB450G **don'​t work with standard 48V PoE** solutions !!! 
 +===== Photos =====
 +Schematic Component layout with naming is in [[http://​​pdf/​78/​rb450GmA.pdf|RB450G Quick Guide]]
 +===== Serial =====
 +RB450G have standard RS232 connector, work with simple null modem cable. Testing with standard port in PC.
 +Connection use 1150008n, with hardware flow control (handshaking).
 +Serial connection is last resort for bootloare RouterBOOT update with XMODEM [[http://​​wiki/​Manual:​Bootloader_upgrade|Microtik Manual:​Bootloader upgrade]].
 +===== JTAG =====
 +**JTag port is present on board, but pins are not soldered and there is no empty to solder in pins holes.**
 +Another product from Microtik RB443 use this JTAG configuration:​
 +     CPU JTAG in RB433 includes this 7 pins.
 +        7    6    5    4   ​3 ​  ​2 ​   1
 +      TRST  TDI  TDO  TMS  X  TCK  GND
 +How to connect to JTAG interface, and how to reflash the device with [[http://​​tools/​oem/​jtag/​|JTAG tools]]
 +See [[doc:​hardware:​port.jtag]] for more JTAG details.
 +===== MicroSD Card Slot =====
 +The MicroSD slot needs the ''​kmod-mmc'',​ ''​kmod-mmc-over-gpio'',​ and ''​kmod-mmc-spi''​ kernel module packages. ​ The driver configuration is:<​code>​
 +DI_pin 1
 +DO_pin 3
 +CLK_pin 4
 +CS_pin 7</​code>​. ​ The SD card device will be called ''/​dev/​mmcblk0'',​ with the first partition called ''/​dev/​mmcblk0p1''​. ​ You will need to format the card from the command line before you can use it.  For more information about setting up the card as a permanently-mounted filesystem, the [[doc/​howto/​|USB storage]] instructions can be adapted, using ''/​dev/​mmcblk0*''​ as the device names.
 +Some users of the RB450G state that the MicroSD slot is not designed for regular push/pull operations and microSD cards are now fit there well, plus the microSD slot is on the opposite side of the board and is not accessible in many RB450G enclosures designed originally for older RB450 model (no access hole), so when using an old RB450 enclosure you need to fully disassemble the unit to fix / add / remove the microSD card.
 +[[http://​​wiki/​Supported_Hardware#​Memory_cards|List of microSD cards know to work on RB450G with original Microtik RouterOS]]. ​ Note that since RouterOS uses a different kernel version and MMC driver, cards that don't work with RouterOS may work with OpenWRT, and vice versa.
 +===== Specific Configuration =====
 +==== Switch Ports (for VLANs) ====
 +FIXME Verify and make a nice table after similar to one in [[:​toh:​ubiquiti/​|RouterStation Pro]]
 +From [[https://​​viewtopic.php?​pid=104521#​p104521|AR8316 Switch Support]] forum
 +The AR7161 has two Ethernet controllers,​ therefore there are two interfaces, eth0 and eth1. one of these is the wan port, the other is the connection to the CPU port of the switch. The AR8316 provides the physical ports for both controllers,​ but they are separated internally.
 +On the RB450G, it looks like this:
 +    +-----------+ ​      ​+-----------+
 +    |           | eth0  |           |
 +    |           ​+-------+----------5+-Eth1 (POE)
 +    |           ​| ​      ​| ​          |
 +    |  AR7161 ​  ​| ​      | AR8316 +-1+-Eth2
 +    |           | eth1  |        +-4+-Eth3
 +    |           ​+-------+0-------+-3+-Eth4
 +    |           ​| ​      ​| ​       +-2+-Eth5
 +    +-----------+ ​      ​+-----------+
 +===== Buttons and Jumpers =====
 +  * **BIOS Reset Button** between Power and LEDs – loads backup **RouterBOOT Loader Firmware**. Just hold button after power unit on.
 +  * **ROS Reset Jumper** – Inside unit (on board) in corner market **reset**, originally used in RouterOS to reset (load) RouterOS software to defaults. ​
 +  * Note: On board is also one classic Jumper - just another power connection.
 +===== Tags =====
 +{{tag>​GigabitEthernet 256RAM devBoard}}