Hi, i am using Tomato (wrt54gl) for few month now and was just wondering if it is possible to create a micro version of Tomato? (for example DD-WRT v23 mircro generic...) I have also a WRT54GS v5.1 with only 2MB and 16MB ram and I would like to run Tomato on that router too. Right now DD-WRT V23 SP2 micro runs on it but I would prefer tomato Can something like that be done?
I don't know what has been removed in dd-wrt but if I remember correctly the compression type have been changed to a more effective firmware compression...
I dont know either what has been removed but for example there is no samba, JFFS2 or CIFS Client. I gues without those features (maybe a few more...) the new *.bin file would be small enough to fit in a 2MB device. DD-WRT micro has around: 1696 KB Tomato: 2693 KB But who could make such a micro version of tomato?
Well, how hard would it be to do and what all would need to be done? Would the unnecessary packages be left out before compiling and that be it?
You would have to fix any of the dependencies as well, so you could even compile, and then you would have to test all the functionality to verify what you did.
Right. Basically the firmware image would have to end up with a size of no more than 1.7MB, so I would assume. Is this true? Where could I find more information about this?
http://www.dd-wrt.com/wiki/index.php/What_is_DD-WRT?#File_Versions as compared to the mini image: no pptp or ssh(!). very rudimentary...
FWIW, I would use a Tomato Micro that's missing the bandwidth utility in my extra WRT54G V.6 that is just sitting there.:smile:
I don´t think that we would have to give up the bandwidth utiltiy, but thats just a gues. If i try to make a new firmware, how can I find out that everythings works just fine? Virtual machine? (virtual pc 2007 or .... )???
I was wondering the same thing. I'd attempt to create to an image but I'm not sure how I would be able to test it. I do have an extra WRT54G v6 laying around but I would rather test it elsewhere (if possible) without permanently bricking it.
few MIPS virtual machines http://sourceforge.net/projects/jmvm http://fabrice.bellard.free.fr/qemu/ http://vmips.sourceforge.net/
The only "firmware compression" I can imagine is if you compile the individual parts of open-wrt with -Os (optimized for small size). I am guessing the code.bin is really a kernel image. AFAIK, kernel images can be compressed with various methods (lzma, gzip, squashfs) but eventually they will have to be decompressed in memory (and the wrt's don't have swap space, although you could make one).
Yeah... all that and then you're going to have a mission getting it on the WRT if I'm not mistaken the 5.1 uses a different bootloader... Or is it a simple matter of "upgrading" the firmware via a web interface? Or yet simpler, via tftp...?
DD-WRT V23 SP3 already runs on the WRT v5.1. There shoudn´t be any problem with the bootloader... only the 2MB flash memory makes it a little bit of a challange :biggrin:
Tomato Micro is on it's way and shouldn't take too long. Victek over in Spain will be starting a micro build, with the help of Jon, soon. At the moment what's going to be removed are dropbear, lptp the rest is not confirmed. For who understands Spanish and is interested : http://www.adslzone.net/forum36.html
This is great news! I have a WRT54G v5 collecting dust in my closet. I had DD-WRT working on it a while ago, but personally, it doesn't have NEARLY the stability that Tomato has. I couldn't keep that thing online for more than 2 or 3 days without it crashing/freezing etc... Don't even get me started on the stock VxWorks firmware!
Thank god! I have a micro install on my 6 in the livingroom & the only way I have found around my AP dropping connection was tomato... now I can set it up in there as well! Cant read spanish but then that is what google languages is for
Am I to assume that the same procedure will have to be done to get VxWorks off the v5/6 as with DD-WRT micro? I used a VxWorks killer and applied the Linux bootloader to get DD-WRT on the v5 I have. If i've already done this, then I assume I could just simply flash Tomato micro over top of DD-WRT since it's already Linux?
I think that is correct since the Boot Loader was already replaced. what is to be removed libcrypto,openssl,dropbear all software is compiled with Os where possible. I've played around with it managed to bring it down to 2MB another 300K needs to be scraped from somewhere...
I am aware one strength of Tomato is Jon's Bandwidth monitor, but in the interest of size, try removing it and see if it works...
I think I'll try to loose L2TP which depends on PPPD which is also not needed. the CIFS module is also 100K... but I want to try keeping it. still playing with it, but I don't have a V5+ to test it on when I'm done, only WRT54GLs. :grin:
Would it be possible to make different versions of Tomato micro? Maybe one that has certain features stripped but not others, and another that has the other features included but not the ones from the first version? That way you could choose which one you needed based on the features you need.
If you can, try keep the PPPoE... you will lose a large protion of the cummunity if you loose this feature...
I'm thinking about flavors e.g. Micro + pppoe, Micro + pptp due to lack of space and I hate losing the cifs client
I'm trying to bump SquashFS to v3.0 and check size of resulting image file. but I don't have much time right now to spend on it right now. :grin:
I would consider both PPPOE and PPTP as core functionalities of a broadband router. CIFS, as usefull as it is, is much less important.
heh found something worthy of note here regarding SquashFS. Apparently, you can get up to 30%(10-15% for normal use) better compression by patching SquashFS to use LZMA instead of gzip for compression. The downsides are 1. Its not officially supported 2. The patches i found online applies to the 2.6 kernel 3. I read somewhere that the 2.6 kernel doesn't play nice with the broadcom's wifi module I guess this could be a good alternative to cutting more features out but might require some working on. Also, i guess other kernel patches exists out there, except that i didn't stumble upon them (= Anyway, http://sourceforge.net/forum/forum.php?thread_id=1113639&forum_id=215699 http://www.squashfs-lzma.org/
I'm gonna try it, found a patch for 2.4 http://www.zelow.no/svn/floppyfw-3.0/patches/kernel/021-squashfs-lzma.diff :grin:
heh be sure to keep us posted on ur progress ^^ would be nice to see a image size comparison between e 2 versions. this could possibly be added back into the main branch (though tomato doesn't seem to be growing tt large to need it yet i guess)
yup i think it does found an entry here talking hinting at something: http://www.dd-wrt.com/wiki/index.php/Development edit: Ah crap i found conflicting statements -.- http://forum.bsr-clan.de/ftopic644.html this is pretty old, but still .. i dunno which one to believe >_<
Just thought I'd mention:- 3rd party Routertech firmware (based on Acorp GPL sources) for the TI AR7 chipset ADSL routers is now using squashfs-lzma 3.x, with a 2.4.x kernel probably from http://mcmcc.bat.ru/dlinkt/acorp-russia/gpl_source/ Suspect the Montavista Linux distro is heavily patched by Ti etc to make it completely different to Broadcom based Linksys - but ...
oh well, i think the next best thing in this case will be to work from openwrt, and port the tomato gui over.
Well, I have seen the light and embraced vegitation... I Was using DDWRT because of the SD mod on my 2.2 in the livingroom but as I run in WDS and the wireless faults in recent builds I figured I'd give it a shot and I am quite impressed. I'm only hoping for a version small enough that I can put it on my GS v6. If I can get that then I will be more than tickled and my kids will be as well (playing HALO & such across the house). Are/is there a complete guide to home compile a version? As I understand currently its in the works by a few but seems to be having a bit of a size issue.
Is that not enough? I thought the micro only had to be below 2MB, because that's the flash size of the v5+ units.
OK, so in a nutshell what your saying is your going to take the stable firmware we adore and go ahead with an unstable version we all know about and have tried and rejected and give it a makeover so it looks like what we are after..... Or could it be worded... taking all the things that wont fit in a micro install of tomato and trying to make it using tomato components but using an unstable release.... (This one confuses the hell out of me as if it doesnt fit in one box it certainly wont fit in another box the same size). While I do appreciate all your efforts thus far, can somebody write a tutorial or how to on compiling a custom version of tomato and I'll be more than happy to brick my router and have a go at it. This v6 is the only router in my house that is making things unstable and I'd love to get it resolved.
Perhaps, but like many I have my family and I put everything I get into that... as a result the niceties are not really high priority. Far simpler to take existing equipment and tweak it with some guidance than go buy another piece of hardware to do the same thing as what I have already ad to shelf the one I already have.
It's a shame.. really... I for one would still love to see a Tomato Micro... I mean, DD-WRT has more bloat than Tomato and it has a micro build so why can't oh-so-efficient Tomato?
I for one would really hope to see a Tomato Micro for those newer Linksys units (which unfortunately quite many are stuck with).
why do you guys wish all the time this will happen when the author has not even made any suggestion that he would make a micro version. the easiest solution is buy a WRT54GL. full stop.
It's a shame that the WRT54GL can't be purchased on most store shelves... The ONLY place I've ever seen it available is online. I've looked in Best Buy, Circuit City, Staples Business Depot.. etc.. They all carry the WRT54G v5-8 or the GS v5-7. I just wish those places would stock the GL. because frankly, I hate buying stuff online, cause you have to pay shipping and most of the time the product is more expensive online unless it's used. For this reason, and I think others might agree, I think that the Tomato Micro (aka Cherry Tomato) project *should* remain alive. I'd do it myself If I knew how.. Unfortunately I'm not versed in Linux programming..
From other posts I gather that Roadkill came pretty close, he had a firmware build that was 1.9 MB. But 1.7 MB is needed. So close! I really thought that if only some less-usual features were removed (e.g. PPTP) it would be possible
Surely if DD-WRT can do it, Tomato can. DD-WRT has even more features than Tomato. Mind you, a lot of them are useless. Even the micro version of DD-WRT has more features than the standard Tomato (that I'm aware of). Tomato itself is only 2.7 MB... It must be more difficult than I thought to shave off one megabyte. Not knowing much about Linux, that 1 MB could be key.
GhaladReam. the problem here is that tomato and DD-WRT are based off totally different firmwares. Tomato is based off the official linksys firmware, which means it implements newer firmwares from linksys into its own, while adding additional features to it such as QOS. DD-WRT on the other hand is based off the Open-WRT project, which is a firmware built ground-up for the WRT's architecture. thus, size wise, there's gonna be a difference. the edge tomato has here, is cuz it follows closely to the official firmware, it is much safer for the end user. less chances of bugs frying and bricking your router and such. (=
I think if I could compile using a different toolchain and a newer GCC with Os maybe I can get to 1.5mb...
I resale the GL regularly if some one is willing to pay shipping from Canada I send the GL preloaded with the latest Tomato!
Technically, the smallest Tomatoes are grape tomatoes. Shouldn't Tomato Micro be called Grape Tomato?
Would be majorly cool to have a Tomato for wrt54g v5 and on... I'm going to inherit one tomorrow, and DD-WRT looks so dull after having used Tomato so long
That may be jumping the gun a little. There's no firmware yet! But whoever comes up with the firmware (I think Roadkill is the main contender) should have the honor of christening this new "thing", in true pomological fashion.
looks like this project has gone by the wayside -- i would like to see tomato on my belkin routers in the future
Pity, I have one v6 linksys that is the only one in the house NOT supporting Tomato.. was really looking forward to a complete backbone.
It seems that there it is not possible to see Tomato Micro. A pity, especially since there are currently some problems with "the other firmware".
Bump. Looking forward to a Tomato Micro DD-WRT seems nice, but I like Tomato's interface a great deal more.
Quicker, but more expensive. I'm poor, so I'm going with what I've got. DD-WRT Micro will be my choice until we see a Tomato Micro.
I also want to see a micro version eventhough I have other more capable routers. This is because before I heard of the WRT54GL, stupid me bought several other crippled Linksys routers and access points. The crippled ones are just being used as access points now, but I imagine they would be much more stable with Tomato. What sucked more was that the WRT54GL costs less than all those crippled routers or access points.
I totally agree. I am still hoping that some day there will be a micro-version of tomato. Right now I am using V23 SP3 micro for my 2MB flashmemory deveices... the latest build is actually working pretty good.