A customer required for this new fancy project that the Microsoft Surface tables could be switched on and off automatically. The most obvious solution was to suggest Wake-on-LAN (WOL) for switching on the unit. However, I wanted to make sure that this was supported, but couldn’t find anything on the Internet. So I tried it myself and want to share my experiences with you in this step by step guide. It’s a little odd that there is no specific Microsoft solution, while the company has high interest for saving power (see Windows 7 efforts). The Surface unit consumes +/- 250W and even when switched off it still consumes +/-15W. Using your own alternatives to save on energy should be applauded.
What do you have to do?
- Alter BIOS-settings
- Update network settings in Vista
- Use program to send WOL-packets
1. Alter BIOS-settings
The BIOS of the Surface unit is protected by a standard password. You can retrieve this password from Microsoft Surface Support. Call:
- 0800 76259 for Belgium
- (1)866-425-8880 for US
Make sure you have the serial number of the Surface unit at had. Connect a keyboard and mouse to Surface and start the unit. As soon as you’ve switched it on, hit the DEL key a few times every second so you enter the BIOS. You will be prompted to enter the password.
Enter the password that was provided to you by Microsoft Surface Support. Take care: your keyboard is configured as qwerty!
Choose “Power” using left and right arrows and APM configuration using up and down arrows. Hit enter.
Enable the settings “Power On By PCI Devices” and “Power On By PCIE Devices”. Close the BIOS (saving the settings) and let the Surface Unit startup normally.
2. Alter network settings in Vista
Log on with your administrator credentials. Go to Control Panel, start up Device Manager, expand Network adapters and request the properties page for the network card (Intel (R) Pro/1000 PL Network Controller in my case).
Go to the Power Management Tab and select “Allow this device to wake the computer”. Choose OK to quit the screen. Make sure you have a static IP address, by changing the settings of the local area connection.
Update the settings to match your network configuration. Now it is time to write down the MAC address of your network card. You can find this, by running ipconfig /all from the command prompt.
Next to Physical Address, you will find something like XX-XX-XX-XX-XX-XX. Make sure you have written down the MAC address and the fixed IP address of the Surface Machine. Switch to user mode and shut down the unit by pressing the soft power key.
3. Use program to send WOL-packets
It’s time to test! You can now send Wake-On-Lan packets to the Surface unit to start the machine. If you want to integrate this in your .Net programming, there are some examples to be found on the net (I didn’t test this example). You can also use a little client program to send Wake-On-Lan packets. I used WOL – Magic Packet Sender and it worked just fine.
Fill in the IP address as host name and MAC address and hit “Send”. You will hear the fan of the Surface Unit start to spin and your precious Surface will boot.