yashsingh1/xdaforums huggingface dataset:
[Google Chromecast] davidinfoman:
Could someone start a NEW thread for Leonardo Micro device.

The combining the orginal teensy info with the Leonardo info is very confusing and is spread over 66 pages.

Maybe start with the easiest way to do with, and all the ATMega32U4 devices known to work.

So it's all in one place. The guys with the Teensy come to this thread, and the guys with ATMega32U4 based chip go to the NEW thread.

Maybe one of you guys that already did it, and found the easiest way to do it could be Orginal poster, and could give credit to others that helped you do it.

Thanks
[Google Chromecast] elborak:
If you change your options to show 50 posts per page, it's only 14 pages... :)

The Teensy (2) is an ATMega32U4 based board.

It don't think it's that confusing, especially as the original hex files do work with Leonardo-like boards (other than not flashing the LEDs). I agree that it would be nice to have the OP updated to mention alternatives to the Teensy, but it's really not that big a deal.

But you're free to start any thread you like. It will sink or swim on its own merits.
[Google Chromecast] ArduinoHubcapV-USB:
V-USB Arduino Pro Mini Atmel328P

Will This work With Arduino Pro Mini With V-USB bootloader? I do not have access to anything else at the moment!
[Google Chromecast] elborak:
ATmega168, so no.
[Google Chromecast] manaox2:
I have previously rooted a different Chromecast, but got a new refurb in and didn't want to risk updating it before attempting to root. Doesn't seem like the root took. But now, I can't get the Chromecast app to recognize it when I connect to it via ad-hoc. I'm going to try it on another power outlet, the setup screen comes up normal with the name of the network and the link to setup, just can't get it to pair. Any ideas?
[Google Chromecast] bhiga:
Did you try both the 12xxx and 16xxx images? One of them should work unless the currently-shipping refurbs are now 19084, which is doubtful, but not impossible.
[Google Chromecast] manaox2:
Ok, never mind, thank you. The root succeeded. The problem with not being able to connect to setup was just with my G3 and Chrome cast app for some unknown reason. I managed to get it done using an S3 instead.
[Google Chromecast] manaox2:
Double post
[Google Chromecast] skivnit:
Too bad they don't sell teensy here :( guess I'll have to do without root. Good job guys either way
[Google Chromecast] elborak:
As has been mentioned many times on this thread, most ATMega32U4 boards (and any Leonardo clone, which are common and cheap) will work.

Leonardo clones are < $6US shipped from China, as long as you're not in a hurry.
[Google Chromecast] speakxj7:
fyi

got one of those recent refurbs on groupon for 16 bucks, came in great condition.

arrived with v15098, & used the 16xxx hex.

worked great!
[Google Chromecast] skivnit:
Do you have a link?
[Google Chromecast] crnkoj:
Just write atmega 32u4 into eBay. Might help if you say where you are from.
[Google Chromecast] skivnit:
Morocco no eBay or Amazon here I shop electronics whenever I travel
[Google Chromecast] by3times1minus1:
wouldn't you have to use the the 12940 hex for v15098?
[Google Chromecast] crnkoj:
Oh, that's a different problem than. What about alibaba? Or check before you travel if you can get it at a shop in your next travel destination.

---------- Post added at 09:02 PM ---------- Previous post was at 08:47 PM ----------

Oh, that's a different problem than. What about alibaba? Or check before you travel if you can get it at a shop in your next travel destination.
[Google Chromecast] elborak:
Search for ATMega32U4 on AliExpress. One example is # 1722453700; that one is currently $7.65US shipped to Morocco.
[Google Chromecast] h8heat:
Leonardo-R3-Pro-ATmega32U4-Board-for-Arduino

I picked up a refurb chromecast from the groupon deal. Version is 12940. I am in the process of ordering the arduino board and I found this on ebay.

http://www.ebay.com/itm/1PCS-Leonar...283?pt=LH_DefaultDomain_0&hash=item1e92db7ee3

It has the ATmega32U4 chip on it but it is the R3 pro and not micro pro that is being used here so will this work?

Also do I need to load any drivers for Win7 64 bit to recognize the board.

What program do I use to flash the hex file?
[MENTION=2640163]elborak[/MENTION] - I got your leonardo 12940.zip. Will this work on my CC?

Any steps to do this would be great!

Thanks
[Google Chromecast] skivnit:
Thanks bro but I found a cheaper one now just need to know which would work http://electromaroc.com/2-arduino
[Google Chromecast] Shadow128:
That hack sounds great.

But is this ONLY with the Teensy++ possible?

I've a (what I think) similar developer board with AT90USB646 chipset on that board (labeled with grove key)

Maybe it is also possible with that board?
[Google Chromecast] elborak:
I'm not sure why you think this is cheaper; the least expensive item on that page (which wouldn't work for this task anyway) is over twice as expensive as the item I mentioned.

---------- Post added at 01:40 PM ---------- Previous post was at 01:39 PM ----------

Have you not read a single post on this very page (where we discuss alternative boards)?
[Google Chromecast] skivnit:
If you add the cheapest delivery it amounts to 45 usd, the other ones cost less and are delivered next day.. Any one of them useful? I'm not into programming so i have no idea which is which
[Google Chromecast] elborak:
Clearly we're looking at different things:

It's slow, but it's cheap.
[Google Chromecast] skivnit:
Hehe 15 to 60 days I'm very impatient I can't have my cc sitting here for 60 days. So the site I gave u is based in Morocco. The r3 should do it right?
[Google Chromecast] elborak:
The Leonardo R3 (there are multiple "R3" boards listed), yes. It's labeled as a genuine Arduino Leonardo (though whether it really is I can't say).
[Google Chromecast] skivnit:
Thanks mate for all your help. I'm ordering the Leonardo R3 should be getting it tomorrow then I'll hopefully root my cc
[Google Chromecast] crnkoj:
The teensy++ uses an AT90USB1286 mcu. Probably the only difference is the size of the flash yours being 64KB, the ++ being 128KB, if I understand that correctly. Here you can see the specs of the ++ https://www.pjrc.com/teensy/

If the chips are otherwise compatible it should work in theory, you just need to recompile the exploit for your mcu/board.
[Google Chromecast] Mootje2009:
Root UK

Is there anyone living in London (UK) who can root my device, pm me if you can.

Cheers :good:

UPDATE: My CC version is 19084 and I read that Google patched HubCap exploit :(
[Google Chromecast] derride8:
Can I still root my chrome cast after using it first? (I'm new to this thread, so any help is appreciated)
[Google Chromecast] Srandista:
If build version is lower then 19084, then yes. If it's updated to this version, then unfortunately no.
[Google Chromecast] dwarf_t0ssn:
Got a cheap Arduino Leonardo R3 clone (7 bucks shipped) from China today and managed to root 2 Chromecasts with it. Rawk.

steps:

-grab the arduino IDE .zip from the arduino site; it has the drivers for Windows. Extract it somewhere.

-Plug Leonardo in, then go to device manager...update drivers....from location etc...browse for drivers folder inside the extracted IDE folder. It'll install drivers, reboot PC (I did anyway).

-Plug arduino back into PC after reboot (NOT a hub...a PC USB port!)

-use arduino builder by loading hex, then selecting COM button for your arduino. Upload should take around 6 seconds and show completion stats. If it hangs in builder, make sure arduino isn't plugged into a hub or something :confused:

-Disable internet. Can leave wireless running to help with configuring chromecasts once rooted if you wish.

Then just follow the steps and know that the Leonardo green LED won't flash or anything, but having the CC plugged into HDMI port of TV/monitor can give you feedback (that it's working) during the process.

-Confirm root before enabling Internet.

Thanks to all who chimed in about the clones and Team Eureka for making it all happen! :good:
[Google Chromecast] gargash:
I have 2 Chromecast on the newest firmware in the US. I also bought the teensy 2 and all the required materials, I have read previously in the sub-forum that the newest firmware (build 19084). I was wondering if there was plans to work in the new version of the root or is that a whole new monster to tackle. I had attempted but to no avail. I just wondered if there was any plans from you guys with brilliant minds to update to include 19084. I went and bought two of them at the time as hubcap was new and was waiting on my teensy. in that time i hadn't noticed it updated (although i am aware that it does it automatically in the background). Any info would be nice as i shutter to have to buy new ones and get rid of these. Any insight is helpful and appreciated.

Also to confirm i did use the teensy 2 hex 16664 and not the + version.

used an ota cable i made and attempted with both a portable power source and a wall adapter

I have all the software loaded and every step before flashing went without a hitch

It did upon first flash start; the led on the chromecast went white; then went red; 30 sec passed it went white again; plugged usb Drive in OTA cable and pressed button again, however on screen when i plugged it up to watch the flashing process it gave a box like the off air signal from back in the day.

I have the most recent version of Eureka Rom, and all the hubcap and other stuff

Again appreciation for your hard work and making this originally happen, i look forward to any new information.
[Google Chromecast] superdusto:
I have followed the instructions to the T and have even tried both hex files. The Teensy 2 never flashes it's led after I program the HEX that is in the zip file. I tried nonetheless and all I see is a bunch of colored lines on the screen and the chromecast light just stays a solid red with nothing happening.

Any help would greatly be appreciated.
[Google Chromecast] elborak:
As the bug which this method exploited has been closed, a new root is essentially starting from scratch. And given how long it took to find and exploit this hole, I wouldn't hold my breath.

---------- Post added at 02:03 AM ---------- Previous post was at 02:02 AM ----------

What firmware version is your CC?
[Google Chromecast] superdusto:
I looked it up via cmd but forgot how to do it. Can you help me figure out how to find this out?
[Google Chromecast] elborak:
I'm confused. You need to know the firmware version in order to know what hex file to use, so how did you attempt rooting without knowing?
[Google Chromecast] superdusto:
Neither hex file works
[Google Chromecast] elborak:
You had your Internet connected while attempting to root?
[Google Chromecast] Johan1976:
There is a new major bug in USB standard which is not possible to patch with software. Would it be possible to use this USB bug to make a new root exploit?

http://mobile.geek.com/latest/254840-an-unfixable-usb-bug-could-lead-to-unstoppable-malware

Skickat från min GT-I9505 via Tapatalk
[Google Chromecast] Srandista:
Firmware 19084 is not rootable. Only firmwares 17977 and below are.
[Google Chromecast] superdusto:
Could it have updated without the internet?
[Google Chromecast] elborak:
How could it possibly have updated without the Internet?
[Google Chromecast] Srandista:
Did you connect CC to WiFi anytime in last month?
[Google Chromecast] superdusto:
Not that I am aware of. I am just getting it replaced via amazon and will hope for an older model.

I am guessing there is no news about anyone working to crack the new firmware.

---------- Post added at 02:10 AM ---------- Previous post was at 02:02 AM ----------

Can I Teensy a new one out of the box if it has never been booted?
[Google Chromecast] Srandista:
Yes, in fact, it's the only way, how to root new CC these days.
[Google Chromecast] linuxbman:
I also have a Leonardo R3 clone from China, but am having no success.

I've flashed it with the 16667 hex file to the Leonardo, and when I plug it into my linux box there is something in dmesg about hub with to many ports, which I understand is a good sign. I have tried to get the root process working, but have gotten nowhere.

I read somewhere early in this thread that I need to press the reset on the Leonardo before I connect it to the Chromescast. Did you? Can you provide anymore detail on how you did it with the Leonardo? When do you stop holding down the CC button at the first step? Before it goes red, after?

I am usually quite good at this stuff, my lack of success with this is driving me nuts.
[Google Chromecast] dwarf_t0ssn:
First, if you flashed the hex to Leonardo and the LED is solid green after unplugging/plugging it, it is good to go. No need to connect it to PC (linux or otherwise) after that is accomplished.

Also, this is the exact clone I have and was successful with (for a clone, it looks very nice): http://www.ebay.com/itm/291187732922?_trksid=p2060778.m2749.l2649&ssPageName=STRK:MEBIDX:IT

I'd be happy to tell you in detail how I did the common (to any teensy, clone, etc) procedure. It's only a bit tougher I guess because you'll get zero feedback from the Leonardo; just has a solid green LED when it is "ready and able to work". I flashed regular_16664.hex to my Leo since I was rooting two older Chromecasts (CCs) that were refurbs (bunch of Groupon refurb buyers ITT, I'll bet).

Plug in all items to the OTG cable except for the CC. I waited until the yellow LED on the Leo stopped flashing and it stayed solid green. THEN I quickly grab the CC, hold that button down, and connect the USB from the OTG cable to it, and let the button go once connected and the CC turned red and solid iirc (a few seconds tops), completing the hookup. Basically, don't let it go while anything appears to be getting "to a ready state".

Side note: If you watch the video on youtube, it is a huge help in knowing what the CC LED will be doing at any point in this process, also. I must have watched it 20 times.

Anyhow, it'll be obvious by way of LED color change on the CC that the Leo did its thing and the CC will be wide open and vulnerable. Then it is a simple matter of taking your sweet time to disconnect the Leo, hook up the formatted USB (note: my Windows 7 couldn't explore the formatted USB, but Ubuntu could just fine...if you want to check it out before using it) and press the CC button once. Then I turned my monitor to HDMI and watched the "being rooted" screen until the CC rebooted and showed the normal "set me up" screen. Process done.

Note: The "being rooted" screen was wrong about the CC LED color also; solid red CC flashed fine and had no "flash error". Another note: don't count on this being the case, I might have remembered this aspect wrong. But I'm pretty sure both times I thought "it's solid red and flashed fine". YMMV.

Then set up with chromecast app. If Internet is disabled but wireless is on, it'll say it cannot connect even if all details are correct. Back out of the chromecast app and restart it....the chromecast should say "ready to cast" upon refresh. Then select that CC, find the IP address of it in lower left (forget which screen), and type that IP into any network connected browser. Should see the Team Eureka logo and web panel if all went well.

That about covers it from my angle. Good luck.
[Google Chromecast] linuxbman:
Thank you for all the info!!

This is the leonardo I go : http://www.dx.com/p/diy-eduino-leonardo-module-blue-black-213956#.VDfUIPldWVM

I'm wondering if it didn't flash the regular_16664.hex file properly. Like I said in my original post, someone in this thread mentioned that if you plug the arduino into a linux machine, it should say in dmesg "hub has too many ports"

http://xdaforums.com/hardware-hacki...ot-release-t2855893/post55448945#post55448945 which mine does.

However, you mention in your post that the LED on the leonardo should be green. My ON LED and LN LED are red when I plug it in. If I hit reset, the LN pulses about 15 times, then just the ON LED stays lit, and is red. Not sure if it's because this is a clone and they used single colour LED, or there is an issue with the the .hex file I flashed.

Any idea how I could flash another .hex to this? I know someone posted a .hex file made for the Leonardo that will flash the LED like it does on the Teensy. My understanding is that the bootloader has been replaced on the Leonardo, so flashing a new .hex file is not easy.
[Google Chromecast] dwarf_t0ssn:
Yeah my L and ON LEDs both come on at first. The L pulses (yellow...pulses like "breathing") and the ON LED is solid green. Soon after, the L LED goes out and stays out for the duration of the hack.

Posted a (crappy) video demo of it booting up here: https://www.youtube.com/watch?v=eUqLAqnSV0Q

Given the fact that your clone is ever so slightly different (no arduino logo is most obvious difference when not powered on), it seems likely that they might have used different colored LEDs too. But I could be wrong about that. And if Linux said what it should when you plugged in the arduino, I'd think it is ready to go. It sounds like it boots up the same exact way, only red.

IF the red LED means it wasn't flashed correctly, I'd still try. If flashed wrong, it simply won't allow the rest of the CC hack to happen, and thus it isn't much of a "risk" (i.e. bricking) to try. You've little to lose by trying, imo.

Regarding re-flashing another hex to the arduino: I have no clue about that. So you heard that one cannot (easily) flash a different hex once flashed with one of them? If so, I guess no big. Was cheap and served its purpose.

I saw the tweaked hex with LED flash for Leonardo, but I needed the hex for older CCs (I got two refurbs with older firmware on them), so no blinken lights for me. Not that it really mattered too much since I just used PC monitor to get visual confirmation the hack was running, etc. The part where the arduino runs the exploit was over fairly quicly; less than a minute, maybe even 20 seconds or so tops.
[Google Chromecast] linuxbman:
You are going above and beyond with your help. Really appreciate it.

I've been researching, and it is possible to reflash the Leonardo, I just need another piece of hardware. I initially thought that was the problem, and tried using my Arduino Due, but that seems to not be working for some awful reason.

The only thing I can think of now is the OTG cable I am using. I must have bought the wrong one. http://www.dx.com/p/usb-female-to-micro-usb-male-usb-male-otg-host-cable-black-155233#.VDgGmvldWVM

Will try to make my own this weekend. Luckily I work in IT, so I have spare cables lying around everywhere.

Thanks again for all your help.

And if anyone can shed some light on how to reflash a Leonardo using a Due, it would be greatly appreciated.
[Google Chromecast] elborak:
As you already mentioned that you got the dmesg text about "too many ports" when you plugged the Leonardo into your Linux box, you have already confirmed that it has been flashed correctly. No reason to reflash. If you do have to reflash for some reason (e.g. flashed the version for the wrong CC firmware revision), it's the exact same process as you followed to flash the first time. The bootloader does NOT get replaced (unless you did something very unusual).

Not to harp on the obvious, but have you confirmed what firmware your CC has installed? Many of the failed roots are due to the very simple fact that they accidentally let the CC update.
[Google Chromecast] dwarf_t0ssn:
:good: Don't mention it. It might be high time for that Leonardo/clone CC thread, but at the least maybe a google search will go easier now for someone. Big thanks in order to those who mentioned the clones being viable.

At first glance I thought you had the wrong kind of OTG cable, but the one you linked should be powered the same, just mine has a micro USB female for power. Not sure though. I would think data would flow the same too.

This is the OTG I got, and it's very cheap: http://www.amazon.com/gp/product/B00CXAC1ZW/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1 but I would kludge one together also because why wait for shipping heh.
[Google Chromecast] linuxbman:
Confirmed it was the cable.

CC now rooted, along with 3 others.

Thanks again for all the help.
[Google Chromecast] Purah:
undo flash process on usb flashdrive

hey does somebody know how i can reverse the process or undo it to restore my 8gb usb flashdrive?

108mb arent that much for usage with school.
[Google Chromecast] bhiga:
Boot a Gparted LiveCD and clear the partitions then repartition. You can also use diskpart in Windows but that is more dangerous - easier to kill the wrong device.

ChkFlsh from the Mischa something (don't have the site handy but he's Eastern European) can also low level format the drive as well as test it. Right click Run as Administrator for full functionality on that one.
[Google Chromecast] 282rocket:
16664.hex file

I have been reading thread after thread and very confused, could someone please assist me to where I can find 16664.hex file
[Google Chromecast] bhiga:
It's part of the package in the first post. There are multiple items required.
[Google Chromecast] superdusto:
Hard Disk Low Level Format Tool
[Google Chromecast] Shadow128:
With that board it is also possible to flash the bootloader. You've only to compile the source with different settings: AT90USB646, USBKEY and 8000000

On my cast it is working very well :D
[Google Chromecast] new2and:
Pro Micro, Arduino Builder Questions

Thanks for this write up. I hope someone can clarify a few points for me. I'm still waiting for my OTG cable but in the meantime I'd like to get the files on the Pro Micro board.

1 - The boards for the Leonardo Micro and the Pro Micro look different, but can they use the same Leonardo files (page 59 called LEONARDO_16664.zip) or do I have to use the original regular16664hex file?

2 - When using Arduino Builder, (For the Pro Micro board) in the drop down board type would I select Arduino Micro?

Thanks.
[Google Chromecast] woody1:
Not sure where I am

Here's my setup . I have a Leonardo R3 ATmega32u4 (probably a clone). I'm trying to flash a CC v15098, so according to the guide, I should be using the 12940 hex file.

I tried using both the regular_12940 hex file and the LEONARDO_12940. Using those, and with careful timing, I got the CC to go into a state where the red light stayed red, but I was unable to get the file on the USB drive to load in the 2nd step.

So, finally, I tried using the regular_16664 hex file and this time, the CC went to blinking white. I was then able to run the USB file and initiate the root procedure, but the CC went red and stayed red, which, according the info on the rooting screen, indicates an error. After the CC rebooted, I now see that the version has changed from 15097 to 17977. There's no indication that the device is rooted on the CC screen or the app. So, before I connect the internet and possibly foul up my CC, does this version change mean that I'm rooted? Is there some other way to verify it?

UPDATE:

I figured out that this CC was successfully rooted! I went ahead and rooted 2 more CC devices.

The main thing I discovered is that the 16664 file is required for some devices with version <=16664. I had 2 devices with v12947 and they required the 12940 file. So, if somebody can update the guide to determine which versions need which file, that would save future rooters some time!
[Google Chromecast] skivnit:
Still waiting for my Leonardo.. China is a long way from here. The procedure for Leonardo should be put somewhere for future reference
[Google Chromecast] megaphat:
A word of caution to those of you using the Pro Micro/Arduino Leonardo clone.

We successfully rooted the CC with the Pro Micro and the instructions above. It was very easy with the precompiled Leonardo binary.

However, subsequently we could no longer program the Pro Micro over USB. No matter what reset combination we tried, the COM ports did not appear and USB 'device not recognized' . The PC eventually froze up. Probably the Root Package doing its job lol.

Eventually we had to use a programmer and Atmel studio to erase the programming and reflash the bootloader over the serial pins. Working fine now.
[Google Chromecast] Visual Studio:
Nevermind