• TF300T Easter brick resurrection

    TF300T Easter brick resurrection

    Since Asus stopped providing us with official updates for TF300T tablet from the old Android 4.2.1, I decided it was finally time to root it and put a brand new shiny Lollipop ROM onto it. I rooted all my previous phones and it all went well all the times so I figured it would go smooth this time as well. Except it didn’t. :D

    Somehow I managed to follow an outdated tutorial for unlocking and flashing the TF300T that recommended using the ClockWorkMod recovery. All went well up to that point, I unlocked the tablet and put the CWM without any trouble but when I tried to flash the CyanogenMod ROM, CWM complained about not being able to mount any partitions. That meant that I couldn’t select the ROM zip file from a internal location or sideload it with ADB. Funky.

    So I did a bit more research and it turned out that CM does not really support CWM for Lollipop (not sure if only for this device, or generally, but it doesn’t matter anyway). Solution – flash TWRP recovery instead. Ok, so I went back to fastboot and tried to flash TWRP over CWM but it failed every time. This is where it all started to go down..

    My first mistake was that I downloaded the *-JB version of TWRP instead of the *-4.2. I was quite lucky here as it was only later that I read that if you screwed that part – hardbricking was guaranteed. Instead of everything going to smoke already, flashing TWRP simply failed every time (RCK would stop blinking and rebooting using fastboot -i 0x0B05 reboot didn’t work) and each reboot into recovery would load CWM again and again. I could still boot into Android as well. I thought that was strange so I tried a couple of times but of course it didn’t help.

    My second (even bigger) mistake was – I selected the “wipe” option from the fastboot screen.. Fool of a Took. ‘#$&%*!… I thought this would somehow help but instead I got stuck inside an infinite CWM loop. I had ADB access, but rebooting to fastboot using adb reboot-bootloader simply didn’t work. After ~6 hours of trying, I almost gave up at this point but after a bit more research I found a slightly different version of the same command – adb reboot bootloader (without the dash) and BINGO! That was my way back. So happy! Now I could boot into fastboot again.

    Well now I only had to figure out how to get rid of the CWM.. This SE answer stated that I should restore the device to defaults by flashing Asus stock ROM (download firmware for your language, unzip it and flash the *.blob file). Running fastbot erase before flashing the Asus firmware looked reeeally scary, but it was the only option I had so I went for it.. It all went great and after that it was very easy to flash TWRP and then CM and Gapps from TWRP.

    Problem solved! After ~8 hours of not giving up, my tablet was resurrected and alive again! Easter day of 2015. True story.

    Well, lesson learned – do the research and RTFM in advance. And I hope the post helps some other impatient bricker! :)

    PS – the device works faster/smoother/better with Lollipop. *thumbsup* for the Android team.

    Cheers!

  • Thomson SpeedTouch 780WL – port forwarding to broadcast address

    For your home network to be able to wake-on-lan a computer from the Internet so that you could later remotely access it, you need to forward a port to your broadcast address. This way you can broadcast a magic packet to all the computers in your network and then wake only one of them using its MAC address.

    If you are reading this, you probably already tried forwarding a port to 255.255.255.255 but to no avail. That is because ST780 just drops anything forwarded to the broadcast address.

    So, what you should do is choose one unused IP address in your subnet and make it appear like it’s a broadcast address, and later do the port forwarding to that IP. How to do that? Telnet into your router, and assign a hardware (MAC) address of FF:FF:FF:FF:FF:FF (when translated to IP, that MAC address makes 255.255.255.255) to the chosen IP address. This is the basic idea behind this tutorial and a way to trick the router into doing the port forwardng to a (fake) broadcast address. So, do the following:

    1
    telnet <router_ip_address>

    enter your superadmin username and password and execute the following two commands:

    1
    2
    :ip arpadd intf=LocalNetwork ip=192.168.1.xxx hwaddr=FF:FF:FF:FF:FF:FF
    :saveall

    where xxx is the last octet of your chosen IP address (make sure that the chosen IP is not already in use, and that it’s not 192.168.1.255).

    Now go to your routers webinterface and create an application with UDP port 9 (to make it a little bit more secure, I recommend you choose a port above 1024, and then translate it into 9). Assign the created application to a newly created IP address (192.168.1.xxx) and voila, you got it.

    Now you can try and use wol (for Linux) or this one (for Windows) to remotely turn on your computer. For this you will need your routers public address (I recommend using DynDns for that), and the MAC address of the computer you want to wake up.

    cheers =)

Back to top