Tomato ND USB Mod

Discussion in 'Tomato Firmware' started by teddy_bear, Dec 17, 2008.

  1. teddy_bear

    teddy_bear Network Guru Member

    Unfortunately, the official Tomato does not include USB support, and for that only reason I was not using it on my Asus WL-520gu that has the USB port. Otherwise I love Tomato :smile:!

    The only mod I found with USB was TrzepakoTomato - but it is still at version 21, does not include printer support and Ext3 filesystem support, and still has some modules I have no use for, leaving no JFFS space. So I decided to go ahead and make a new mod to suit my needs.

    I would like to thank other open source developers who made their code available to the community. This mod includes various patches and code fragments from Oleg's Asus firmware, project (backport of USB 2.0 driver from kernel 2.6, and many other patches and fixes), OpenWRT and DD-WRT projects.

    Releases, detailed description of various editions available, and useful information are now tracked at the Tomato USB web site.

    NOTE: If you're looking for Tomato modification with USB support for newer routers - Asus RT-N16, RT-N12, Linksys WRT160Nv3, Netgear WNR3500L etc - please take a look at the "Tomato based on kernel 2.6" thread.

    Here's the list of changes to the official Tomato ND:
    • Support for USB 1.1 (OHCI and UHCI) and USB 2.0, configurable via Tomato GUI.
    • USB storage (Ext2/Ext3, FAT/FAT32 and FUSE filesystems) and USB printing support. Starting from v36, full read/write NTFS support is included in Extras build, and can be added to other builds by installing Optware ntfs-3g package.
    • Auto-mounting for USB drives (added in v05). When this feature is activated in the GUI, and USB drive is plugged in, all mountable partitions will be automatically mounted to a directory under /mnt. If you want to override default mount point, create /etc/fstab file and specify your desired mount points there. Save it to nvram: "nvram setfile2nvram /etc/fstab", so it will survive restarts. This file will be used during auto-mount, or when you execute "mount -a" command. You can also mount your partition manually in the Init, Wanup, or Hotplug script, i.e.:
      mount -o noatime,nodev /dev/discs/disc0/part1 /opt.
      If you mount the partition manually, it will not be re-mounted to a default mount point.
    • Support for /ets/fstab, and mounting by label and UUID.
    • Network File Sharing using built-in Samba server (kernel 2.4-based builds include Samba 2.0.10, builds based on kernel 2.6 include Samba 3). Please check this post if you're experiencing problems copying files to Samba shares, and this post if you have issues with authenticated access to Samba shares.
    • Printer server (p910nd) is included and started automatically if you enable printing support. Bidirectional copying can be disabled via GUI if it causes problems with your printer. Only one instance of printer server is started automatically, and listens on port 9100. If you need to support more than 1 printer, add commands to run additional instances of p910nd to your startup script. Follow these directions to set up your printer in Windows.
    • Built-in FTP server daemon (vsftpd) with GUI.
    • USB Hotplug script - it can be useful for configuring USB devices after connecting them to the router or on boot-up, for example loading firmware into HP1018/1020 or other similar HP printers (there're some posts on page 11 of this thread and here with more details about HP1018 printer. You can download a firmware file for your HP printer from here).
    • scsi-stop and scsi-start utilities to spin down and restart some USB HDDs (see general description here and Tomato working script here).
    • Linux kernel is updated to the latest in 2.4.x series - 2.4.37. Builds based on kernel 2.6 use kernel
    • New toolchain to build the firmware: binutils 2.19.1, gcc 3.4.6 (for kernel 2.4), gcc 4.1.2 (for userspace apps and kernel 2.6), uClibc
    • Added Wireless-N mode support (single 2.4GHz band only for now).
    • Web Usage Monitoring (web sites and searches) based on the kernel module from Gargoyle project.
    • Fixed slow running clock problem on Asus WL-520GU (This fix is included into official Tomato releases starting from Tomato 1.24. In build 37 or later of this mod one extra reboot after flashing is no longer needed for this fix to take an effect).
    • Support for Asus WL500W and D-Link DIR-320.
    • Fixed WLAN LED on Asus WL-520GU, SES button and WLAN LED on Asus WL500gP v1, WL500gP v2 and Buffalo WBR2-G54 (these fixes are included into official Tomato releases starting from Tomato 1.24).
    • Added CGI scripts support to HTTP daemon - you can place your CGI scripts into "/www/ext/cgi-bin" folder, and they will be executed when you access them via http://<router_ip>/ext/cgi-bin/my_script_name.
    • Added Web GUI page to execute system shell commands.
    • Included SpeedMod by Rodney Chua.
    • Upgraded Broadcom Wireless driver to version (in kernel 2.4 builds) or (kernel 2.6 builds).
    • Use kernel driver for PPTP and L2TP connections to improve speed and reduce CPU load, replaced pptp-client with accel-pptp.
    • Automatically load network routing table supplied via DHCP from ISP.
    • Additional GUI settings for MiniUPnPd daemon with NAT-PMP support. UPnP is disabled by default.
    • CIFS in kernel 2.4 builds is updated to version 1.49 backported from 2.6 kernel which supports legacy servers and NAS disks.
    • Added new "Regulatory Mode" setting (off|g|h), "Country/Region" setting and "Bluetooth Coexistence" mode to "Advanced -> Wireless".
    • Added wireless auto channel selection.
    • Added display of current wireless link rates.
    • Changed to use passive mode for wireless scan (generally should pick up more APs).
    • Replaced JFFS2 filesystem driver by JFFS ver 1.3 from ray123 to provide more available JFFS space (in kernel 2.4 based builds).
    • Replaced ramfs by tmpfs.
    • Replaced the Linksys igmp daemon with the igmpproxy.
    • Updated software: iptables 1.3.8, MiniUPnPd 1.4 (20100511), Dnsmasq 2.55, Busybox 1.16.1, bridge-utils 1.0.6, pppd 2.4.5, GNU Zebra 0.95.
    Please check this post for detailed howtos on installing and configuring Tomato. With USB enabled you can install Optware and additional software packages. Follow instructions in this post, and in DD-WRT Optware Wiki to install Optware (but do not modify search PATH or LD_LIBRARY_PATH as dd-wrt wiki says). Standard builds of this firmware do not include tools to partition USB drives, or to format them using Ext2/Ext3 Linux native filesystems. To do that you either need a Linux box, or you can use the set of utilities prepared by ray123 and posted here. Starting from v 20, the set of Ext2/Ext3 filesystem utilities is also included into the "Extras" build.

    You may also want to check out the custom "Tomato USB" theme made by another forum member Absolon specifically for the USB mod (this theme is included into the "Extras" build starting from v21), and Asus theme made by dwoz.

    This mod is for ND version only! I do not believe there are many routers with USB that can't run ND anyway. To check if your router can run ND build, execute the "nvram get wl0_corerev" command (without quotes). If it shows 5 or more, you should be able to use ND (if 9 or more - you need to use ND).

    If you enjoy this mod, and would like to thank me for all the time I spent working on it, you can make a PayPal donation:


    Thanks to all who donated - your support and appreciation means a lot to me!

    This mod only includes support for USB storage and printing, and some general improvements. If anyone else is willing to implement support for serial devices, webcams and USB modems, booting from USB drives etc etc, test and troubleshoot the changes, and make sure the image still fits in 4MB flash - you are welcome to do that. It could be a separate mod, or we can just release it as an update to this one after the new stuff is tested. Unfortunately I don't have neither time nor motivation to work on anything else other than the storage and printing support. Currently there's one package made by ray123 for using a webcam on a Tomato USB router. I have not tried to use it, so could not say how good it works. Read ray123's post and README for details.

    Attached Files:

  2. mactogo

    mactogo Addicted to LI Member

    Many thanks for sharing this! I prefer tomato firmware over other firmware if it wasn't for the lack of usb support/development. I was also monitoring the Trzepako thread but it hasn't been getting much attention compared to other tomato mods. Sadly, I just recently switched to ddwrt since usb development seems to be more active over there. Your post may be just the thing for me to flash my WL500gp back to trusty tomato!
  3. CBR900

    CBR900 Network Guru Member

    @ teddy_bear

    thanks alot for this mod

    How fast is the transfer of files to/from usb memory?

    As I am new to linux can you right detailed steps to get it work on my asus WL500gp please
  4. SgtPepperKSU

    SgtPepperKSU Network Guru Member

    Might I suggest that you add your changes to the Git repository? It seems like a prime candidate, and one that others may want to merge into builds.
    If you do, I recommend creating (at least) two branches - one for just USB changes (a "feature" branch), and one for all of your other changes that also merges your USB branch (a "release" branch).
    This would also allow you to point people to there to get source tarballs and source patches, since, as you say, you don't host your own site.
  5. teddy_bear

    teddy_bear Network Guru Member

    Yep... That's a great idea! I'll probably work on this over the weekend - it seems that I'll need to learn more for this than I needed to make the actual changes... Starting from what the "tarball" is other than any TAR archive ;)...
  6. SgtPepperKSU

    SgtPepperKSU Network Guru Member

    I posted a brief overview of commands needed here, but the git user manual and general tutorial are most certainly more comprehesive.

    That isn't the first time that my use of the term "tarball" has caused confusion. I guess it may have fallen out of use, and I should stop using it. :wink: But, I was just referring to a gzipped tar archive (typically .tar.gz or .tgz).
  7. eRd12

    eRd12 LI Guru Member

  8. teddy_bear

    teddy_bear Network Guru Member

    I'd suggest you try... The tutorial from OpenWRT is mostly about how to update firmware on the printer itself. If your printer works now with Oleg's firmware, it should work with this mod as well.
    Of course there's no guarantee, I don't have hp1018 and can't test it for you...
  9. stud.beefpile

    stud.beefpile Addicted to LI Member

    I just wanted to say a huge "THANK YOU". . .I'm really looking forward to putting this through its paces on my WL-500gPv1 and WL-520gU. . .AWESOME!!!
  10. voxabox

    voxabox LI Guru Member

    if someone has successfully used this firmware with an usb EVDO modem, please do tell:biggrin:
    I know someone who wishes to do so (instead of buying the overprice EVDO cradlepoint router)
  11. teddy_bear

    teddy_bear Network Guru Member

    I don't think so... Storage and printing is one thing, but modems might be different. There's another project that adds support for some USB modems to Asus WL500 family firmware - you can try to look there. I don't think there was another attempt so far to implement this.
  12. falcon5

    falcon5 Guest

    Any chance to include some samba to let a storage device work with windows file-sharing?
  13. Mastec

    Mastec Network Guru Member

    Just out of curiosity, will this work with the WL-500gPv2 routers? I know with DD-WRT the USB firmware works with pretty much all ASUS routers except the v2
  14. teddy_bear

    teddy_bear Network Guru Member

    I don't want to include Samba into the firmware as not everyone needs it. People who don't need Samba may want to use the JFFS space left (440K on 4MB flash) for something else. However, you can install Optware on your USB drive after you mount it to the router - use DD-WRT instructions for installing Optware on DD-WRT. I have Optware installed on my USB flash drive which I used to install Asterisk, and it works just fine. It makes sense to install Samba package there since you only need Samba if the drive is attached.

    I see no reason for it not to work. But there's no way to know for sure until someone with this router tries it :)...
  15. teddy_bear

    teddy_bear Network Guru Member

    I made a few minor changes, and updated the links in the 1st post:
    • added WLAN LED fix for WL-520GU;
    • allowed changing USB settings without reboot;
    • since the new l7 RTP filter is officialy updated on l7-filter project, I removed experimental rtp-2 filter, and replaced the rtp pattern by the new official one;
    • cleaned-up USB support code (no functional effect).
  16. Mastec

    Mastec Network Guru Member

    Just loaded it onto my WL-500gPv2 and it works like a charm.

    Thank You very much for your work.
  17. stud.beefpile

    stud.beefpile Addicted to LI Member

    Would it be possible to get Samba rolled in (and with GUI configuration) for those of us with 8MBs of flash? I've tried running through the optware walk-through at DD-WRT, but with no success.

    If not, no big deal. . .
  18. CBR900

    CBR900 Network Guru Member

  19. pitabread55

    pitabread55 Addicted to LI Member

    And another thank you here. Had things flashed and working in only a few minutes.

    One foolish question. I have a WL-520gU which only has 1 USB port. Could I hang USB hub off the router to allow more than 1 USB device to be connected?
  20. teddy_bear

    teddy_bear Network Guru Member

    That's what I do with my WL-520gu. I use cheap non-powered USB mini-hub with printer and USB flash drive connected to it - and 3 more ports still available if needed ;)...
  21. teddy_bear

    teddy_bear Network Guru Member

    I'm considering this... However, it's a lot more work compare to what's already been done in this mod, and I'm not sure if I'll have enough time and courage to do it. Or maybe Jon will implement it sooner in one of his next official Tomato releases :).

    Unrelated question to everyone... Does the WLAN (AIR) led work correctly on your router with Tomato? If it doesn't, please report here. I applied a solutions for this for WL-520gu as this is the only router I can test it on, but if other devices have the same problem, we can try to fix it as well the same way.
  22. pitabread55

    pitabread55 Addicted to LI Member

    OK, then the tough question :) Assuming I add the USB hub and some additional storage is there any way to use that as print spooling space?
  23. teddy_bear

    teddy_bear Network Guru Member

    Unfortunately no, as the p910nd is a non-spooling printer server primarily designed for diskless hosts, like routers... Check if you can get CAPS package installed if you really need spooling.
  24. pitabread55

    pitabread55 Addicted to LI Member

    Do you mean CUPS?
  25. teddy_bear

    teddy_bear Network Guru Member

    Yep... Sorry - typo.
  26. belm0

    belm0 Addicted to LI Member

    I really don't understand why the USB support isn't added to the main Tomato distribution.

    Anyway I've got a USB audio stick that I'd like to use in my router. I'll have to learn how to build this with a few more modules...
  27. SeeFool

    SeeFool Network Guru Member

    I am able to connect to my printer but how do I access the usb drive? I have both xp and vista. Thank you.
  28. teddy_bear

    teddy_bear Network Guru Member


    You only have access to the USB drive from the router - via Telnet or SSH session. If you want to access it from your network, you'll need to install Samba - that's why people're asking to build it into the firmware.

    You can probably install and use Samba following the DD-WRT Optware instructions - but I myself did not try to install Samba, so I couldn't confirm if it works or not with Tomato. I did install Asterisk this way to my USB flash drive though, and it works perfectly!
  29. SeeFool

    SeeFool Network Guru Member

    Thanks for the info; since I am not familiar with Telnet/SSH, or Samba, I just have to stick with print server only.
  30. mstombs

    mstombs Network Guru Member

    How about using winscp to access the USB drive using Tomato's ssh/scp server dropbear - this works fine to access /jffs or /var etc.
  31. hoogax

    hoogax Addicted to LI Member

    I just got an Asus WL-520gU router today and am wanting to set the usb port for for NAS, but mainly I'd like to be able to put music on the HD and then play it over the network on my ps3 through my home theater system. Is there any way to do this with your setup?

    I've yet to install Tomato on my router, and I'm really not familiar with Samba, so I'm hoping top figure out my best bet before I get started. Thanks.
  32. netsonic

    netsonic Addicted to LI Member

    Does ths Tomato 1.23 ND USB Mod support Asus WL-500W wireless router?
  33. teddy_bear

    teddy_bear Network Guru Member

    Unfortunately, you can't do that out-of-the-box with this mod. You'll need to install Samba to access your files over the network.

    What this mod does, it allows you to access USB drives from the router itself, and to use them for additional storage space - to install software (Samba is one example) etc. Stock Asus firmware on WL-520gu does not allow you to do that - it only uses USB for printer server. Besides, Tomato has more features than the stock firmware - the QoS alone is enough to upgrade (the stock QoS did not work for me at all).

    I think DD-WRT is getting closer to have Samba built-in - not yet but close. You may look at DD-WRT as well. I'm also considering to include Samba in USB mod, but haven't got around to work on it yet...

    Well, Tomato does not officially list this model as supported. But I see no reason why it won't work on it.

    Merry Christmas to everyone :) !
  34. hsyah

    hsyah Addicted to LI Member

    How to add openvpn ?
  35. senseGOOD

    senseGOOD Addicted to LI Member

    What a perfect Christmas present to us all. thx
  36. teddy_bear

    teddy_bear Network Guru Member


    I updated this mod (v.04 now) to include FTP server daemon (vsftpd) with GUI. Links to download are in the 1st post.

    It's not Samba, but it still allows you to access your mounted USB drives (or any other directory on the router - i.e. mounted CIFS or JFFS filesystems) from the LAN or WAN via FTP.

    The only other change in this build is updated kernel printer driver to include some fixes made by Asus.
  37. Mastec

    Mastec Network Guru Member

    EXCELLENT - You and Tomato kick butt
  38. erixlion

    erixlion Addicted to LI Member


    really nice! thanks!

    but what should I put in the area of

    Public Root Directory*
    Private Root Directory*
    Anonymous Root Directory*?

    IP address ? then how to setup in the computer side?

    another question, for enable USB function, should I really put a command line ´╝Ümount -o noatime,nodiratime /dev/discs/disc0/part1 /opt
    in the area of scripts(init)? or just enable it from the GUI of USB will be good enough?

    last question, someone said he can plug a flah drive or other usb storage into the USB port, but how to access to the storage from other computers that connected to this router?
    Thank! happy new year guys!
  39. labrugice

    labrugice Addicted to LI Member

    This is a great mod, thank you!

    Any chance of compiling it without the ND driver? My notebook cant connect with it :frown:

  40. trmfreitas

    trmfreitas Addicted to LI Member

    Tomato ND 1.23 USB

    Hi, I have a wl-520gu.
    With this firmware I was unable to associate a laptop with an
    Intel 2200bg card :(

    I flashed with Asus 3.0.2 firmware and it works fine.

    Any idea on how to have tomato, usb and intel2200?

  41. TVTV

    TVTV LI Guru Member

    You may need a USB build with old drivers, not the ND ones. :)
  42. trmfreitas

    trmfreitas Addicted to LI Member

    but my corerev is 13 (or 15, can't remember right now).
  43. spliff

    spliff LI Guru Member

    WL-520GU is the same as the Buffalo WHR-G125. It needs ND drivers.
  44. trmfreitas

    trmfreitas Addicted to LI Member

    The new driver that dd-wrt uses fixes this problem? (4.150xxx)

    Is the driver open source?
    Why can't tomato integrate the new driver?
    Kernel version? Why not migrate it too?
  45. teddy_bear

    teddy_bear Network Guru Member

    Have you tried to update the 2200 drivers on your notebook to the latest version from Intel? I don't know if that will help, but worth a try if you did not do it yet.
  46. teddy_bear

    teddy_bear Network Guru Member

    Are you sure you need a non-ND version? What router do you have, and what "nvram show | grep corerev" shows? Have you tried to install non-ND Tomato 1.23 to verify that your notebook connects to it normally?

    Maybe the problem is on the notebook side - you may want to update the drivers there to the latest version, and play with some settings (like b/g/mixed mode, security settings etc). Also, read some posts here and in other threads if you have Intel 2200BG wireless card in your notebook...
  47. trmfreitas

    trmfreitas Addicted to LI Member

    if you check for the intel "new" version there isn't any update to 2200bg drivers since long time ago.

    Anyway, yes I did "update" the drivers, I tried using no security and WEP 128 bits, tried setting the wlan card to b mode only and nothing happens.

    I read here on linksysinfo and googled about it and there is not much info and as I said on my first post I am using a wl-520gu that supposedly needs the ND version.

    I am running a core rev 13 (or 15 ... can't remember).

    I also tried clearing nvram and reconfiguring. Nothing changed.

    Also changed channels.

    What happens:
    intel 2200bg is impossible to communicate to AP. Windows does not proceed from connecting phase (nor zero conf or proset wireless [necessary for wep 128bits]).
  48. teddy_bear

    teddy_bear Network Guru Member

    Well, if nothing works for you, and the driver in the firmware is indeed the reason - I most probably won't be able to help you. This kins of job is a bit over my head unfortunately...

    You may want to email Jon and see if he'll update drivers in his next Tomato release.
  49. trmfreitas

    trmfreitas Addicted to LI Member

    What I really wanted was someone who is using this version successfully with 2200bg to write something in here.

    Maybe an old version of intel driver does not have this issue.
  50. labrugice

    labrugice Addicted to LI Member

    My router is the Asus Wl-500gP and is currently running Tomato 1.23 non-ND with no problems, its when i use the ND version that my notebook cant connect. If it was possible to have the ND and non-ND versions of this mod it would be fantastic :) If i knew how i would do it, but unfortunately i don't...
  51. trmfreitas

    trmfreitas Addicted to LI Member

    labrugice do you have an Intel 2200bg too? or you have problems with other card?
  52. labrugice

    labrugice Addicted to LI Member

    Yep, its the 2200bg.
  53. teddy_bear

    teddy_bear Network Guru Member


    Have you checked this post? There's a link there to the older Intel drivers (hp oem) that are supposedly work with Tomato. Tomato web site also links to the same hp drivers from the FAQ page. Maybe that will help...

    Although using non-ND version may work for WL-500gP, it's definitely not an option for WL-520gU - non-ND version simply bricks it (tried it myself)...

    If HP drivers won't work, I suggest you try to contact Jon, or switch to DD-WRT :sad:...
  54. trmfreitas

    trmfreitas Addicted to LI Member

    I had checked that post but have not tried it since it's from March 2007 and an old version of Tomato.

    I assumed also that the problem was different.

    Since I have everything configured now and I don't believe that would solve the issue I will wait for somebody else to try it and post some results or another solution
    involving correcting the problem.

    Thank you for your research.
  55. Toastman

    Toastman Super Moderator Staff Member Member

    trmfreitas, this may or may not work for you, but try a fixed IP on your PC. Some 2100/2200BG cards will then work. Looking at Wireshark trace - seems like they do not attempt to obtain an IP by DHCP after logging onto the AP.
  56. trmfreitas

    trmfreitas Addicted to LI Member

    I believe communications do not go that far. But I might try it. I will also try Wireshark.

    Perhaps tomorrow.
  57. teddy_bear

    teddy_bear Network Guru Member

    Broadcom Wireless Driver Update

    Ok guys...

    This is totally experimental. The USB mod (ver. 05 EX) with updated Broadcom drivers:
    eth0: Broadcom BCM47xx 10/100 Mbps Ethernet Controller
    eth1: Broadcom BCM4318 802.11 Wireless Controller
    I only tested it with my simple setup on Asus WL-520gu, and it seems to work fine. All thanks go to Dr. Arne Kutzner - I stole all the files and most of the code changes to support new driver from his Tomato 1.21 mod.

    Supposedly the new drivers should fix the connectivity issues with Intel 2200BG cards, and overall improve the performance. But updated drivers come with a price - the firmware image size increased by ~130KB, so my JFFS space is down to 316KB on 4MB flash.

    Another change in this build is added automount for USB drives. If auto-mount is activated in GUI, all mountable partitions of USB drives will be automatically mounted to a directory in "/mnt" (which is also the default root directory for FTP server non-admin logins) as soon as the drive is plugged in. If you want to override default mount points, you can do so in your startup script by manually mounting the partition to a mount point of your choice - partitions that are already mounted will not be auto-mounted again.

    If anyone is willing to test it please do at your own risk - usual disclaimers apply (i.e. you're on your own if you brick your router, do not hold me responsible etc :) )... However, if you go ahead and flash this firmware, I appreciate if you report here any success or failure.

    Happy New Year everybody!!! Now I'm off to get drunk and celebrate...
  58. mactogo

    mactogo Addicted to LI Member

    Thanks for your continued work on this firmware mod. I do hope that your mods are soon incorporated into the official tomato releases. Happy 2009!
  59. trmfreitas

    trmfreitas Addicted to LI Member

    thank you for your work.

    Since I had another WLan card lying around I replaced the 2200bg.
    But, I will probably try this tomorrow since I am interested in adding swap space.
    (will replace again the card)

    Thank you for your work!

    Wishes for a great new year for everybody.
  60. trmfreitas

    trmfreitas Addicted to LI Member


    I replaced the card and installed the new firmware and it didn't work.
    Card is not able to associate with router :(

    Will try to reset configuration and create an open network just to check.
  61. trmfreitas

    trmfreitas Addicted to LI Member

    Reseting configuration and trying with an unsecure wireless connection did nothing.

    Tried to use a static IP with no results.

    Will try now the older version of the driver.
  62. RockT

    RockT Addicted to LI Member

    I can confirm it does not work. :frown:
    XP with BG2200 does not connect to it.

  63. teddy_bear

    teddy_bear Network Guru Member

    Too bad the newer driver did not help. It might be that the problem is not in the driver itself, but something else...

    Anyway, the last "experimental" build had too many issues (using Wireless Survey and/or changing some settings could crash the router or cause it to hang), so I pulled it off, and made a new "bug fix" release.

    The build 07 is up there now - with automount feature, and even newer version of Broadcom wireless driver included - I know this is not the latest - but I couldn't get to work with the rest of Tomato firmware. This one seems to work ok on my Asus, but again - this is the only router I have right now to test it on.

    Even if the new Broadcom driver will not fix 2200BG connectivity, I think I'll keep it just because it's newer - unless it causes some new problems I'm not yet aware of. So please keep me posted if you run into any new issues with this build.
  64. mactogo

    mactogo Addicted to LI Member


    I'm also very much interested in getting asterisk running from a flash disk but I'm finding the wiki and the forums in DDWRT for optware a little confusing (i have no linux background at all). Would it be possible for you to provide a quick rundown on how you got it working? Do you also have the asterisk gui installed?
  65. teddy_bear

    teddy_bear Network Guru Member

    To install Asterisk, I used this DD-WR Wiki to install Optware first. It also refers to another Wiki about formatting and mounting your drive. You need an access to Linux box (I just run Ubuntu in a Virtual box on my WinXP machine) to format your drive as Ext2 or Ext3. You want to use native format to have a better performance, besides Asterisk may need Linux-formatted drive because some of the features of Ext2/Ext3 filesystem are not supported by FAT fs.

    After you format the drive, and connect it to your router, mount it to /opt directory using "mount -o noatime,nodiratime /dev/discs/disc0/part1 /opt" command (I have this mount command in my startup script). Now you can follow DD-WRT Wiki to install Optware. You do not need to modify the profile, or change PATH as the Wiki says, as these changes are already included in my mod. However, if you ever want to expand the profile file, you can create /opt/etc/profile or /jffs/etc/profile file - everything you put into these files will be automatically added to the default profile. Once Optware is installed, run
    "ipkg-opt install asterisk14" (or asterisk16) command to install Asterisk (I run version 1.4, but I'll probably update to 1.6 once it's at leat at ver 1.6.1+).

    I do not use Asterisk GUI, and have not even tried to install it - I just edit Asterisk configuration files, and use the slightly modified version of Simple * Management Script (that's why I needed CGI support in Tomato HTTP daemon). If you want to run Asterisk, I'd recommend you download "Asterisk - the future of Telephony" book, and read it - after that you won't need a GUI...

    Also, after Asterisk is up and running, you may consider changing the default configuration (asterisk.conf) to move some * temporary files and logs to RAM - this way your can minimize writing to your flash drive to prolong its life. Since we are dealing with a limited resources of a router, I don't use the voicemail (I redirect unanswered calls to external VM account), IVR or audio-recording features of *. I also installed logrotate application (using Optware ipkg-opt as well) to manage * logs and clean them up periodically - otherwise they can get pretty big and fill up all your RAM.

    Hope it helps - let me know if you have more specific questions. Oh, and I also did not have any Linux background before - installing Asterisk (under DD-WRT first, and now of course under Tomato) 2 months ago is what got me going :)...
  66. mactogo

    mactogo Addicted to LI Member

    Just what I needed to know, very much appreciated! It's amazing how you learned all of this and even ported it tomato in the span of 2 months! I've already begun reading the book you recommended and will get started on this "project" in a few weeks once I've more or less familiarized myself with * and the linux system in general.
  67. me2az

    me2az Addicted to LI Member

    Some problems with mediafire hosting. Cant download
  68. dfy23

    dfy23 Guest

    dl? any download links for your mod? :)

    btw, thx for effort

  69. teddy_bear

    teddy_bear Network Guru Member

    Sorry guys, looks like I edited out the download link from the 1st post :(. It's back now.

    I also don't see any problems now with Mediafire - but I had to repack and reupload build 07 binary - for some reason the original ZIP archive could not be downloaded anymore...
  70. dwoz

    dwoz Addicted to LI Member

    I have a problem, I use version 04 - when I am running the client rTorrent after some time work, the router hangs. In Oleg firmware everything works around
    Sorry for my poor English
  71. teddy_bear

    teddy_bear Network Guru Member

    What router and what usb drive do you use, and how long can you run rTorrent before it hangs? Does Oleg's formware work fine with exact same set of hardware and other wired/wireless clients connected?

    I'm not sure if I can help with this, but I'll try to reproduce the problem and see if anything can be done about it...
  72. trmfreitas

    trmfreitas Addicted to LI Member

    Thanks for the updated version. Will try it next weekend.

    The previous version hanged during boot if I had my printer connected and also had a long delay when printing.

    I am using first version now with swap configured, flash drive with optware and a printer.

    Thank you
  73. dwoz

    dwoz Addicted to LI Member

    Router: Asus wl500gP v1
    HDD: hitachi 20 gb + pocket without external power (external 2*USB)
    rTorrent hangs after about 5 hours of work.
    Oleg's firmware work fine with exact same set of hardware and other wired/wireless clients connected.

    I noticed that this problem also appears in the dd-wrt firmware and openwrt :frown:
  74. trmfreitas

    trmfreitas Addicted to LI Member

    I tried the new version now and I had the same issue with the usb printer.

    Reverted to 0.4 (no problems).
  75. cr00kedview

    cr00kedview Network Guru Member

    Having an issue mounting jffs with the latest build. I enable jffs and format/erase the partition, however it always says '(not mounted)' and nothing exists in the jffs directory.

    I'm using 07 on a WL-520GU.
  76. teddy_bear

    teddy_bear Network Guru Member

    It seems that the updated Broadcom driver (or the way I updated it) causes more problems than it solves - so I'll roll back to the original Tomato driver version in the next build. Thanks to everyone reporting their issues.

    Does the "same issue with USB printer" include hanging on boot with printer connected when running ver.07? Or only long delay?

    So the only firmware that works with rTorrent without hanging is the Oleg's firmware, and the problem is not unique to my mod? That could be because Oleg's firmware is the only one based on the Asus GPL sources - so it better "fits" your Asus router... I know Asus applied a lot of kernel changes to stabilize usb behavior. I'll review them and see if I can port all/some of them into my mod. There's no guarantee however that it will solve the issue, as the reason for it could actually lie anywhere in the kernel - not only in the usb-related code.
  77. trmfreitas

    trmfreitas Addicted to LI Member

    teddy_bear: hanging when booting (using OHCI)
  78. tcsoft

    tcsoft LI Guru Member

    is there any space left to include a fax-server software like asterisk (agx)?
  79. trmfreitas

    trmfreitas Addicted to LI Member

    tcsoft: you can include whatever you want when using an usb flash disk.
  80. tcsoft

    tcsoft LI Guru Member

    trmfreitas: yeah, but there is no package-manager in tomato. so i would have to compile it myself and i don't exactly know how to...
  81. trmfreitas

    trmfreitas Addicted to LI Member

    you can use ipkg.

    when I get home I will post what I did to add swap to my router.
    You can follow the same instructions to install what you want.
  82. tcsoft

    tcsoft LI Guru Member

    cool, thanks :)
  83. trmfreitas

    trmfreitas Addicted to LI Member

    This is what I did to add swap and support for IPKG.

    Everytime you restart you have to add ipkg.conf again.

    connect usb flash drive to a linux box
    fdisk to configure partitions (create one with type 82 and another with 83 (choose your swap space))
    mkswap on swap and mkfs.ext3 on the other
    remove flash drive

    Enable ohci 2.0 and 1.1

    add usb 2.0 hub to router

    connect flash drive to router
    open telnet to router
    configure /etc/ipkg.conf with vi:

    src packages


    mount /dev/discs/disc0/part2 /opt
    ipkg update

    wget -O - | tr -d '\r' > /tmp/

    sh /tmp/

    ipkg-opt install busybox-base
    ipkg-opt install busybox
    ipkg-opt -force-reinstall install busybox-links

    vi with:
    export PATH=/opt/bin:/opt/sbin:${PATH}
    although you cannot run this script since export will not perdure after running you can save the command so you remember it later (cat /opt/


    change init script to:

    sleep 3
    mount /dev/discs/disc0/part2 /opt
    sleep 1
    swapon /dev/discs/disc0/part1

    change shutdown script to:

    umount /opt

    reboot router, check memory...

    Now you can install whatever you want.
  84. CBR900

    CBR900 Network Guru Member

    here is what I did with my asus wl500gp:
    1- attached my usb reader (with 4.0GB mmc card memory)

    2- enabled [Core USB Support+USB 2.0 Support+USB Storage Support+Ext2 / Ext3 File System Support+FAT File System Support+Automount]

    what to put in [Run after mounting]?
    what to put in [Run before unmounting]?

    3- enabled FTP Server

    already formated my mmc card with linux (not sure if format is ok).
    Can I format it with fat filesystem via windows?

    please help me to access my mmc memory card
  85. trmfreitas

    trmfreitas Addicted to LI Member

    CBR900: sorry I have not used the FTP server.
  86. dustintinsley

    dustintinsley LI Guru Member

    i am trying to get samba working with this. anyone had any luck? i can get samba running (took slim samba from a dd-wrt guide), but i can NOT get read-write access in either Ubuntu or Windows. I have no clue where I am going wrong. I can read, but not write any new files. I can FTP in and have write access, but I need it through Samba. Any suggestions?
  87. dustintinsley

    dustintinsley LI Guru Member

    ok, now it is working. i honestly have no clue what i did differently. what the hel...
  88. Toastman

    Toastman Super Moderator Staff Member Member


    Thanks for the mod! Armed with the knowledge that we now have USB support for this series of router, I just bought 2 ASUS WL500GP v2's for a new project.

    First, the good news for me is that as soon as I flashed it with your v7 software with the driver, two Intel 2200BG users logged on, seems to work OK here. I couldn't see your compile on your site so did not test it. I have not tried to use the USB ports though.

    Next, a problem related to the v2 WAN/LAN ports, I believe, although I cannot find much information on the subject.

    I have a PPOE ADSL connection to my ISP, as do, I expect, the majority of users.

    On boot-up, the router connects to my ISP fine, but subsequently the logs, sent to Wallwatcher, show the router keeps trying to reconnect every 30-50 seconds. Although the router continues to work, and remains connected to the ISP (so far) despite all the log activity. I think PPoE is looking to another interface port to receive an acknowledgement, and it's resetting and trying to reestablish connection over the wrong interface. Perhaps something wrong in the bridge or maybe dnsmasque? Can you offer any help?

    Searching the web, there does seem to be an issue with remapped ports in the v2, but this issue hasn't been discussed much in the Tomato forums. As the V1 isn't available now, the V2 is the one most new users will be getting.


    EDIT: You may have fixed this already with v09. See later post!

    EDIT 2: Problem no longer exists - it seemed to be an issue with my ADSL modem, as changing to a new one fixed it. Not that I'd have believed it myself... as it worked fine for years on a WRT54gl...
  89. teddy_bear

    teddy_bear Network Guru Member

    You really don't need to put anything into these scripts unless you want to auto-start some software on your USB drives.

    I just made build 09 available - hopefully it would be easier for you to access your device with the Samba File Sharing built-in into the last version :)
  90. teddy_bear

    teddy_bear Network Guru Member

    Who wanted Samba?.. It's there now :)...

    Just uploaded build 09 with the following changes:

    Since both previous versions with updated WL driver were causing different issues, I rolled back Broadcom Wireless Controller driver to the old version
    (original Tomato ND version) :frown:. I will re-attempt to upgrade the driver later as it apparently fixes Intel 2200BG connection issues.

    Added Network File Sharing - Samba 2.0.10. The firmware binary with Samba is 3500KB now - still good for 4MB flash, but it leaves only 60KB JFFS space on these routers with 4MB. Please take this into account when upgrading.

    Added USB hotplug script executed every time you plug in or disconnect any USB device. It can be useful for configuring USB devices after attaching them, i.e. to load firmware into HP1018 or similar printer.

    Updated USB drivers to the newer version from kernel 2.4.35, applied some additional patches to stabilize USB.

    Applied patch to allow using routers with increased amount of RAM (i.e. upgraded to 128MB RAM).
  91. teddy_bear

    teddy_bear Network Guru Member

    I can't promise you that I'll resolve this, as I have no idea now what could be wrong... But I'll look around, and if you find any additional info on the issue - I'll appreciate if you let me know.
  92. Toastman

    Toastman Super Moderator Staff Member Member

    t.b. Hold on to your hat .... I just flashed your latest version and ppoe is not displaying the problem! Been on now for 15 minutes ...

    I'll keep watching it for a while then confirm this to you...

    EDIT: Now up an 4 hours and a half, still OK. I have not checked any USB related stuff, but everything else seems to be working. Curious!
  93. Mastec

    Mastec Network Guru Member

    @ Toastman

    I just answered your PM suggesting what you have already done. Glad to see it's working so far.
  94. me2az

    me2az Addicted to LI Member

    OMG! So much features. Can you update screenshot?
  95. dadaniel

    dadaniel Network Guru Member

    I get a kernel BUG message when using Samba, and then Samba dies.

    I attached the logfile. Don't worry about the IP in the log, it is dynamically assigned.

    Could you please build one version WITHOUT samba on next release?

    Attached Files:

  96. Toastman

    Toastman Super Moderator Staff Member Member

    USB FTP/Samba on a WL500GP v2 - with v09

    Being completely new to using filesystems in Linux, I was pleasantly surprised that I managed within minutes to set up both a Samba network share and an FTP server to access an 8GB flash memory stick, both work flawlessly. Transfer of large file on my internal network from the USB drive is over 2Mbps. Now I need to learn a bit more. Maybe other could make suggestions as to how we can use these new features in Tomato for different purposes that maybe we "newbies" hadn't thought of? How to add a (cheap!) webcam to the port, etc ?

    Nice work, nice GUI menus !
  97. eRd12

    eRd12 LI Guru Member

    "Added USB hotplug script executed every time you plug in or disconnect any USB device. It can be useful for configuring USB devices after attaching them, i.e. to load firmware into HP1018 or similar printer."

    I would like to ask is there any hotplug script window in gui or should I write my script to any file by ssh to use this function? By the way thank you for this feature I needed it much so I have to flash this tomato version and set it to use hp1018. Any suggestions would be great. :thumbup:
  98. dadaniel

    dadaniel Network Guru Member

    Look at the attached screenshot.

    Attached Files:

  99. teddy_bear

    teddy_bear Network Guru Member

    Webcams are not supported now. For this the kernel should include USB serial support, and I did not compile it in - I was concentrating on storage and printing only. Adding serial modules will increase the firmware size even more - probably won't fit in 4MB flash - so I have no plans yet to include it...
  100. teddy_bear

    teddy_bear Network Guru Member

    Hmm... Could not reproduce it here.
    Does the error happen when you try to access your drive for the 1st time? Have you tried different usb drives? Any similar problems when running it with Samba turned off?
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice