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://​downloads.openwrt.org/​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 192.168.1.1,​ or anything in the range of IPs used in your local LAN) to the ethernet adapter on your desktop computer. ​ Here I'll use ''​10.2.3.4''​.

+

- 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).

- ''​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>​

- 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 192.168.1.1,​ 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 127.0.0.1 with 8.8.8.8 or any other public dns server. ''​rm /​etc/​resolv.conf;​ echo nameserver 8.8.8.8 > /​etc/​resolv.conf''​ will do it.

+

* Issue the command ''/​etc/​init.d/​network restart''​ so all configuration changes are reloaded and applied;

+

* Try ''​ping openwrt.org''​ 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://​downloads.openwrt.org/​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.

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|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.mikrotik.com/​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|RouterStation Pro]]

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.