Windows power saving features make it easy for a person to save power when the computer is not in use. Nevertheless I always left these features disabled because I frequently need to access my computer remotely. I also like having my computer perform automated tasks such as backing up files, defragmenting, and running virus scans when I am not using it. This meant I left my computer on 24/7 so it would always be available. Obviously that was not a very efficient solution.
I was able to reduce my power consumption and still maintain availability with a little help from technology! By making use of DD-WRT and my computer's BIOS settings I am now able to access my computer remotely when needed and allow scheduled tasks to run without having to leave my computer on all the time.
I used the open source DD-WRT firmware to set up a wireless bridge between my access point and my PC which is in another room. That allowed me to use Wake On LAN (WOL) to power up my computer remotely. I then changed the settings in my computer's BIOS and in Windows to allow WOL to start my computer from whatever state it was in. Lastly I used a BIOS setting to power my computer on every night at 3AM for scheduled maintenance tasks.
To complete this project you will need:
2 Linksys WRT54GL routers or any other supported router
1 Energy Saving Smart Strip
A couple of short ethernet cables
A few hours
A bit of patience!
Follow along to see how it was done!
Step 1: Setting Up the Wireless Bridge for Wake on LAN Capability
Wake On LAN (WOL) is a feature of a computer's network card which allows the computer to be turned on when it receives a "magic packet". I had planned to hack my current router, a WRT54GL from Linksys, to use a third party firmware called DD-WRT. DD-WRT has a WOL functionality built into it.
WOL does not work over wireless so I needed a wireless bridge connected to my PC's Ethernet port. Buying a second router and configuring DD-WRT to act as a bridge was actually $20 cheaper than buying a true wi-fi bridge and it allowed me have 4 devices bridged instead of just one. Here's how you can create a bridge using two WRT54GL routers:
1. First thoroughly document your current network setup including SSID, WPA passphrases, MAC filters, port forwarding rules, etc.
2. Load DD-WRT firmware on one of the routers and connect it to your internet connection. This will be your Access Point.
*WARNING* Flashing your router's firmware with a third party firmware could turn the device into a "brick" if done improperly. Follow these instructions carefully to avoid any unpleasant surprises.
3. Reconfigure the router with your original settings.
4. Test to make sure your newly flashed router works with all your computers.
5. Flash the firmware of the second router with DD-WRT and configure it with your wireless network's settings. Choose "Client-Bridged" in wireless mode. This router will be your bridge.
6. Add your second router's MAC address to the MAC filter list on your AP.
7. Connect your PC via Ethernet cable to the bridge and check for internet connectivity.
8. Change the settings on your AP to enable remote management. You can set them for whatever security level you prefer. I chose to use HTTPS only and not display an info page to un-authenticated users. These settings are available when you open the Administration page.
Check out the DD-WRT wiki for more detailed instructions on installing DD-WRT and turning your wireless router into a bridge.
If you don't want to buy two WRT54GLs you should be able to get by using one as a bridge and forwarding its managment port using whatever wireless router you currently have. Just a thought. YMMV.
Congratulations. Now you have a wireless bridge in place. Time to work on configuring your computer to be turned on remotely.
Step 2: Enabling Wake-On-LAN
Wake On LAN needs to be enabled in a few places in order to work properly. Most PCs these days have an integrated Ethernet NIC. To set it up for WOL, do the following:
1. Open your computer's BIOS settings. This may be accessed by pressing delete or one of the function keys during the POST.
2. Look for a setting that relates to enabling WOL. On my computer there was a setting for "Remote Wake Up." Enable WOL here. This will allow the computer to be turned on from the "Off" state.
3. Save your settings and exit the BIOS setup.
4. Allow Windows to boot.
5. Open the Control Panel.
6. Open Network Connections
7. Open your NIC's properties.
8. Click the Configure button.
9. Click the Advanced tab.
10. Look for Wake On LAN in the properties list. This may not be listed explicitly as WOL. Set it to wake from "Magic Packet" if available.
11. Click the Power Management tab.
12. Check the boxes for "Allow the computer to turn off this device to save power" and "Allow this device to bring the computer out of standby." This will allow WOL to turn the computer on from a suspended or hibernated state.
13. Click OK.
Now the computer can be turned on using WOL regardless of its current state. Next we will turn on power management settings.
Step 3: Using DD-WRT to Send Magic Packets
This is probably the easiest step. Once you have DD-WRT set up and the computer configured you can log in to the DD-WRT interface and send the magic packet to wake up your computer.
1. Log in to your router's administration web page through its WAN address. If you used the settings I showed you earlier you this will be: https://YOUR.WAN.IP.HERE:8080 Obviously you need to use your actual WAN IP unless you register the domain YOUR.WAN.IP.HERE and set up DDNS on the router!
2. Click the "Administration" tab.
3. Click the "WOL" tab.
4. A list of hosts that have connected to the router over the LAN will be displayed under "Available Hosts". Check the box next to the host you want to wake up.
5. The host will then show up under "WOL Addresses". Click the "Wake Up" button next to the host you want to wake up.
The router will send a magic packet for that host waking it up from whatever state it is in. After a few minutes your computer will have booted and be available for a remote connection.
Step 4: Port Forwarding
To reach your computer's remote client you will need to forward the port that the remote client uses. This makes the remote client available using the WAN IP assigned to your router.
1. Log in to your router's Administration page.
2. Click the "Applications & Gaming" tab.
3. Click the "Port Forwarding" tab.
5. Enter the application name, port to be forwarded, and IP address of the computer that needs its port forwarded. You can specify protocol if you want, otherwise leave it set to both.
6. Check the enable box.
7. Click "Save Settings".
Now you can access your computer using the WAN IP and protocol of the remote solution you have installed.
*Warning* There are people in this world that would love to take over you computer. A remote control program gives them full access! Port forwarding makes that port show up if someone runs a port scan on your WAN IP when your computer is on. Once an open port is known a hacker can try to exploit it. Leaving your computer off most of the time is the best way to secure it. A good firewall and a complex password for your remote client are also good ideas. If possible you should restrict what IP addresses can connect to your computer remotely. For example, only my workplace IP can log in to my computer. Check to see what options your remote client has for securing it and lock it down as much as possible!
Step 5: Scheduled Maintenance
I use Windows Live OneCare to handle my scheduled maintenance. If I left my computer off all the time it would try to run its maintenance routines while I am using the computer which means I take a considerable performance hit. Instead I scheduled the computer to turn on nightly at 3am for a maintenance window. To Set this up:
1. Once again, boot into your BIOS settings.
2. Look for an "Automatic Power On" setting.
3. Enable this setting and schedule it for a time when you will not be using the computer. I scheduled my computer to turn on at 2:55 AM daily. I wish it had a weekly option.
4. Save and exit the BIOS settings screen.
5. Once Windows boots it is time to schedule your maintenance. Open Windows Live OneCare.
6. Click "Change OneCare Settings."
7. Use the Tune-Up, Backup, and Virus and Spyware tabs to schedule each for a different day of the week at 3am. This allows your computer to boot up fully before the scheduled event begins.
8. Click OK.
Now your computer will boot each morning around 3am. If maintenance is scheduled to run it will run. Otherwise it will hibernate following your Power Saving options. Obviously you could use scheduled tasks or other program's scheduling features to schedule your maintenance if you choose.
Step 6: Powering Down Peripherals
This is the easiest step. I have a few peripherals connected to my computer including an external drive for backup purposes. The external drive would have to remain on at all times for my scheduled backup to run unless it could be shutdown with the computer. That's where the Smart Strip from BITS Limited comes in. This is a power strip that powers down your peripherals for you. All you need to do is:
1. Plug your PC power into the designated outlet on the strip.
2. Plug anything that needs to be constantly on into the "Constant Power" outlets.
3. Plug peripherals that can be turned off with the computer into the "Switched" outlets.
The strip senses when the computer is shut down or in power save mode and cuts power to the peripherals in the switched outlets. NICE!!
Step 7: Total Power Saving Results
Assuming I had left my computer on 24/7/365 I would have used around 179 KWh in a month. That would have cost me over $200 annually on my power bill.
Now assuming I use my computer for 3 hours a day and let it hibernate the rest of the time while leaving the wireless bridge on all the time, this system will use approximately 28 KWh per month costing me only $34 annually on my power bill over the year*. This means my new wireless router ($60) and power strip ($50) pay for themselves in a little over half a year. In one year, this system will have reduced my carbon emissions by 234 lbs! That's my weight in carbon!!! If you have more than one computer that you leave on all the time, using this solution can double or triple your savings.
With this solution I can still rest easy at night knowing all my important files are safely backed up and virus free. I can also access my computer remotely any time I need to. This proves that going green does not have to be a hassle and can save you some cash!
In the future you can put that money you saved on your power bill toward something nice such as upgrading your CRT to an LCD or upgrading your computer to a laptop - BOTH OF WHICH SAVE EVEN MORE POWER!! WOHOO!!!
*I left my "access point" router out of this calculation since it had always been on before and will always be on now.