1. Home
  2. Linux
  3. Force the chromecast to update

How To Force Chromecast To Update

Chromecast is one of the cheapest TV sticks available in the market. It’s got some reasonably tough competition but the Google brand helps it along a great deal. Google routinely updates Chromecast OS. The hardware too has seen a few improvements in the past but hardware improvements mean you have to buy a new device while OS updates are much simpler. There’s no way to defer a Chromecast update. When an update is available, you have to upgrade the firmware. Unfortunately, the update doesn’t always go smoothly. It can fail mid-way or fail to appear at all and there’s no official solution from Google. The good news is, it’s pretty easy to force Chromecast to update. All you need to do is run a simple terminal command.

Prep Your Chromecast

Make sure your Chromecast is turned on and duly configured. It should be on the same network that your computer is. If you use a VPN on your computer, disable it when forcing the update. Also, it’s a good idea to check if there is actually an update available for Chromecast or not before you proceed. This method will force Chromecast to look for an update regardless if one is available or not.

Find Your Chromecast IP Address

You will need to find the IP address for your Chromecast. It’s fairly simple. Open the Google Home app on your iPhone or Android phone. Go to Devices and tap the overflow button at the top right of your device. Select Settings. Scroll to the very bottom of the Settings screen. You will see the current OS version on the Chromecast, the MAC address, and the IP address.

Windows

Open PowerShell in Windows. In Windows 10, PowerShell is shipped out of the box. On older versions of Windows, i.e. Windows 7 and 8/8.1, you will have to install it. Paste the following command in PowerShell and make sure you replace <chromecastIP> with the IP address for your Chromecast.

Invoke-WebRequest -Method Post -ContentType "application/json" -Body '{"params": "ota foreground"}' -Uri "https://<chromecastIp>:8008/setup/reboot" -Verbose -UserAgent "curl"

Mac & Linux

On Mac and Linux, the same command will work. You will still need your Chromecast’s IP address and the Google Home app is the simplest way to get it. Open the Terminal and paste the following command.

curl -X POST -H “Content-Type: application/json” -d ‘{“params”: “ota foreground”}’ https://<chromecastIp>:8008/setup/reboot -v

Replace <chromecastIP> with the IP address of your Chromecast.

Once you execute these commands, your Chromecast will enter update mode. You will see the ‘Fetching update’ screen along with the progress dial. Wait for the update to download and install. Chromecast OS is normally a small download so the update should complete in no more than fifteen minutes.

18 Comments

  1. When i try to update my chormecast 2 using the powershell command but the update doesn’t start.
    Powershell gives a error message:

    VERBOSE: POST http://192.168.0.158:8008/setup/reboot with -1-byte payload
    Invoke-WebRequest : The remote server returned an error: (403) Forbidden.
    At line:1 char:1
    + Invoke-WebRequest -Method Post -ContentType “application/json” -Body …
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebExc
    eption
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommandicrosoft.PowerShell.Commands.InvokeWebRequestCommand

    Any idea how to solve this?

  2. Man, change Word’s single and double quotes with Notepad’s single and double quotes!!!

  3. Well, command was executed and my Chromecast is searching for updates now, but it is always on 0%… Any solutions?

  4. Excellent! For Unix command, you must change ” and ‘ – I think command above was copied from Word or Writer. You can use Termux app to run it on Android. When you run Termux first time, execute curl and see how to install that command.

    • below (changed ” and ‘ characters):

      curl -X POST -H “Content-Type: application/json” -d ‘{“params”: “ota foreground”}’ http://:8008/setup/reboot -v

    • This helped me, thanks. Also, I delved into the Internet to understand what happened here. For the curious, apparently it’s the difference between straight quotes and curly quotes. Straight quotes were invented to save space on typewriters… for some reason straight quotes have outlived their practicality and have stuck around in the digital world. I read an article that emphatically stated that using straight quotes instead of curly quotes is a typo! However, straight quotes have become the standard for coders. So maybe they won’t go away ever.

  5. Thanks for the tips! It didn’t work on the first try (the Chromecast screen hung at 0% for 30 minutes). I then rebooted the Chromecast, then tried it again exactly the same way using Powershell in Windows8.1, and it finally began to update. It took a long time (about 45 minutes) – perhaps that’s because I hadn’t updated it since this firmware: 1.15.38401. At the end of the second time, it hung at 100% for another 15 minutes, then I rebooted Chromecast again manually using my phone. After a little bit of effort and time, I finally, I have cast firmware 1.28.100555 on a first-gen Chromecast! Amazing!

  6. Didn’t finish – no update?

    upload completely sent off: 17 out of 17 bytes
    < HTTP/1.1 400 Bad Request
    < Access-Control-Allow-Headers:Content-Type
    < Cache-Control:no-cache
    < Content-Length:0
    <
    * Curl_http_done: called premature == 0
    * Connection #2 to host 10.0.0.14 left intact

    • the current version is 1.25.90308. If that’s what you’re already running, you won’t get an update. Check the Google Home app to find your current Chromecast OS version.

    • Thanks but this solution hasn’t worked for me neither (tried from Windows). My version is 1.25.90308 but google is saying that the latest one should be 1.26.92486 so I’m confused a little …

    • Try again. I think doing from any SO would be the same. I used Termux app to do it from Android! I thought it would not work because it spent a lot of time, but it works!