Friday, August 16, 2013

Chromecast on the Open-sourced Asus RT-N65U firmware

After 3 hours of fiddling around with settings, I finally got my Chromecast up and running. Video played from Chrome websites runs smoothly.  The setup was a bit frustrating, but once all of that's taken care and out of the way, things are smooth from then on. I just wished there had been a bit more information provided about network router settings or an explanation of what the setup process involved so that I could figure out what settings I needed enabled.

There are several things that you need to be mindful of:

1. The Chromecast stick needs to be able to send UPnP packets to whatever device you are using to configure ChromeCast. If you have a software firewall policy on your computer, you'll need to make sure that it accepts incoming connections for the ChromeCast app -OR- for UDP ports 32768 - 61000. On my MacBook pro, I had "block all incoming connections" enabled by default. You'll need to disable this, or make an exception to the relevant UDP ports. If you don't have admin rights on your computer, a work around is to use your phone or tablet where there isn't a firewall setting by default. 

2. If you have dual wifi mode enabled (i.e., 2.4GHz wifi and 5GHz wifi), you'll need to disable the 5GHz wifi.  Make sure UPnP packet routing is enabled.  NOTE: You do NOT need to allow UPnP packets through your router's firewall. Allowing incoming UPnP packets from the outside world into your LAN is a bit dangerous.  You only need to make sure that UPnP packets can be routed internally on your LAN. 

3. Make sure AP Isolation is disabled. On my router, this is two settings. "Set AP Isolated" and "Isolation between Main and Guest AP". Both have to be disabled.

4. Finally, if you're still struggling with getting ChromeCast to connect:
  - Turn on IGMP Snooping.
  - Disable WMM and also disable Packet Aggregation temporarily.
  - If you can, set the multicast rate to HTMIX (1S) 30 MBps

I'm using the rt-n65u firmware hosted here (https://code.google.com/p/rt-n56u/ ) and had to make the following changes:

Under Advanced Settings --> Wireless 5GHz:
  - Enable Radio = OFF

Under Advanced Settings --> Wireless 2.4GHz:
  - Goto Professional tab:
  - AP Isolated = OFF
  - Isolation between Main and Guest AP = OFF
  - Enable IGMP Snooping? = ON
  - Multicast Rate (Mbps) = HTMIX (1S) 30 Mbps
  (optionally, you can change this back later):
   - Enable Packet Aggregation = Disable
   - Enable WMM? = Disable

Under Advanced Settings --> LAN --> IPTV:
   - Enable multicast routing = ON
   - TTL correction for multicast packets = NO
   - IPTV UDP Multicast to HTTP Proxy Port = 0   [disabled]
   - eXtensible UPnP agent (xupnpd), Web port = 0 [disabled]
   Multicast traffic - WiFi 2.4 Ghz
   - Enable IGMP Snooping = ON
   - Multicast Rate (Mbps) = HTMIX (1S) 30Mbps

Under Advanced Settings --> WAN
   - Enable IGD UPnP = NO   [You'll never want to allow WAN UPnP packets in] 

[Edit: 2014.02.02]:
Following the advice of one of the comments, try turning off IGMP snooping after setting up Chromecast. It seems to have resolved issues with dropped casting connections. Also, try enabling WMM as well. I'm testing this pre-Superbowl (http://msn.foxsports.com/foxsportsgo/)

16 comments:

  1. I am still having problems getting my laptop to see the Chromecast through the Google Cast extention. I still am getting No Cast Devices Found even though I have Ready To Cast on the TV. I am going to recheck all of my settings with these. I have the RT-N65R version of this routers. The only setting I don't have is Isolation between Main and Guest AP and the Multicast Rate (Mbps) = HTMIX (1S) 30 Mbps isn't quite worded the same, I think mine says HTMIX 15/30 Mbps or something close. Any other suggestions?

    ReplyDelete
  2. Check your firewall settings (I overlooked this on my macbook). If you're using OSX, the firewall settings may be disabling incoming connections to Chrome (which you need for the chromecast app).

    ReplyDelete
  3. Also, by firewall settings, I mean the settings on your laptop (not your router).

    ReplyDelete
  4. This comment has been removed by the author.

    ReplyDelete
  5. I'm having the issue after I update my routers firmware.

    ReplyDelete
  6. Interesting that this and other sites recommend turning IGMP snooping **on**. I had trouble reconnecting after the ipad or phone went to sleep unless streaming stopped or I rebooted the Chromecast until I **DISABLED** IGMP snooping on my Asus RT-AC66U.

    ReplyDelete
  7. Have this router with these settings as you have said and still cannot get it to work. Do I need the open source firmware to make this happen?

    ReplyDelete
  8. I'm using the open-sourced version of the firmware. I had enough problems with Asus' own firmware when I first got the router (lots of random crashes!) that I ended up downloading the open-sourced firmware. It's more stable. I'm not sure how to get Asus' version of the firmware to work with Chromecast.

    ReplyDelete
    Replies
    1. Ray,
      Where do you get the "opensource" firmware for the Asus N65U?
      Thanks

      Delete
  9. Opensource firmware from http://code.google.com/p/rt-n56u/

    ReplyDelete
  10. Just bought Asus RT-N66U & your instructions worked perfectly to get my Chromecast connected. Thank you for the helpful post!

    ReplyDelete
  11. Thanks! Switching off the 5GHz network issue fixed it for my Google Home. And also the erratic behavior with my Chromecast that I've been struggling with for a long time. (Frustrating to lose the 5GHz of course, but hopefully a decent trade.)

    ReplyDelete
  12. Awesome, turning off the 5ghz radio did it for me.

    Thank you.

    ReplyDelete
  13. The laptop has specific tech specifications required for some streaming, so be sure to checkout their website for that before purchasing. If your computer works, you'll be able to stream one of the tabs in your Google Chrome browser to your TV. chromecast audio multiroom

    ReplyDelete