1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Tomato Toastman's Releases

Discussion in 'Tomato Firmware' started by Toastman, Dec 18, 2011.

  1. edusodanos

    edusodanos Reformed Router Member

  2. AndreDVJ

    AndreDVJ Addicted to LI Member

    If I recall correctly from what I have been reading openlinksys.info forums two weeks ago, Shibby just married, so I don't think he has any time for Tomato at the moment. It's perfectly understandable if his life priorities won't allow him to look into Tomato any further.
    pomidor1, Joe A and Sean B. like this.
  3. ramblefish

    ramblefish New Member Member

    Hello. How do I enable DHCP?
  4. pomidor1

    pomidor1 Reformed Router Member

    You misunderstood, someone just such an example gave that once in another forum as the administrator was absent it turned out so,
    I think hehe so bed, so young wife, he probably will not bed the pain hehe.
    Let's respect Shibbie's work, though his incest is annoying ;-)
  5. nmalinoski

    nmalinoski Serious Server Member

    Is the wireless client mode ever going to get fixed? :(
  6. Jeffry

    Jeffry Networkin' Nut Member

    Don't hold your breath. Tomato's Client Mode has been broken some time as some say here. If it hasn't been fixed by now, it probably will not be anytime soon. Maybe with enough demand, someone could take a look and try to fix but overall it seems a very low priority. It may take some compensation, maybe $$, to make it worthwhile to fix. If you want a third party firmware with a working Client Mode, DD-WRT is the only viable option at this time.
    Last edited: Apr 11, 2017
  7. kennedy.greg

    kennedy.greg New Member Member

    What is the preferred way to communicate patches for Tomato dev? I have seen people pasting Github links but the repositories don't seem to exist any more. I'm spoiled now by the fork, commit, pull-request workflow by this point : )
  8. AndreDVJ

    AndreDVJ Addicted to LI Member

    You may attach patches here on this thread. Any contribution is welcome.

    There's not really a "Tomato developer". The two main branches nowadays are "Toastman" and "Shibby".
    • Toastman uses a more stable codebase.
    • Shibby is the bleeding edge, where things may break and requires a fix.
  9. kennedy.greg

    kennedy.greg New Member Member

    Ok, and where do I get the latest source? I am not seeing it in the 4shared folder.
  10. AndreDVJ

    AndreDVJ Addicted to LI Member

    It's a repository: http://repo.or.cz/tomato.git

    The main tree is the ancient Tomato 1.28, so after cloning the repository, you need to checkout the branch you want. Usually Toastman or Shibby branches.

    http://repo.or.cz/tomato.git/heads may give you a consolidated views of all the branches, depending on which architecture you will work with.

    For ARM architecture, Shibby maintains a separate repository, at https://bitbucket.org/pl_shibby/tomato-arm/commits/all

    Bitbucket is where I maintain my own fork as well: https://bitbucket.org/AndreDVJ/advancedtomato-arm

    So in the end, there are forks all over the place. Tomato sources can be very confusing to work with, and compiling the source with a Linux distro other than Debian can be a nightmare, so please let us know if you need additional information.
  11. RichtigFalsch

    RichtigFalsch Networkin' Nut Member

    Hi, Toastman!

    Are you planning any further releases?
    We could use a more current stable Tomato platform :)
  12. QSxx

    QSxx LI Guru Member

    Latest release is only few months old and there have been no show-stopper bugs (AFAIK). It's as current as it gets (imho)...
    M_ars and kille72 like this.
  13. edusodanos

    edusodanos Reformed Router Member

  14. ruggerof

    ruggerof LI Guru Member

    Speaking of which, how can I know which version my router is running? In the About page only 1.28.9008 is shown.
  15. vex-box

    vex-box Serious Server Member

    Compare the About build date shown vs Toastman repository
  16. ramblefish

    ramblefish New Member Member

    I need your help in solving - How to organize PPPoE Relay in the firmware of TomatoUSB? For example for LAN 4.
  17. JeffD

    JeffD Reformed Router Member

    Koitsu, I would have PM'd you about this, but I can't so I'll respond here.
    if you're curious the code:
        flag = 0;
        ptr = (uint64_t *) node->speed;
        while (!flag && max--){
            flag |= *ptr++;
        return !flag;
    It's not there to be a pain or make your life more difficult. This is both a speed and space optimization, and yes embedded folks do this all the time because space is just as valuable as speed in the embedded world. Before I saw the code I thought there's likely a single loop wrapper with a decremented counter.
    Then I saw the code and it makes perfect sense. The while loop works better than the for because it's a single pass loop, and it's got quick exits
    Notice how the counter max is initialized with the top end and then decrements each loop? This saves us a few cycles for the compare each time through the loop and a couple bytes for the compare instruction. This code just uses the variable for an AND on the test for done. Simple, small and efficient.

    compiled this loop becomes a test flag (stack) AND with max (register), branch out needed, dec max (register), load (likely stack/register indirect), OR (register), store (register) and increment (stack/register and this works for any sized type pointed to by ptr), branch to while start.

    That said, this code may work better as a do while loop, since it always gets executed once, it may be best to move the exit test to the end of the loop rather than the start. Saves one pointless exit test on the initial pass.
    I'm also not sure why we don't get rid of the OR with flag and just assign it instead, it's either 0 or not and we only care when it's not. Looks like the "!flag &&" early exit was an optimization added after the |= had been written...

    You code, has two loops each with their own init, execute, post instructions, compare for done , that's 2x the space; embedded folks value space as much as speed. Add to that you've got array indexing which each array access is done by taking a pointer to the base and adding an offset which is calculated with multiplies because you need to get a row offset and add a column offset to get the cell offset which is added to the base offset (or use indirect indexed addressing to skip the add if processor has that option). Multiplies are slow, slowest operation you got even with FPU, (they also take more power compared to other operations). Your code is more readable, but not efficient. On an side note, your code could also be run as a single dimensional array and that would save you both space and speed. There are ways to eliminate the multiply instructions out, but those either take memory or end up looking like the original code.

    I'm guessing your timings were made off code generated with the -O2 flag which usually does a really, really good job with fixing the problems with the way normal (and OO) coders write code (like your loops). It would be neat to compare the assembly code for both routines. Can you add the '-S' flag and post? That should make a .s file with the assembly. May also be able to use -fverbose-asm flag, but not sure this always works. My guess is your code will be a bit larger (could be ~20 more bytes because there are lots of trick for optimizing fixed size loops, even nested ones) in size, but may resolve down to something not too different that the original single line of code. If really curious try to look at the assembly without the -O2, your code should be a lot larger and slower.
    Elfew likes this.
  18. humaxboy

    humaxboy New Member Member

    Guys one question :

    i am trying to do the classification of the UDP multicast traffic in Qos. I can't figure out how to do it because whatever i've tried Toastman is showing me as Unclassified.
    See picture :
    UDP port 5000 is a stream od original UDP multicast - second record in black rectangle.
    With udpxy UDP it is converted into TCP port 8088 (source - this is IP of my STB) - first record in black rectangle

    How should I define the parameters in Classification because I want UDP multicast to have the highest priority ?

    Thanks in advance !
  19. Dennis_E

    Dennis_E Reformed Router Member

    I might be wrong here but as far as I know.
    QoS with Tomato only works with the WAN port.
    These adresses are in your LAN, that's why it's not working.
    Every connection in LAN will show up as Unclassified.
  20. humaxboy

    humaxboy New Member Member

    Dennis_E - thanks for replying !
    All my adresses in my LAN are beginning with 192.168.1.x and as I undestand the second record in black rectangle
    is coming directly from providers modem, so this must be a WAN adress. Please correct me if I am wrong.
  21. Justio

    Justio Networkin' Nut Member

    It is highly unlikely that you will get a reply from @koitsu

  22. SerJ_Khv

    SerJ_Khv New Member Member

    Dear Mr. Toastman,
    I hope for your help in resolving a few issues that have arisen with the use of the ASUS RT-N18U router with the firmware of your authorship.
    The essence is as follows:
    1. TCP / IP protocol. Is it possible in the firmware to implement the TCP sequence number check for the current session?
    2. Is it possible to implement protection against a fake gateway?
    Thank you.
  23. Wolfgan

    Wolfgan Serious Server Member

    As I don't need the multiLAN features and wanted to update my AC66U due the security updates, I moved from Shibby's 132 to Toastman's tomato-RT-AC66U_0511.5Toastman-RT-AC-VPN.trx and suffered exactly the same issue (no 5GHz wireless detected unless hard reset with the button on the back).

    Is there any known regression to pre 510.5 behavior?
    Thx, Wolf
  24. RichtigFalsch

    RichtigFalsch Networkin' Nut Member

    I don't think so. I had the same problem, when flashing Shibby's Tomato onto my R7000 first time. Some resets and flashes (same firmware again) later 5GHz appeared.
  25. abunene

    abunene New Member Member

    Hi just flashed my 868L with the latest version AdvancedTomato but looking for one with VPN, CTF, DDNS, ...

    Does Toastman provide these? If yes which version should I download?
  26. RichtigFalsch

    RichtigFalsch Networkin' Nut Member

  27. abunene

    abunene New Member Member

    can I download the 868l firmware and flash directly from my AdvancedTomato firmware upgrade page?
  28. RichtigFalsch

    RichtigFalsch Networkin' Nut Member

    I think so. But you should clear NVRAM before and after flashing.
  29. btidey

    btidey Networkin' Nut Member

    I have Netgear 6300 running Toastman linked to Virgin cable SuperHub 2. I have it set up so that Toastman uses DHCP type to connect to Superhub. This means everything is on same subnet and means I can use all the ethernet ports on both devices without complications. I can't put Superhub into modem mode without losing all its ethernet ports.

    Everything works very nicely except it means DHCP for the whole network is managed by the Superhub. That has a limitation of only 16 device reservations which is becoming restrictive.

    So I'd like to move the DHCP operation off the Superhub but keep the operation all on one subnet. One possibility is just to run a separate dhcp server (e.g. I have a raspberry pi which could do this), but it would be nicer if I could just move it to the Toastman Netgear. I am not sure if this is possible or how to do it. My first thought was to change the Toastman to a static set up but this seems to imply using a different subnet to the Superhub.

    Any thoughts on if it is possible and how to do it?
  30. morebytes

    morebytes New Member Member

    What file to use (if possible?) on Netgear WNDR4500 V2?
  31. RichtigFalsch

    RichtigFalsch Networkin' Nut Member

  32. morebytes

    morebytes New Member Member

  33. pm4444

    pm4444 Network Newbie Member

    Hi I have two questions:

    (1) tomato-K26USB-1.28.7511.5MIPSR2Toastman-RT-VPN.trx is 8,163,328 bytes
    does it mean my flash cannot use this version as 0x7c0000 = 8,126,464?
    (2) Some are obvious but some aren't. For example, is VPN-NC=VPN+NOCAT? But why is VPN-NC file size smaller than VPN? What does each version below mean?
  34. morebytes

    morebytes New Member Member

    Another silly question, so is that for initial flash? And can I flash with regular bin afterwards?

    Currently I am running Shibby, can I flash this (tomato-Netgear-WNDR4500V2_0511.5Toastman-RT-AC-VPN.chk) chk without going back to stock?
  35. Toink

    Toink Network Guru Member

    After you flash to tomato firmware, you don't need to flash back to stock firmware, just to flash to another Tomato build as you please - just make sure it's the one for your router.

    As a rule of thumb, always do the 30-30-30 process before and after flashing to another build. You should be good to go.
  36. Justio

    Justio Networkin' Nut Member

    (2) Toastman's version description is provided here:
    Please take note of the "Versions.txt" document creation date ...probably some changes occurred since then, but this is what i have.

    Extract from the text document:

    Mini - no USB, no CIFS, no Zebra
    MiniIPV6 - no USB, no CIFS, no Zebra + IPv6
    Std - normal build
    Ext - normal + Extra utilities + NTFS
    VPN - normal + Extras + NTFS + VPN
    VPN-NOCAT - normal + Extras + NTFS + VPN + NOCAT portal
  37. ambiance

    ambiance Serious Server Member

    I'm assuming there is no point/advantage in using tomato-K26USB-1.28.0511.5MIPSR2Toastman-RT-N-Lite over standard for an N66U if I'm using it strictly for a repeater, but I'll ask anyways.

    Also, are settings preserved after each upgrade, so long as it's the same build? I usually clear nvram just in case a new bug might present itself.
  38. Justio

    Justio Networkin' Nut Member

    @Toastman are you ok? didn't see you in a while around here :confused:

Share This Page