yashsingh1/xdaforums huggingface dataset:
[Google Chromecast] elborak:
So I assume the Micro starts up when you apply power, but the LEDs on the Micro never started flashing. Weird. Sorry, but I think I've run out of ideas (beyond the obvious and frustrating "keep trying").

All I did was:

1. Plug Micro into OTG cable.

2. Power cable from USB charger. Micro powers up.

3. Hold CC button, plug into OTG cable and try various release times. Took a few tries.

When I had the timing right, CC LED went white->red (release button)->white (solid, not flashing) and then the Micro started flashing the LEDs.

I was on a different CC firmware rev, but it was >= 16664 so I used the same hex file I posted.

I suppose it's possible there's something wrong with your OTG cable, but if the CC & Micro are both getting power that sounds unlikely.
[Google Chromecast] FirmShark:
OTG is confirmed as working as tested on my Nexus 5 daily when I use a flash drive for extra storage. I am currently uploading the worlds worst video to show the order that I am connecting in. Even showing that the CC is going into bootloader mode (even though it takes me a bit getting the cable plugged in as I am doing it one hand). The micro usb has been verified as a data cable as well as I use it to transfer things to the laptop from the Nexus 5. Will add link to video once it has uploaded to YT.
[Google Chromecast] Srandista:
I don't know, how about you, but for me, when something related to electronics is not working, I always do a cross check. You already start with replacing Teensy for Arduino, but why did you stop there. There is guy on this forum, who had to use 3rd OTG cable and 4th USB drive. You always write, that you are sure, that cable is ok, but did you try another to be absolutely sure? On your place, I will be trying to redownload file, then replace cable, then USB drive, and if nothing works, well, then I will go to store, buy another one CC and sell your current, because is obvoius, that there has to by something wrong with it.
[Google Chromecast] FirmShark:
Hubcap root Chromecast: http://youtu.be/0toV9poeZlc

Link above as promised.

With regards to replacing things. I have downloaded the software 5 times now. I have 2 OTG cables that are both confirmed as working as I use them to transfer data from a USB drive to my Nexus 5. Ive used 4 different micro USB for the teensy/arduino. Rehashed the teensy/arduino numerous times. Tried different power cables as well in case there wasn't enough power. Can't even get to the stage of trying a different USB drive as I can't get there exploit to work at all.

I think the CC is the fault but do I bother risking buying another CC to have the same issue or do I just go back to using it the way it was?
[Google Chromecast] elborak:
Impressive job holding the button and plugging in the micro-USB with one hand!

I don't see anything wrong with your technique. You've already confirmed that the Micro is flashed correctly as it shows up as a hub in Windows, and the version of firmware on the CC, so I'm at a loss.

I do have another CC coming in the mail any day now. Once it arrives, I'll root it and pay careful attention to the steps & timing to see if there's any advice I've overlooked.
[Google Chromecast] TRoN_1:
I had the same problem, the CC led would stay red. However, when I plugged my CC into Y cable, my dev board(arduino micro clone maybe) would always reset(it goes to bootloader mode for 6 seconds). So I connected everything to Y cable except power, then while holding CC button I applied power. Now, when I held the CC button like you did, the CC led would stay red. When I released it at the instant it goes from white to red, then the CC led would do something strange. Red for a few seconds - white for an instant - red a few secs.- white a few secs then repeat. After seeing this sequence repeat a few times, I hit the CC button. That's when my dev board(flashed with astar_16664) began to do its thing.
[Google Chromecast] ImCoKeMaN:
Have you tried loading the flashcast image from the USB from the state after the video? It's known that the CC will stay with a red LED with the newer firmware versions (also it's noted in the first post and I missed it until re-reading it from seeing another person resolve their issue)
[Google Chromecast] elborak:
The Micro didn't flash the LEDs, so it never loaded the exploit payload to the CC.
[Google Chromecast] ImCoKeMaN:
Just something to check depending on the hex/board combo. I can see from the history there's been a lot of different combinations over different attempts. Another thought is it looks like the power is coming from the laptop in the video, have you tried powering it from just a power supply? if for some reason there is more than just power attached to the OTG wires it could have an affect.
[Google Chromecast] FirmShark:
The power comes from a 2 amp wall charger not the laptop. Tried having it plugged into the TV to see if anything was happening but see nothing.
[Google Chromecast] ghowse:
Sorry to hear about your difficulties. I had troubles initially too but have now successfully rooted 2 CCs (and have a NIB on standby with no particular purpose in mind). Is there any chance that you have been OTA upgraded by Google without being aware of it? What ver is your CC?
[Google Chromecast] FirmShark:
The CC is verified as 17977.
[Google Chromecast] ghowse:
For me the critical stage was the timing of the CC button press after poweringup. But your Youtube video looks OK so I am out of suggestions (apart from grabbing another NIB CC if you want root).
[Google Chromecast] KAPABLE-K:
Anyone here in Brampton ON Canada that wouldn't mind rooting 2 CC for me today or anytime over the weekend? Please PM me.
[Google Chromecast] Srandista:
Ok, finally after almost a month after disconnection CC, I got all necessary items (OTG Y cable and cheap clone of Arduino Micro) and my CC was rooted in less then 5 minutes! :)

Thank you, fail0verflow, GTVHacker, and Team-Eureka, you made my day! ;)

P.S.: If anyone is interested about rooting their CC, and is living in Czech Republic, just write me PM.
[Google Chromecast] FirmShark:
Just went out and bought a new CC after my troubles above and my new CC is now rooted. Not sure what is wrong with my first CC so I'm going to give that to my dad! Thanks for the help guys!
[Google Chromecast] ClearD:
Had been reading your saga, firmshark, and very glad you're rooted now!
[Google Chromecast] nidhish91:
Anyone in India who has the tools to root this?
[Google Chromecast] dayr:
I am having problems. My ChromeCast is new (well, it some weeks, but was in the box, waiting for my teensy to arrive).

I install the hex (regular 12940), connect everything and the teensy starts blinking. After 30 seconds, it stops blinking but the light stays OFF (instead of orange) and the light in the chromecast stays red.

Tried 3 times from the beginning.

Ideas?

Thanks!

--edit--

Solved: had to use the 166xx version.
[Google Chromecast] aicragleon:
Teensy model

Can Teensy 3.0 or 3.1 work or does it have to be 2.0 or ++ 2.0? It looks like ++ 2.0 is the most expensive of the lot. Why is this? h t t p s : / / w w w . pjrc.com/teensy/

Remove the spaces from the link. I am not able to post URLs.
[Google Chromecast] Max|XDA:
The Teensy 2 and 2++ use an Atmel 8 bit processor and the flash files are especially made for them, The Teensy 3.0/1 are a different beast completely with a 32bit Arm processor.

The Teensy 2++ probably has the most expensive processor, faster doesn't always mean more expensive.

Thats why you need a Teensy 2 or 2++ or equivalent.
[Google Chromecast] Srandista:
No, you can't use Teensy 3 or 3.1. But you can use another (cheaper) board with ATmega32U4 chip on it.
[Google Chromecast] aicragleon:
Thanks

Thank you for your very fast response Srandista. That is what I figured so I ordered the ++ 2.0 version. .
[Google Chromecast] elborak:
Cheap $6 (or less) ATMega32U4 Leonardo clone boards work fine.
[Google Chromecast] aicragleon:
next exploit

Shoot, I got the 19084 update. Let us know when a new exploit comes out.
[Google Chromecast] none1498:
Would this work instead of a teensy

I would like to know if this will work instead of a teensy

i cant post links its avalable on

amazon

item # B00HNHV0QG

and

ebay

item # 321485912904

Pro Micro 5V/16MHz ATMega32U4 Module
[Google Chromecast] elborak:
Yep. I used that exact board to root my second CC. You can get them under $6 from AliExpress, but that takes several weeks for delivery. Under $10 is fair for a US reseller.

Be aware that, as with any Leonardo or clone, the hex files distributed with the original exploit work but don't light the LEDs. If that's important, you will need to recompile with the correct BOARD & MCU defined.
[Google Chromecast] ghowse:
Could be a long wait.

Isn't it ironic that quite a few people (me included) have been buying an additional, new, pre-19084 CC just because they are rootable. In effect, the guys that found the HubCap exploit have increased Google's revenues! Logically then, Google may "accidentally" open the door again in a future OTA upgrade .... maybe the wait won't be that long after all.
[Google Chromecast] aicragleon:
buy a new one

Yup, I may just buy a new one myself. This is kind of like having 2 PS3s, one on CFW and one on OFW except far less money, plus I already have a powered OTG cable and teensy ++ 2.0 on the way. I wouldn't want that to be a wasted purchase since i would really have no other use for them. Or maybe it is time for an Allshare cast.
[Google Chromecast] Srandista:
I really doubt, that Google will intentionally left some expoitable place in CC, just for people like us, who want have their CC rooted. You have to understand, that we are really small minority in sells of CC. And when I see, that these guys was able to find exploit after more than a year, I wouldn't wait for another, and I will just go and buy another CC. CC is really restricted device in terms of possible ways for root, and it can take a very long time/forever to find another root method, at least by my opinion.
[Google Chromecast] none1498:
Thank you

also how would I go about recompiling with the correct BOARD & MCU defined I have never done anything like this before and dont even know where to start.
[Google Chromecast] jamesking420:
Would this work?

http://www.hobbytronics.co.uk/a-star-32u4-micro?keyword=ATmega32U4

How would I connect it to my chroemcast (I ahve a powered Y cable) but it appears to need a USB to USB or something?
[Google Chromecast] Srandista:
Yes, it should work, there is even recompiled hex files specifically for A-Star. You can find them here:

http://xdaforums.com/showpost.php?p=55206962&postcount=324

Then just follow instruction from first post.
[Google Chromecast] jamesking420:
Thank you!

Can you confirm how I connect it to the female USB connector on my USB OTG cable?

Thanks!

James
[Google Chromecast] Srandista:
Just follow this YouTube video, everything is explained there:

https://www.youtube.com/watch?v=S2K72qNv1_Q
[Google Chromecast] jamesking420:
Thanks! I'll look at that when I'm not at work later. It appears though that the a star has micro USB connector, so I can just use any decent micro USB cable!?

Cheers,

James
[Google Chromecast] Srandista:
Yes, you just have to replace MiniUSB cable, which is used for Teensy in video for MicroUSB cable ( I used it too, for connection to my Arduino Micro clone).
[Google Chromecast] moesus:
My rooting "experience"

I thought that I would write up a little information on my rooting experience. Especially for everyone in Europe, where the teensy seems to be hard to get at the moment, at least for a reasonable price. I collected all the information/guides, that I used to root my chromecast in this post. Instead of the teensy I used a "Arduino Mirco Pro" which can be bought for about 12€ (in Germany).

Hopefully this is useful for some of you! :D

"Hardware":

- >=1GB USB Drive

- two USB micro cables

- USB OTG cable (ordered here: http://goo.gl/0geWB1)

- Arduino Mirco Pro (ordered on ebay Germany for 12,95€)

"Software":

- HubCap package from this thread

- Arduino IDE for the drivers (http://goo.gl/rFDOYv)

- AX Loader (http://goo.gl/wtSyXr)

- hex file from this thread on page 59 called "LEONARDO_16664.zip" by user "elborak" (Thank you!)

Once you have all this together prepare everything:

1. Install Arduino IDE and make sure the board gets recognized properly by your device manager.

2. Extract AX Loader to any folder you like.

3. Replace "avrdude.exe" and "avrdude.config" from the Arduino IDE install directory with the ones in the AX Loader folder.

4. Extract the "LEONARDO_16664.hex" file into the AX Loader folder.

This next step gave me a little headache. When you connect the Arduino to your computer it uses a certain COM port when connected. Before that it uses a different COM port during start up, while it is in "bootloader mode". This is the COM port you have to figure out. The way that worked for me was the following: - connect the Arduino to the PC

- start AX Loader

Settings: Arduino: Leonardo; Serial Port: COM port your board has; Hex File:"LEONARDO_16664.hex"

- Click Upload button! This failed, but the COM port shows a different choice now.

- This was the correct "bootloader COM port" I needed.

5. Go to the AX Loader folder. Hold "shift", right click and select "Open command window here".

6. Now enter, but dont run yet:

with ?? being the COM port you figured out after Step 4.

7. Go back to the AX Loader window. Once again click on Upload and shortly after run the command. (Takes a bit of timing, but this was the only way I was able to get my Arduino into "bootloader mode".

If everything went smooth, something like this should appear:

8. Prepare your flash drive. I used Win32DiskImager and the guide from this old rooting video: https://www.youtube.com/watch?v=B6c34jqFHxY

9. Now, you should be good to go with the instructions that come with the HubCap package "README" file. Being as lazy as I am I just followed the video: https://www.youtube.com/watch?v=S2K72qNv1_Q

This is the way it worked for me. Maybe some steps are not necessary and can be done easier. I want to thank elborak and Maxwell2k for providing all the files and instructions to make this possible and of course all the developers for their fantastic work!!! :good: :victory:
[Google Chromecast] crnkoj:
Mind posting a link from where you got your board? Thanks and thanks for the tutorial.
[Google Chromecast] moesus:
http://www.ebay.de/sch/i.html?_from=R40&_sacat=0&_nkw=Arduino+micro+pro&rt=nc&LH_PrefLoc=1

Just search on eBay. Be careful though where the seller is located.

I did get a tip from another user. He used this program to upload the hex file to his arduino:

http://apicdn.viglink.com/api/clic...ms.com&subid=cfcd208495d565ef66e7dff9f98764da
[Google Chromecast] crnkoj:
Was looking at those already myself, but wasn't sure they would be ok as they all seem to be fakes (at least the cheap ones), I think I'll go with the a-star, which was tested to work here earlier and costs in a regular shop almost the same as these on eBay.

Thanks
[Google Chromecast] miniminus:
i managed to get all the software needed for a recompile..

thats WinAVR, the source code, and LUFA librarys,

i even worked out how to reconfigure for the LED's etc .

recompiled, and LED's working, but the USB side of the recompile never compiled properly

as it always showed up as unrecognised, as apposed to USB Host

...

also if you DO have a go, theres already the LEONARDO hardware in the LUFA libary that WILL work on all the cheaper Micro pro boards etc
[Google Chromecast] elborak:
They are not "fakes" (unless they claim to be actual Arduinos). These are all boards based on the same microcontroller (Atmel ATMega32U4).

That being said, it is true that the quality of the low-end Chinese boards can be hit or miss; not a lot of quality control.
[Google Chromecast] ksten:
Not rootable anymore?

Are these no longer rootable? I rooted a couple for some friends a couple of weeks ago, but now when I try it, the teensy flashes orange for awhile and then stops. The CC LED never changes from red to white.
[Google Chromecast] elborak:
http://xdaforums.com/hardware-hacking/chromecast/update-alert-19084-firmware-released-t2867996
[Google Chromecast] Srandista:
Can I ask devs, how exatly Google fixed this bug? I see blog posts on fail0ver blag, I know that there was a lot if's in this root method, but i'm just curious.
[Google Chromecast] elborak:
I've not looked at the update to see what change they made, but given the form the exploit took (USB device overflow), it was probably a simple limit check to avoid buffer overrun.
[Google Chromecast] lojden:
Works great, was done in a couple of minutes, thanks!
[Google Chromecast] spyder03:
I have a Teensy 3.1...which I guess doesn't work with the hex file to give root?? Is there anyway of locking the OTA update on first plug in to preserve its firmware version until I get a 2.0?
[Google Chromecast] Asphyx:
No so don't power it up until you are ready to root.
[Google Chromecast] bhiga:
If they've been in use, they've updated to 19084 by now and no longer rootable via HubCap (or the original exploit).

If they haven't been connected to the Internet, try the other .hex for your board (ie, use 12xxx if you were using 16xxx or 12xxx if using 16xxx).
[Google Chromecast] ksten:
Yup, it needed the other teensy rom. Root #3 successful! Thanks!
[Google Chromecast] stomp_442:
does anybody know if this Micro USB OTG Cable will work for rooting the chromecast?

newegg.com/Product/Product.aspx?Item=9SIA39V17U4986&cm_re=USB_OTG_Cable-_-9SIA39V17U4986-_-Product
[Google Chromecast] elborak:
You can power it up (e.g. if you want to check the firmware version number), but disconnect your Internet connection first.

---------- Post added at 10:58 PM ---------- Previous post was at 10:54 PM ----------

Most people choose one with a female micro-USB socket for providing power (e.g. http://www.amazon.com/gp/product/B00CXAC1ZW/).
[Google Chromecast] Asphyx:
Sure but why take the chance since there is no reason to power up the device unless it has internet?
[Google Chromecast] elborak:
Did you even read my post?

I dare say most folks prefer to know what firmware version they are running before attempting to root so they know which hex file to flash (or if rooting is even possible).
[Google Chromecast] metterschling:
Successfully rooted 2 chromecasts, one just unboxed, one used, both with S/N 41... and stock ROM 16xxx. Disconnected WAN cable from router before starting anything to prevent accidential Google OTA updates that fix the possibility to root. Used Teensy2++ from http://www.hitechstore.de/produkt/teensypp/ and OTG cable from http://www.adaptare-shop.de/public/...x?art=viewproduct&suid=526&productid=46346692

Many many THX to the HupCap and Eureka teams for the excellent work and great documentation, the upgrade went extremely smooth!
[Google Chromecast] crnkoj:
How to flash those images on the a-star? I mean which program should I use. Thanks

Edit: nvm found it here: http://xdaforums.com/showpost.php?p=55205740&postcount=7

and i flashed the hex for astar from this thread. all worked in the second attempt. First i have held the chromecast button too long, one has to let it loose as soon as the astar led starts to blink (something like 1-2 seconds)
[Google Chromecast] Asphyx:
Yes but if he had previously set up internet it could connect and update...

I don't know how savy the user is about how CCast updates do you?

So I tell him to NOT powerup at all, Wait till he can try root and if it doesn't work for him THEN he can worry about what version of the Hex files he needs...

Truth is the 12xxx hex is really only supposed to be used on NIB devices...

So unless this is coming out of a Box it's given that he should be trying the 16xxx hex first.

I wasn't taking issue with what you said but unless he is ready to root he is better off not powering up the unit at all.
[Google Chromecast] elborak:
I don't think we're understanding each other. How could it connect and update if he's disconnected from the Internet (which is what I recommended and started this whole discussion)?

My recommendation is simple:

Disconnect from the Internet and check out the Chromecast. This confirms that it's working (some are DOA) and lets you know the firmware version.

Put it away until you have all of the needed parts, then disconnect the Internet again before trying to root (lest you get the timing wrong on the button, the CC boot normally and update behind your back).
[Google Chromecast] Asphyx:
Right do all that just to see what version he has and then wait for the hardware to root comes and then have to do it all again?

There is no need to check the OS until he is ready to root....

Unless he is trying to check to see if he CAN root which is a bit late to the game considering he is waiting for the hardware he already ordered.
[Google Chromecast] elborak:
"All that"? It takes a couple of minutes. And it lets you get your board flashed, for example, if you're waiting for your USB OTG cable to arrive.

But we don't agree. So be it.
[Google Chromecast] rbeavers:
I got a headache :)
[Google Chromecast] Carlinyos18:
- Is there anyway to use another arduino instead of the micro?? I have the mega adk...
[Google Chromecast] Srandista:
I don't think so, because Mega adk is based on ATmega2560, and Micro uses different chip, ATmega32u4.
[Google Chromecast] elborak:
You need an MCU capable of emulating a USB hub. Anything based on the ATMega32U4 (e.g. a Leonardo, Micro, or similar) should work pretty much out of the box. Others you would need to research, and would likely require code changes.
[Google Chromecast] crnkoj:
I tried it a lot with an arduino mega 2560, which is similar to the mega adk. It has a second mcu on it namely the atmega 16u2 to work as the USB interface . Eventhough I managed to get the corresponding code compiled and uploaded for the 16u2 it didn't work, just got me the a-star micro that was cheapest and had it working in minutes. Retrospectively now i wonder if I should've tried compiling it for the 2560 chip, but I think that wouldn't have worked either, as it has no usb interface hence lufa doesn't support it . So i might suggest that you don't try too hard with the adk and just get a cheap 32u4 based board. I am not sure if those ftdi chips that several arduinos have could be used though.
[Google Chromecast] elborak:
Definitely not.
[Google Chromecast] by3times1minus1:
Would it be possible to make a Leonardo/Micro hex file for the 12940 firmware? I'm new to this, so if it's something I can easily do, I'll be glad to do it myself if you could point me to some easy directions. I figured it might be a lot easier/quicker for a veteran to do though. Thanks in advance for any assistance.
[Google Chromecast] elborak:
Here you go.
[Google Chromecast] by3times1minus1:
Much appreciated! I just ordered my Leonardo Micro Plus on ebay earlier tonight, but it's shipping from China (as is my powered OTG cable). Will report back once I get all my gear in and let you know how it worked. I also just got 2 refurbed CCs in today from the Groupon $15 deal. Both 3A serial numbers, but I'll need to fire them up to see how far they were upgraded on the FW before being sent to Groupon's warehouse.

Thanks for such a quick turnaround!

EDIT: So my first CC I bought new is a 3B serial with FW 12940. The 2 I got refurbished from groupon are both 3A serials with FW 15098. Would I be correct in understanding I could use the 12940 hex for all 3 of these guys? Or do I need to use the 16666 hex for the ones on 15098?
[Google Chromecast] elborak:
If firmware >= 19084, you're hosed.

If firmware < 19084 and >= 16664, use 16664 hex file.

Otherwise use 12940 hex file.