RouterTech Firmware v2.2
Author: RouterTech Development Team (thechief, biro)
Version: v2.2 (20070227)
This firmware supports the following routers and their clones provided by different companies and MAY support others too - check the docs or ask us in the forums: SART2/SWAMR/SWART2/GWART2/Solwise/ADDON/Roper FLYNET/ASUS AAM6020VI-T4
WARNING: for those with wireless routers, there are new batches of AR7WRD routers that do not use the TNETW1130 wireless chip. This firmware does NOT support those routers (e.g., the TNETW1350A is not supported). If you have a wireless router, you must first check that your router has the TNETW1130 wireless chip - e.g., by running "cat /proc/interrupts" at a telnet/ssh login prompt - if you do not see TNETW1130 in the output, then you must stop right there, otherwise, your router WILL become a brick. The firmware for the wireless routers supports only wireless routers that use the TNETW1130 chip.
** NEW **
We recommend you check to see if your router is compatible BEFORE YOU UPGRADE by using the Router Upgrade Check utility here - viewtopic.php?t=1062
This firmware has been built for the family of routers based on the TI AR7WRD and AR7RD platforms (specifics shown in the compatibility section of this release and in the documentation provided with the firmware). Reading ALL the documentation below, and ALL the documentation included with this firmware is essential to ensure successful flashing. Support for this firmware can only be obtained in the firmware forum of this site. Bug reports should be filed in the same forum, with a prefix to the the thread title of [BUG]. This will allow the development team to read, discuss and fix the bug before updating the firmware and closing the thread.
While we provide full support for our firmwares and will help out with issues or problems in any way we can we will not be held liable in any way in the unlikely event of damage occuring to your router. You are advised to read all documentation including that related to recovery of routers after a failed flash to ensure the highest chance of a successful upgrade and the smallest chance of problems.
Which version for me?
To determine which version of firmware you need (in addition to checking your router model) you need to find out if you use the adam2 bootloader or psp. You don't need to know what these mean, simply follow the instructions below.
Note: with respect to some routers (e.g., the ADDON GWAR3000) the manufacturers alternate between the psp boot loader and the Adam2 boot loader. So it is absolutely essential that everybody (regardless of the router that they have) verifies their routers' bootloaders before trying anything.
In order to ascertain the bootloader that your router is using, you should telnet or ssh to the router, and run the command:
If the "bootloaderVersion" is 1.2.x (or 1.3.x or 1.4.x), AND the "PROMPT" contains something like "psbl" then your router is using the PSP bootloader, and you should use the firmware with "pspboot" in the filename.
Code: Select all
By the same token, if your "bootloaderVersion" is something like "0.22.x", AND the "PROMPT" contains something like "Adam2", then your router is using the Adam2 bootloader, and you should use the firmware with "adam2" in the filename.
WARNING: if the output of the "cat /proc/ticfg/env" command includes anything like "WLAN_EEPROM0", "WLAN_EEPROM1", etc., then that is a sure sign that your router has an incompatible wireless chip, and you should NOT try putting this firmware on your router. Trying to do so WILL brick your router.
Single or combined image?
Firmwares for the AR7* platform can come in a single image that combines the config, the kernel and the filesystem into one. This is makes it very easy to upgrade the firmwares. Routers using the PSPboot boot loader mostly use combined firmware images.
But the AR7* firmwares can also come in a package that separates the config, the kernel, and the filesystem. This is typically so for ADAM2-based AR7WRD routers. The issue is not so clear however for routers using the ADAM2 bootloader, since some routers require a combined firmware image, while some require separate images (i.e., a separate config file, kernel, and filesystem). Sometimes, the same router from the same manufacturer may require different kinds of firmware images, depending on the firmware version that comes with that router.
The bottom line is that, for ADAM2 routers, you need to ascertain clearly from your router's documentation whether it stipulates the use of separate images or a single (combined) image. If your router's documentation stipulates the use of separate images but the RT release for your router only has a single image, then do NOT use the single image. Rather, you should let us know.
A few more words on versions...
It has come to our attention that due to incorrect labelling on some Safecom routers people without wireless are attempting to load the routertech firmware for wireless routers and encountering problems. This is not a fault with the firmware just that the labelling on the router is incorrect.
Please then note that the SWART2-54125 / GWART2-54125 are the WIRELESS versions and the SART2-4115 / GART2-4115 DON'T have wireless but may be wrongly labelled (By SC ) as SWART2-54125 / GWART2-54125. Note the extra W. Please check to see if your router actually has wireless before believing that you need the routertech firmware for wireless routers.
We have had many questions about version names from ebuyer. It is therefore worth mentioning that the G****** are the Ebuyer GURU branded versions of the S****** from Safecom.
BEFORE you try upgrading to this firmware, you would be well advised to take the following precautions:
1A. For routers using the PSP bootloder run the "cat /proc/ticfg/env" command (as above) to check that the environment variable called "IPA" is set to 192.168.1.1 - and, if not, then set it to 192.168.1.1 (or to whatever you use normally). This is how to do it (from the router's shell command line):
1B. For routers using the Adam2 bootloder run the "cat /proc/sys/dev/adam2/environment" command to check that the environment variable called "my_ipaddress" is set to 192.168.1.1 - and, if not, then set it to 192.168.1.1 (or to whatever you use normally). This is how to do it (from the router's shell command line):
Code: Select all
echo IPA 192.168.1.1 > /proc/ticfg/env
Note that some old firmware for Adam2-based routers do not have the "/proc/sys/dev/adam2/environment" file. In such cases, you must use the "/proc/ticfg/env" file.
Code: Select all
echo my_ipaddress 192.168.1.1 > /proc/sys/dev/adam2/environment
2. Get and install a copy of the PCTool (not to make any changes but just connect) to the router with it, so that you can get a 'feel' for the timing etc. You will need the PCTool to recover the router if the firmware upgrade process goes wrong, and "bricks" your router.
You can get the PCTool here: viewtopic.php?t=335
It is best to have at least two different versions of the pctool.
3. Save a copy of your original environment variables (i.e., the contents of "/proc/ticfg/env" (or "/proc/sys/dev/adam2/environment" for Adam2)). If your router becomes a brick, you may need to restore the original environment variables.
4. Read this thread: viewtopic.php?t=961
And keep a record of all the information referred to there.
5. Read ALL the documentation supplied in the firmware zip package that you have downloaded. The correct starting point is the "index.html" file in the package.
DO NOT SKIP ANY OF THE 5 STEPS JUST OUTLINED ABOVE - OTHERWISE, YOU ARE ON YOUR OWN!
If something goes wrong...
Sometimes upgrades can go wrong and your router becomes a "brick". If this occurs you will need to attempt a rescue. See the details here:
The tag-lines on the firmwares are not definitive with respect to the routers they can be used on by any means. To be sure check your router make, check the docs in each firmware package, check to see whether your router has a PSP or Adam2 bootloader, check that the "ProductID" is either "AR7RD" or "AR7WRD" (when you run the command "cat /proc/ticfg/env" or "cat /proc/sys/dev/adam2/environment" as above), and, if in any doubt ask in our forums BEFORE you try anything - we are here to help!
Available file format
As use of the RouterTech firmware increases so does the number of routers our firmware supports. For this reason this release has specifically separated out downloads for different types of router. This should enable you to see much easier which file is right for you. If you are unsure, our support team is here to help - ask in our firmware forum.
version 2.2 (20070227) (27th February 2007) - changes (compared with the previous (v2.1) firmware)
- 1. Removed stray '`' character on "home" page
2. Interactions with the bootloader environment for Adam2-based routers now operate directly on the Adam2 environment "file" (/proc/sys/dev/adam2/environment) instead of /proc/ticfg/env
3. Works around problems with reading MAC addresses by saving them directly into files in /var/tmp/ and then reading those. This makes the issue of disappearing /proc/ticfg/env files less of a problem for Adam2-based routers
4. User supplied DNS now works (you have to disable "Use Peer DNS" on the ISP connection page)
5. Default date/time is set on boot-up to the date/time that the firmware was built
6. Fixed bug whereby the wrong WEP key is displayed on the "home" page
7. Some memory optimisations should make everything work smoother
8. New NAT optimisations should result in better P2P performance
9. New commands introduced: "getenv" and "setenv" - there is no longer any need to manipulate the bootloader environment files directly: use these commands instead (see rt_commands.html)
10. New scripts: "routertech_start_inits.sh" and "routertech_misc_inits.sh", which are called during init (they should NOT be called directly)
11. Wireless Production 1 has been added to the "wireless" section
12. New support for routers with ATMEL flash chips (e.g., DLink G604T/G624T) - note that these DLinks use a different and incompatible switch (this means that you will be unable to use the Ethernet Switch Configuration (G604T), while with the G624T, wireless clients within your LAN will be unable to communicate with clients using a wired connection, inside your LAN)
13. Display bugs for pppoe and static connections fixed
14. Facility to choose between dsp versions (for wireless routers only (by setting the appropriate value for a new bootloader environment variable, "dsp_ver")) - e.g., running: setenv dsp_ver dsp5A && /sbin/reboot would select DSP v5, AnnexA. Choices are between dsp5A, dsp62A, dsp71A, and dsp6B (i.e., dsp v6, AnnexB - note that the AnnexB selection is untested). Note also that all these are case-sensitive. The default is dsp62A.
15. Facility to choose between atm driver versions (by setting the appropriate value for a new bootloader environment variable, "atm_ver") - e.g., running: setenv atm_ver dsp5A && /sbin/reboot would select the "tiatm.o" driver, version 5. Choices are between dsp5A and dsp62A. Note also that all these are case-sensitive. The default is dsp62A.
16. Facility to choose between different versions of the LED configuration file. - e.g., running: setenv led_conf led.sar600 && /sbin/reboot would select the LED file for the Solwse/Axtech 600E* series. Choices are between led.g604t, led.generic, led.sar600, and led.adsl2mue. The default is led.generic.
17. New command: "wakelan" - to wake up PCs on a LAN
18. Enhancement to the "Run Command" function - you can now click on a "Command List" link to obtain help about the RouterTech commands (see rt_commands.html)
19. New scripts: "cron_disable.sh" (to disable cron) and "cron_enable.sh" (to re-enable cron). You should only run cron_disable.sh if you won't ever need to setup "cron" jobs. This should free up some memory, to be used for other things. Note however that there are many things that depend on "cron" (e.g., chksync), so you should not disable cron unless you are really sure that you want to lose all that functionality.
20. New command: "tinyproxy" - web proxy and URL filter (the URLs to be blocked must be put in /var/tmp/tinyproxy.filter, before starting tinyproxy)
21. Updated the code base in line with the latest Acorp patches.
The non-wireless versions (with only 8mb RAM) can sometimes struggle in low memory situations and produce a sluggish web interface. In such cases, memory can be freed up by disabling unneeded features. Prime candidates are upnp, snmp, and IP Accounting, and by running the memory optiomiser periodically (e.g., via a "cron" job). The crontab file is "/var/spool/cron/crontabs/root". A sample can be found in the package for each firmware. Running the memory optimiser periodically is easy to do now - see the AUTOEXEC example for memchk.sh in rt_commands.html.
The links to our firmware require you to be registered and logged into the site to see and use them. This is to make sure we can provide you with support easily if you need it. When logged in they appear below this post.
After upgrading to this firmware, you MUST reset your router to factory defaults. See upgrade.html in the firmware distribution ZIP file for further information.
As usual sourcecode for this latest release is available under the GPL on lara for budding developers. Grab your copy here