Note: This was tested with OS X 10.10 Yosemite
1) Connect a Cat 5 ethernet cable to your Roku and your Mac's ethernet port (I used the thunderbolt adapter)
2) Go to System Preferences -> Sharing -> Internet Sharing
3) Under "Share your connection from: ", select your WiFi. Then under "To computers using: ", select Thunderbolt Ethernet.
5) Start up Charles and take note of the HTTP Proxy port set under Proxy Settings, by default its 8888. Make sure "Enable transparent HTTP Proxying" is checked.
6) To route all traffic to the Charles proxy, we need to set the following Port Forwarding rule in the OS X terminal:
echo "
rdr pass inet proto tcp from any to any port http -> 127.0.0.1 port 8888
rdr pass inet proto tcp from any to any port https -> 127.0.0.1 port 8888
rdr pass inet proto udp from any to any port http -> 127.0.0.1 port 8888
rdr pass inet proto udp from any to any port https -> 127.0.0.1 port 8888
" | sudo pfctl -ef -
After hitting enter it will prompt you to enter your machine password
7) Connect the Roku to WIred (Ethernet) in the Network settings, and you should get a prompt to accept a connection in Charles once an internet request is made on the device
8-) Note the Roku IP so you can debug using telnet
"tim_beynart" wrote:
Prajwal! It's Tim! We got this working on OSX.
Note: This was tested with OS X 10.10 Yosemite
1) Connect a Cat 5 ethernet cable to your Roku and your Mac's ethernet port (I used the thunderbolt adapter)
2) Go to System Preferences -> Sharing -> Internet Sharing
3) Under "Share your connection from: ", select your WiFi. Then under "To computers using: ", select Thunderbolt Ethernet.
5) Start up Charles and take note of the HTTP Proxy port set under Proxy Settings, by default its 8888. Make sure "Enable transparent HTTP Proxying" is checked.
6) To route all traffic to the Charles proxy, we need to set the following Port Forwarding rule in the OS X terminal:
echo "
rdr pass inet proto tcp from any to any port http -> 127.0.0.1 port 8888
rdr pass inet proto tcp from any to any port https -> 127.0.0.1 port 8888
rdr pass inet proto udp from any to any port http -> 127.0.0.1 port 8888
rdr pass inet proto udp from any to any port https -> 127.0.0.1 port 8888
" | sudo pfctl -ef -
After hitting enter it will prompt you to enter your machine password
7) Connect the Roku to WIred (Ethernet) in the Network settings, and you should get a prompt to accept a connection in Charles once an internet request is made on the device
8-) Note the Roku IP so you can debug using telnet
This method worked for me and I see the http call without any error in charles but https calls does not work. Roku does not have option to install the charles certificate in Roku device. Do you have any input for https:// calls