We have provided a public AMI with everything all setup, but if you are interested in making your own AMI, we have included the steps we took.
-
Spin up a g2.2xlarge instance running Microsoft Windows Server 2012 Base (make sure to use spot instances as this will save a ton of money).
-
Follow steps 2-6 from this wonderful tutorial. Note that we will are using a different method of streaming than described in the turioal above, but the basic windows setup is still applicable.
-
Block access to the following nvidia websites by adding these two lines to your hosts file:
127.0.0.1 gfwsl.geforce.com
127.0.0.1 services.gfe.nvidia.com
-
Download v2.5.14.5 of the NVIDIA GeForce Experience (we have tested this version, but it's possible that newer versions will work too)
-
By default, GFE only works with GTX graphics cards and not the k520 included with the g2.2xlarge instance. Therefore we must replace the device id of a whitelisted graphics card with the device id of the k520 (118A). Follow steps 2-6 from this XDA developers post.
-
Reboot the instance.
-
Since Microsoft Remote Desktop messes with the graphics driver, we will setup a VNC server to interact with the instance. We used TightVNC.
-
Perform all Windows updates and install the following features to Windows Server 2012.
.NET Framework 3.5
.NET Framework 4.5
Quality Windows Audio Video Experience (qwave)
-
Install applications you want to stream to the Pi. We installed Steam and Blender.
-
On your raspberry pi, run
moonlight pair <ip address of instance>
. Your pi will display a pin code that you should be prompted to enter on your instance. -
Test your pairing by running
moonlight list <ip address of instance>
.