Tomato is a system based on Linux, dedicated for routers with Broadcom chipset and distributed on the GPL license. Its development was started by Jonathan Zarate. This advanced system consists of especially user-friendly interface, thanks to which even inexperienced users can work with it easily. The most important functions are:

  • Bandwidth monitoring
  • Advanced QoS
  • Access control
  • Enabled SSH/Telnet protocols
  • Configurable buttons and LED’s
  • Support for many wireless modes

 

In addition to that, excellent mods of official software emerged extending even more built-in functionalities, like:

  • Built-in openVPN server/client
  • SNMP protocol
  • Support for SD/MMC/SDHC (for devices with SD-MOD)
  • BW Limiter (QoS Limit) – graphic interface to generate HTB scripts
  • ARP Binding

 

At the end of 2008, Fedor Kozhevnikov (known as a Teddy_Bear) releases for everyone in the world his modification of Tomato called “TomatoUSB”. This software was dedicated for Asus routers WL500GP, WL500W and DIR-320 – first routers with USB port, but, what’s most important, this software works also on routers supported before without USB port. The most important new features added by Teddy_Bear:

  • Support for USB1.1 and USB2.0
  • Support for mass storage memory and for file systems like: ext2/3, fat32 and NTFS
  • Auto mounting for connected drives
  • Built-in Samba server
  • Built-in FTP server
  • Built-in minidlna server (multimedia)
  • Built-in print server (p910nd)
  • Support for Wireless-N (2,4GHz) standard
  • Support for new routers
  • New wireless driver (version 4.150.10.29)

When Asus introduced RT-N16, Teddy_Bear released his new modification -TomatoUSB K26:

  • Migration from old kernel K2.4 to a new one K2.6
  • Support for new devices (Asus RT-N10/12,/16, Netgear WNR3500L etc.)
  • Web monitor – based on Gargoyle project
  • New wireless driver (version 5.10.56.46)

At the end of 2010, Build53 was released. This was one of the biggest milestones in Tomato firmware history because:

  • the support for dual-band (allowing devices to access the network on the 2.4GHz and the 5GHz frequency bands) was added
  • New wireless driver (version 5.10.147.0) was updated
  • the support for Linksys E2000/E3000/E4200 and WNR610Nv2 was added as well as
  • support for IPv6

The last version released by Teddy_Bear was Build54. In April 2011 from private reasons Teddy_Bears ended his work on TomatoUSB. However, others developers accepted the challenge to improve Tomato. Most active developers are: Victek, Toastman, Shibby.
August 31st, 2011, Teddy_Bear once proved his activity by issuing a series of modifications in his GIT repository (tomato-RT). Unfortunately, the final firmware was not released. Fedor created also a new branch called tomato-RT-N in which he updated wireless driver to 5.100.138.9. Thanks to that, Linksys E4200 was eventually provided with fully operating 5GHz band. This branch was also prepared for incoming Asus RT-N66u. From this day we have not heard anything about our colleague Teddy_Bear.
My compilation of Tomato is a continuation of Teddy’s work. Most important features added by me:

  • Torrent client integration (Transmission) with user-friendly GUI for configuration.
  • NFS server integration
  • sd-idle tool added to K26
  • Support for USB 3G modems (thx @LDevil)
  • SNMP protocol integration
  • APCUPSD integration (thx @arrmo)
  • DNScrypt-proxy integration
  • possibility to change path for system logs

 

My compilation includes also work results of the other Tomato developers (Victek, Toastman, Teaman). The most important from them:

  • renewed IP/MAC BW Limiter (Victek/PrinceAMD/Phykris/Shibby)
  • extended Sysinfo
  • Captive Portal (nocatsplash)
  • Support for file system HFS/HFS+
  • IPTraffic Monitor
  • ARP Binding
  • GUI to configure VLAN’s
  • Support for multiple LAN’s
  • Support for simultaneous SSID
  • UPDxy integration
  • PPTP integration
  • Configurable labels for QoS classes