The good news: Attitude Adjustment 12.09 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.
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 computer that can build OpenWRT from source. You're also going to need a desktop computer that has a working serial port and an ethernet interface. This computer will also need to have:
- some kind of serial terminal software
- a DHCP server; this documentation will use
- a TFTP server; also
The following instructions illustrate installing Attitude Adjustment 12.09, but should be easily adaptable to other versions.
- You could configure the system entirely by hand, but it's easier to just start with an existing configuration that works for the RB450G.
- here is a smaller configuration made for Backfire (r24027). It will not take as long to compile as the default OpenWRT configuration, and works fine for Attitude Adjustment 12.09-rc1.
- Configure the system to use a ramdisk:
Target Images ---> [*] ramdisk
- The build will create the file
bin/ar71xx/openwrt-ar71xx-nand-vmlinux-initramfs-lzma.elf. This is the kernel+ramdisk that the RB450G will use to boot.
TODO: is it possible to directly combine a kernel and the rootfs provided by OpenWRT? This would get around needing to build an image from source.
- 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
- Set up
dnsmasqon the desktop computer.
- The RB450G's bootloader apparently ignores all DHCP options, such as
bootp-filename, normally used to instruct a netboot device how to find its image. So you need to set up
dnsmasqwith specific options to work around this quirk.
- Copy the file
openwrt-ar71xx-nand-vmlinux-initramfs-lzma.elffrom your OpenWRT build tree to a clean directory like
~/tftproot/. Rename the file to
sudo dnsmasq -a 10.2.3.4 -z -d -p 0 -F 10.2.3.5,10.2.3.6 –enable-tftp –tftp-root=~/tftproot/ –dhcp-boot=~/tftproot/vmlinux.
dnsmasqshould 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 null modem cable. Start your terminal server program. The RB450G serial interface uses 8N1 with hardware flow control at 115200 bps.
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:
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
o - boot deviceand then select
1to boot once from the network, and then boot from the nand after that. Hit
xto 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.
- 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. Do not disconnect the serial connection.
- Wipe out any network self-configuration that the RB450 has done:
ifconfig eth0 downand
ifconfig br-lan down. While not absolutely necessary, I suggest doing this so that anything that the RB450G has done on its own doesn't conflict with your existing LAN setup.
- 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.
- 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
vi /etc/resolv.conf). Replace 127.0.0.1 with 22.214.171.124 or any other public dns server. For vi beginners: once the file is open type
*ito enter editing mode and when done type
- Issue the command
/etc/init.d/network restartso all configuration changes are reloaded and applied;
ping bing.comand see if it works;
- If networking is not okay, try editing
/etc/config/networkto your needs and remember to
/etc/init.d/network restartafter you make any changes;
- Once the internet connection is established, use the
wget2nandscript to install OpenWRT into the flash of the RB450G:
wget2nandfinishes, you can reboot the router. This time, the router should boot from flash and give you a working OpenWRT installation that you can configure as you like.
|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|
|Serial: Yes (Standard RS232)|
|JTAG: Yes (But no pins)|
- Some information about Atheros AR8316 network Switch capabilities is available on the 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 !!!
Schematic Component layout with naming is in RB450G Quick Guide
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 Microtik Manual:Bootloader upgrade.
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 JTAG tools
See port.jtag for more JTAG details.
The MicroSD slot needs the
kmod-mmc-spi kernel module packages. The driver configuration is:
DI_pin 1 DO_pin 3 CLK_pin 4 CS_pin 7. 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 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.
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.
Verify and make a nice table after similar to one in RouterStation Pro
From 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 +-----------+ +-----------+
- 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.
toh/mikrotik/rb450g.txt · Last modified: 2014/05/28 13:38 by lisicky