The InstantGo ...Feature In Windows 8.1..

The InstantGo ...Feature In Windows 8.1..

Microsoft Details The InstantGo Feature In Windows 8.1, Lists Some Misconceptions About It 

 


                               InstantGo is one of the smart features in Windows 8.1 that replaces the sleep/standby features. It was previously called Connected Standby in Windows 8 and Windows RT. InstantGo is not just a software feature, it works in conjunction with  System on Chip (SoC) designs from both Intel and ARM. Microsoft today blogged about the InstantGo feature and the popular misconceptions about it. You can check whether your system supports InstantGo by typing powercfg /a in Commands prompt and press Enter, you’ll see the Standby (Connected) option only if you have InstantGo:
What is InstantGo?
InstantGo maintains network connectivity when your screen is off in standby mode, allowing the system to update things in the background, and keeping it ready to instantly resume. For example, it can sync your email while your screen is off so new mail is ready and waiting as soon as you come back. Or if you want to be reachable via Skype even when you step away from your PC, you can go ahead and turn the screen off, and your calls will still come through. Power consumption in this connected standby mode is very low, and yet the system is always ready to spring back to life with your next interaction.
Popular misconceptions:
MisconceptionFact
InstantGo is a Windows software feature.InstantGo depends on tight integration between hardware, software (drivers), and operating system to deliver new user experiences.
InstantGo only runs on ARM architecture systems.InstantGo systems exist for ARM, x86, and x64 architectures.
InstantGo is only useful if I’m connected to a network.All InstantGo systems allow you to turn the screen on and off almost instantly.
InstantGo is only available on Surface Pro and Surface 2.Numerous systems support InstantGo. Examples include: Dell Venue Pro 8 , Dell Venue Pro 11,Asus T100TA, ThinkPad Tablet 2,Surface, Surface 2, and more.
InstantGo runs exclusively on Windows RT.All Windows RT systems support InstantGo. But Windows 8 and Windows 8.x systems with the proper hardware may also support InstantGo.
InstantGo only runs on tablets.InstantGo systems include tablets, convertibles with docks, and even some laptops.

Arduino Power Inverter Circuits

Arduino Power Inverter Circuits

In my resent college classes several of my students plan to study solar energy in particular how power inverters operate. This is a demonstration I setup for my class.

A DC to AC inverter changes 12 or 24 volts DC to 120 or 240 VAC. This is a version of this using the Arduino micro-controller. We have two variations as presented below and will use the exact same micro-controller program not only to drive the power conversion process but to monitor other functions as well. Other features include:
  • Monitor battery and input power condition and shutdown if battery voltage is too low. (Less than 11 volts.)
  • Monitor the transistor heat sink assembly and turn on a cooling fan if too hot.
  • Power up slowly to prevent huge current surges on the 12/24 volts source.
The drive output from digital pins 9 and 10 provide two square waves 180 degrees out of phase. In a normal 60 Hz. the AC half-cycle period is about 8.33 milli-Sec. pulse width. The frequency and pulse width are very important in determining power output. This was very easy to control with the delay routines in the software.
Both diagrams below were tested on a compact fluorescent lamp, a dual tube four-foot shop light, and a Black and Becker power drill. I also tested several transformer types while one transformer designed for a 400 watt uninterruptible power supply (UPS) provided best performance. See Wiki for more on a UPS.
In fact this is a recreation of a UPS. I only tested these circuits at 12 volts. The output is a modified square wave.
MOSFETs driving a transformer.
Figure 2.

In figure 2 above we use a 24-volt center-tapped transformer and drive this with N-channel power MOSFETs. I have tried to use bipolar transistors but the performance and output was poor. I used surplus IRFP450s and IRFZ46N types. Both worked well and must be heat sinked. By switching one-half of the transformer side at a time, we recreate the negative/positive half-cycles on the AC output.
If I used a 12 volt center-tapped transformer my output would be 240 volts. The 4N37 opto-isolators serve to isolate the micro-controller from the higher voltages and electrical noise of the output circuits. The MOSFETs can be simply paralleled source to source, drain to drain, and gate to gate for higher currents and power output. The 15k resistors are used to bleed the charges off the MOSFETs gates to turn the device off.
H-Bridge driving a power transformer.
Figure 3.

In figure three I used my H-bridge circuit to drive a transformer. It works a little better than figure 2 and has the advantage of using a non-center-tapped transformer. It does use more power MOSFETs. The MOSFETs can still be wired in parallel as shown in figure 2 for greater power.
Related:



/*

 This this outpute two squarewave pulses to drive
 inverter circuits using power MOSFETS driving
 a 24-volt CT transformer to output 120 volts AC.
 
 The period for a 60 Hertz sine wave is 16.666 mSec. 
 So each half-cycle is about 8.3 mSec.
 
 The programs below puts out two square waves one for wach half
 cycle, 180 degrees out of phaste.
 
 This also has a soft start feature to linit power surges on
 power up. 
 
 This also measure the voltage on the battery and disables
 output if the voltage drops below 10 volts.
 
 A 10k and 2.7k are in series and connected to the 12 volt
 battery bank or power supply (+ 12 connected to 10k) while
 one end of the 2.7k goes to ground. The 2.7k/10k junction
 goes to one of the Arduino ADCs and when the battery voltage 
 drops below a half-volt (about 10 volts on the battery) 
 is disabled until battery is recharged.
 
*/

#define MOSFET1  9
#define MOSFET2  10
#define EnablePower 2  // HV power on switch
#define batteryVoltage 0  // AD0
#define heatSink 1  // AD1
#define batteryGoodInd 12 
#define fanOnInd 11
#define HVON  13 // high voltage on blinks

int x = 0;  int y = 0; int z = 0;

void setup() {                

  pinMode(MOSFET1, OUTPUT); // MOSFET 1
  pinMode(MOSFET2, OUTPUT);  // MOSFET 2

  pinMode(EnablePower, INPUT); // N.O. switch
  digitalWrite(EnablePower, HIGH); // pull up enabled
  
  pinMode(HVON, OUTPUT);
  digitalWrite(HVON, LOW);
  
  pinMode(batteryGoodInd, OUTPUT);
  digitalWrite(batteryGoodInd, LOW);

  pinMode(fanOnInd, OUTPUT);
  digitalWrite(fanOnInd, LOW);

}

void loop() {
  y = analogRead(batteryVoltage);
  if (y > 150) digitalWrite(batteryGoodInd, LOW);  
// battery LED off
     else digitalWrite(batteryGoodInd, HIGH);  
// battery too low LED on
     
     
  if (analogRead(heatSink) > 500) digitalWrite(fanOnInd, HIGH); 
// cooling fan on
    else digitalWrite(fanOnInd, LOW); 

// cooling fan off  
     
  if ((digitalRead(EnablePower) == 0) && (y > 150))  {   
// check for closed enable switch, battery state
    SoftStart();  // bring power up slowly
    while ((digitalRead(EnablePower) == 0) && (y > 150))   {
      digitalWrite(MOSFET1, HIGH);   // MOSFET1 on
      delayMicroseconds(360);
      delay(8);  // wait for 8.3 mS
      digitalWrite(MOSFET1, LOW);  // MOSFET1 off

      digitalWrite(MOSFET2, HIGH);   // MOSFET2 on
      delayMicroseconds(360);
      delay(8);  // wait for 8.3 mS
      digitalWrite(MOSFET2, LOW);  // MOSFET2 off

      x++;
      if (x == 20) { // flash HVON LED
        toggle(HVON);
        y = analogRead(0); 
        x=0;
        if (analogRead(heatSink) > 500) digitalWrite(fanOnInd, HIGH); 
// cooling fan on
           else digitalWrite(fanOnInd, LOW);
// cooling fan off 
      } // end 2nd if

    } // end while

  } // 

}  // end loop


void toggle(int pinNum) {  
// toggle the state on a pin

  int pinState = digitalRead(pinNum);
  pinState = !pinState;
  digitalWrite(pinNum, pinState); 
}

//SoftStart allows power to come up slowly to prevent excessive surges
// time is about 2 seconds


void SoftStart(void)   {
  int y = 2;
  int x = 0;
  int z = 6;
  while (y < 8)   {

    digitalWrite(MOSFET1, HIGH);   // MOSFET1 on
    delayMicroseconds(360);
    delay(y);  // wait for 8.3 mS
    digitalWrite(MOSFET1, LOW);  // MOSFET1 off
    delay(z);

    digitalWrite(MOSFET2, HIGH);   // MOSFET2 on
    delayMicroseconds(360);
    delay(y);  // wait for 8.3 mS
    digitalWrite(MOSFET2, LOW);  // MOSFET2 off
    delay(z);

    x++;
    if (x == 30) { 
      y = y + 2;
      z = z - 2; 
      x=0;

    }
  }
}

Arduino Load Cell INA125 Instrumental Amplifier Gain Set-up

Arduino Load Cell INA125 Instrumental Amplifier Gain Set-up












Once the circuit is complete, get the Arduino sketch file from the link at the end of the post. Uploaded the sketch to the Arduino UNO and test the Arduino load cell circuit. Using the Arduino IDE Serial Monitor and using a hacked scale to test the load cell, put some weight on the load cell and note what happens to the analogue reads.
If the analogue readings go up when weight is added to the load cell, then all is fine and move on to the next step.  If the analogue readings don’t appear to change or going down instead of up, then the load cell may be installed upside down or the blue/green and white load cell wires need to be swapped round.

INA125 Instrumental Amplifier Circuit Calibration

Arduino Load Cell INA125 Instrumental Amplifier Gain Set-up
Arduino Load Cell INA125 Instrumental Amplifier Gain Set-up
Rather than mess about with formulas detailed in the INA125 Amplifier data sheet, I went with my own method of calibrating the Arduino load cell circuit. This involve using a trimmer pot to adjust the gain on the INA125 chip to get the voltage range we want for our Arduino analogue pin to read.
Making changes after calibration, like changing wire lengths, altering the circuit and changing the power supply, could upset the gain On the INA125 and cause all other calibrations to be out.
The load cell I’m using is rated for a 5kg load and I want to adjust the gain on the INA125 so that 5v equals 5kg. So basically, I put 5kg on the hacked scale containing the load cell and noted the analogue readings taken from the Arduino load cell circuit using the Arduino IDE Serial Monitor. If the load cell is going to be preloaded with 400 grammes of weight in its intended application, you may want to add this weight to the weight being calibrated. Otherwise you will loose 400 grammes off the target weight range.
The Arduino 10bit A/D converter will give a maximum reading of 1023 and we want to adjust the trimmer pot on the Arduino load cell circuit until 1022/1023 is reached. Ignore the scale load reading at this point as it is yet to be calibrated. Once the gain is set, we can proceed to the next step to calibrate the weight scale of the load cell.

The Filament Force Sensor Firmware

For the Arduino load cell circuit to work it needs firmware in the form of an Arduino IDE sketch. The portion of code below is copied from the sketch which contains variables you need to know to set up the firmware successfully. While the code is well commented, some variables will be covered in more detail in this section and the next section.
// Set the software mode and set the analog pin
int calibrate = 1; // 0 = Output to Processing Application, 1 = Calibration mode
int analogPin = 0;  // Arduino analog pin to read
// LOAD CELL CALIBRATION
// Low end of the test load values
static long loadLow = 0; // measured low end load in grammes from good scales
static int analogLow = 80; // analog reading from load cell for low end test load
// High end of the test load values
static long loadHigh = 5103; // measured high end load in grammes from good scales
static int analogHigh = 1008; // analog reading from load cell for high end test load
// This is used when you change the load cell platform to something else that weighs
// different and the load is no longer on zero. Add an offset to set to zero.
int loadAdjustment = 0;  // Adjust non loaded load cell to 0
The firmware operates in a mode chosen by the user by setting the calibrate variable to either 0 or 1. Changing modes changes what data is output to the serial interface and what speed the serial interface operates at. Setting the firmware to calibration mode sets the serial baudrate to 9600 and outputs more information to the Arduino IDE serial monitor at 1 second intervals. This mode is ideal for calibrating the Arduino load cell circuit.
Setting calibrate to 0 will set the serial baudrate to 115200 and output just the weight in grammes 100 times a second. Changing the variable plotDelay, not shown in the code snippet, will alter how many times a second data is sent over serial.
The Arduino analogue PIN A0 is used by default and this can be change by assigning a new PIN number to the analogPin variable. Analogue PINs 0 to 5 are available on the Arduino UNO.

Arduino Load Cell Weight Scale Calibration

Calibrating the load cell scale will allow the Arduino code to map grammes to the analogue range that the Arduino load cell circuit can achieve. The calibration, for this application, will achieve a measuring range from zero to 5kg and Zero will be the load cell resting point with no load on the calibration platform. Images are provided as a quick reference to the calibration procedure.
Load Cell Low End Weight Scale Calibration Part One
Load Cell Low End Weight Scale Calibration
With the Arduino IDE serial monitor running, note the analogue readings being received from the Arduino load cell circuit. Test the load cell by adding weight to the platform to confirm that the circuit is functioning properly and a good range of readings is possible; you should be getting an analogue range from around 60 to 1022. If the tests look ok then proceed with the calibration, else check the circuit and try the INA125 Instrumental Amplifier gain calibration again.
The first step is to test the low end of the weight scale and you can do this without adding load to the load cell. So the variable loadLow in Arduino sketch code can be assigned 0 as for zero grammes. Then copy the smoothed analogue value to the analogLow variable and move on to the next step.
Load Cell High End Weight Scale Calibration
Load Cell High End Weight Scale Calibration
For calibrating the high end of the weight scale some load needs to be put on the load cell scale. The amount of weight to put on the load cell scale should be the amount close to the maximum weight the load cell is rated for. The load being used for calibration should not be so heavy that the analogue readings become stuck at 1023. Adjust the weight so that the analogue readings are a little below 1023.
Measure the weight of a test load as accurately as possible on a good scale, assign the measured weight to the variable loadHigh. Put the test load just weighed on to the load cell platform and copy the analogue reading to the analogHigh variable. Save the Arduino sketch and upload to the Arduino.
The load cell scale should now be calibrated and you can now run weight tests using the Arduino IDE serial monitor for the weight readings.
Arduino Load Cell Circuit Transplant
Arduino Load Cell Circuit Transplant
Once the load cell is calibrated it can be transplanted to its intended application. It should be noted that any change in the load cell wire lengths or a change of power supply could effect the gain on the INA125 Instrumental Amplifier  and spoil the calibrations.
Setting up the Arduino load cell circuit in another application could change the load cell pre-load weight where zero weight will no longer be set properly. By running the Arduino serial monitor connected to the load cell circuit, you can reset the scale to zero by copying the Scale load (grammes)  measure to the variable loadAdjustment.

What Now

The Airtripper Extruder Filament Force Sensor graphing is now done in the Processing Development Environment. This allows me and other users  to extend the code and add custom features.
A guide for the Processing Application is being worked on and should be published shortly

The Files

The Arduino load cell Circuit firmware sketch file: https://github.com/Airtripper/load_cell_test
KENWOOD DS800 Electronic Digital Kitchen Scales Teardown

What’s the Difference Between Sleep and Hibernate in Windows?

What’s the Difference Between Sleep and Hibernate in Windows?

What’s the Difference Between Sleep and Hibernate in Windows?


Windows provides several options for conserving power when you are not using your PC. These options include Sleep, Hibernate, and Hybrid Sleep and are very useful if you are using a laptop. Here’s the difference between them.
Note: this article is meant primarily for beginners. Obviously ubergeeky readers will already know the difference between power modes.

Sleep Mode

Sleep mode is a power-saving state that is similar to pausing a DVD movie. All actions on the computer are stopped and any open documents and applications are put in memory. You can quickly resume normal, full-power operation within a few seconds. Sleep mode is basically the same thing as “Standby” mode.
The Sleep mode is useful if you want to stop working for a short period of time. The computer doesn’t use much power in Sleep mode.

Hibernate

The Hibernate mode saves your open documents and running applications to your hard disk and shuts down the computer, which means once your computer is in Hibernate mode, it uses zero power. Once the computer is powered back on, it will resume everything where you left off.
Use this mode if you won’t be using the laptop for an extended period of time, and you don’t want to close your documents.

Hybrid Sleep

The Hybrid Sleep mode is a combination of the Sleep and Hibernate modes meant for desktop computers. It puts any open documents and applications both in memory and on your hard disk, and then puts your computer into a low-power state, allowing you to quickly wake the computer and resume your work. The Hybrid Sleep mode is enabled by default in Windows on desktop computers and disabled on laptops. When enabled, it automatically puts your computer into Hybrid Sleep mode when you put it into Sleep mode.
Hybrid Sleep mode is useful for desktop computers in case of a power outage. When power resumes, Windows can restore your work from the hard disk, if the memory is not accessible.

Where are the options?

The Sleep and Hibernate options are accessed using the arrow button next to the Shut down button on the Start menu.
01_sleep_and_hibernate_options
If you don’t see the Sleep option or the Hibernate option, it may be for one of the following reasons:
  • Your video card may not support the Sleep mode. Refer to the documentation for your video card. You can also update the driver.
  • If you don’t have administrative access on the computer, you may have to refer to the administrator to change the option.
  • The power-saving modes in Windows are turned on and off in your computer’s BIOS (basic input/output system). To turn on these modes, restart your computer and then enter the BIOS setup program. The key for accessing BIOS differs for each computer manufacturer. Instructions for accessing BIOS generally displays on the screen as the computer boots. For more information, see your computer’s documentation or check the website for your computer’s manufacturer.
  • If you don’t see the Hibernate option, the Hybrid Sleep option is mostly likely enabled. We will explain how to enable and disable the Hybrid Sleep mode later in this article.

How Do I Wake Up the Computer?

Most computers can be woken up by pressing the power button. However, every computer is different. You might need to press a key on the keyboard, click a mouse button, or lift the laptop’s lid. Refer to your computer’s documentation or the manufacturer’s website for information about waking it from a power-saving state.

How to Enable and Disable the Hybrid Sleep Option

To enable or disable the Hybrid Sleep Option, click Control Panel on the Start menu.
02_clicking_control_panel
Click Power Options in the Control Panel window.
NOTE: If Power Options is not available, select Large icons or Small icons from the View by drop-down list in the upper, right corner of the Control Panel window. In the Category view, you can also click System and Security and then click the Power Options heading.
03_clicking_power_options
On the Select a power plan screen, click the Change plan settings link next to the currently selected power plan.
NOTE: You can change the Hybrid Sleep option for either one or both of the power plans. The steps are the same for both.
04_clicking_change_plan_settings
On the Change settings for the plan screen, click the Change advanced power settings link.
05_09_change_settings_for_plan_screen
On the Power Options dialog box, click the Change settings that are currently unavailable link.
06_clicking_changing_settings_that_are_currently_unavailable
Click the plus sign next to Sleep to expand the options, if they are not already expanded. Click the plus sign next to Allow hybrid sleep. Select Off from one or both of the drop-down lists under the Allow hybrid sleep heading.
NOTE: You can also double-click on a heading to expand it.
07_turning_off_hybrid_sleep
By default, Windows requires a password to access the computer when you wake it up from a power-saving state. You can use the Power Options dialog box to turn this off. The first heading in the list box is the name of the power plan chosen in the drop-down list above the list box. Click the plus sign to expand the heading and select Off from one or both of the drop-down lists under the heading.
Click OK to save your changes and then click the X button in the upper, right corner of the Control Panel window to close it.

How to Prevent Your Computer from Automatically Sleeping or Hibernating

You can prevent Windows from asking for a password when it wakes up from a power-saving mode. However, if you are using a battery-powered laptop, be careful when turning off the sleep or hibernate mode. If the battery dies when you’re in the middle of working on the computer, you can lose data.
You can also change the amount of time before your computer goes into sleep or hibernate mode. Here’s how to do this.
Access Power Options in the Control Panel, and click the Change plan settings link next to the currently selected power plan on the Select a power plan screen, as we described earlier in this article.
On the Change settings for the plan screen, click the Change advanced power settings link.
05_09_change_settings_for_plan_screen
Double-click on the Sleep heading, and then double-click on Sleep after. If you’re using a laptop, click On battery or Plugged in to activate the edit box. Click the down arrow until Never is selected.
NOTE: If you’re using a desktop computer, click Setting, and click the down arrow until Never is selected.
You can do the same for the Hibernate after heading.
10_changing_sleep_after
If you want the display to stay on, double-click on the Display heading and then double-click Turn off display after and change the On battery and Plugged in values as desired.
Click OK to save your changes, and close the Control Panel window, as described earlier.
11_turn_off_display_after
Now you can be smart in your choice of power-saving modes. If you’re using a laptop computer, the best option is most likely Hibernate, because it saves the most power compared to Sleep and Hybrid Sleep.

Types of Mobile Phone Screens...

Types of Mobile Phone Screens...

TFT-LCD

By far the most common kind of screen used on mobile phones is TFT-LCD (often just referred to as LCD, since TFT-based LCD screens are the only type used in practice). It ranges from the budget smartphones like the HTC Desire Cto high-end tablets, like the Google Nexus 7.
TFT-LCD stands for thin-film transistor liquid crystal display and there are many different ways of manufacturing LCD screens, so knowing that a phone is LCD doesn't tell you much about its quality.
In practice, cheap phone screens will often display dull colours, and have narrow viewing angles, which means that if you look at them from off-centre, it becomes hard to see what's on-screen.
High quality LCD screens will have bright, accurate colours and with visibility from just about any angle.
All LCD screens need to have a light behind them, which shines through the pixels to make them visible. As a result, they don't offer quite the thinness of AMOLED technology.

AMOLED

Active-matrix organic light-emitting diode, or AMOLED for short, is a screen technology based on organic compounds that offers high image quality in exchange for potentially very low power usage.
Unlike LCD screens, AMOLED displays don't need a backlight - each pixel produces its own light - so phones using them can potentially be thinner.
It also means that a mostly black screen will use very little electricity, and true blacks when watching videos, rather than the dark grey some LCD screens produce.
However, AMOLED screens have proved costly and difficult to produce in the same numbers as LCD, a fact that led to the HTC Desire having its AMOLED screen replaced with Super-LCD halfway through its manufacturing life.
AMOLED uses a different subpixel arrangement to LCD, which can result in images that don't appear quite as sharp.
High-end LCD screens are also able to produce a wider colour range than AMOLED screens, though this would make little difference to most casual users.

Super AMOLED

This is a derived form of AMOLED screen that actually includes the capacitive touchscreen technology in the manufacturing process, meaning that it doesn't have to be overlaid later. It offers other advantages over earlier AMOLED screens, including increased brightness and lower power usage.

Super AMOLED Plus

A new technology first used by the Samsung Galaxy S2. The significant change is in the subpixel construction, switching to something much closer to that used by LCD, which meant sharper, clearer images.

How to Dual Boot Windows 8 with Windows 7 ???

How to Dual Boot Windows 8 with Windows 7 ???
How to Dual Boot Windows 8 with Windows 7
 
Your newly purchased computer or the one you just built has Windows 8 installed. You now want to install Windows 7 as a second operating system thus creating a Dual Boot computer and giving you the best of both worlds and full app compatibility as some of your Windows 7 applications may not be supported in a Windows 8 environment.
 
Considerations before you start:
A) If you purchased your Windows 8 computer:
1 - Installing Windows 7 may void your warrantee. Call the PC manufacture and ask !!!
2 - Installing Windows 7 may render your Windows 8 “Recovery Partition” useless. Before you start, contact the PC manufacture and obtain the “Recovery media” for Windows 8. Also ask the manufacture’s support team about activation when using recovery media as your new computer may no longer have a product key code sticker, Windows 8 uses a BIOS imbedded product key for activation.
 
Partition arrangements on a computer purchased with Windows 8 may vary from manufacture to manufacture. For example a Dell computer could typically have a large number of predefined partitions:
 
EFI System Partition - 500 MB
OEM Partition - 40 MB
Recovery Partition - 500 MB
Recovery Partition - 10.63 GB
Boot, Page File, Crash Dump, Primary Partition 919.74 (Windows 8 OS C:)
 
New computers come with a feature called “Secure Boot”. You may need to temporarily disable secure boot in the BIOS before you can install Windows 7. Check your owner’s manual or contact your PC manufacture’s support team for help on how to do this.
 
3 - Are there Windows 7 device drivers for your computer’s make and model available from the manufacture’s driver support download web site? If there are no Windows 7 device drivers then installing Windows 7 may be a waste of time as your Display, Touch pad, Camera, USB and other devices may not function properly.
 
B) If you have built your own computer:
1) Verify there Windows 7 device drivers for your motherboard’s make and model available from the manufacture’s driver support download site. There is a good chance there are Windows 7 drivers and in fact less of a chance there are a full set Windows 8 drivers for older motherboards. More recently released boards will support XP, Vista, Windows 7 and Windows 8. The assumption however is that you already have Windows 8 installed as your first operating system on the disk drive.
 
Conceptual overview:
1) This article is based on a home built computer using a 1TB hard drive.
2) The free version of EaseUS Todo Backup will be used to create an image backup of the drive to an external USB drive before starting. Todo supports both Windows 7 and Windows 8.
3) You need to shrink the Windows 8 partition to make room for a Windows 7 partition. For this task you will use Windows 8’s ‘Disk Management’. To access Disk Management, open the ‘Desktop’ and press the Windows key + X, then select ‘Disk Management’.
4) You will need to disable Windows 8’s ‘Fast Startup’ option before you install Windows 7.
Why disable ‘Fast Startup’:
Failure to disable the fast startup option can result in ‘Check Disk’ (chkdsk) running when installing Windows 7. You may also no longer see the dual boot menu the next time you turn on your computer. Also if you have more than 1 disk drive chkdsk will run each time you shut down from within Windows 8 and then boot to Windows 7.
 
Fast Startup in Windows 8 is designed to close and reopen by fast booting (Hybrid Boot), it has left your system in a partially hibernated state, with the drive mounted and according to Microsoft "effectively saving the system state and memory contents to a file on disk (hiberfil.sys) and then reading that back in on resume and restoring contents back to memory."
 
Turning off the “fast startup/hybrid boot” option fixes the chkdsk problem during the installation of Windows 7, the missing boot menu problem (more on this later) and the multiple disk drives “Dirty bit” issue when booting to Windows 7.Windows 8 may take little longer to boot but not all that much as to be meaningful. Boot times for Windows 7 are unaffected and the boot menu will be displayed each time you turn on or reboot the computer.
 
How to disable ‘Fast Boot’:
Make the following changes to the Windows 8 Power Options.
1. Control Panel --> View by: Small Icons -->Power Options
2. Select "Choose what the power button does" on left hand side.
3. Click on "Change settings that are currently unavailable".
4. Uncheck "Turn on fast startup" under shutdown settings.
5. Click on the ‘Save changes’ button.

Create an Image Backup:
Before you make any changes to your Windows 8 computer, create an image backup. Its your safety net should something go wrong. I used the free version of EaseUS’s Todo Backup and an external USB drive to store the image file.
EaseUS Todo Backup: http://www.todo-backup.com/products/home/free-backup-software.htm
 
Note: The Image should include “All” partitions on your disk drive. Therefore use the Disk and Partition backup option and not the ‘System Backup’ option. Click on the left edge of the image of the disk’s partition map to select the entire drive (this will highlight the entire drive in a golden box. Change the destination to your USB drive. Note: You can create a unique destination and folder name for each backup you create by clicking on the File Explore (formerly called “Windows Explorer”).
 
Using Disk Management to create a partition for Windows 7:
1) Open Windows 8’s ‘Disk Management’ (press and hold the ‘Windows’ key and tap the X key). Then select the ‘Disk Management’ (or tap the ‘K’ key) option from the list.

2) Change the ‘Volume name’ to “Windows 8 Pro” (Without the quotes). Right click on the Windows 8 partition (C:) and select ‘Properties’. In the ‘General’ tab change the existing name to: Windows 8 Pro and click the ‘Apply’ button.

3) Shrink the Windows 8 partition to create unallocated space for use when installing Windows 7. Right click on the Windows 8 partition (C:) and select the ‘Shrink Volume’ option. Now enter a value for the amount of space to shrink in MB. For the 931GB partition in this example I wanted to create a 460GB partition for Windows 7, so I entered a value of 471040 (460 X 1024). If your Windows 8 partition contains a lot of data you want to consider a smaller partition size for Windows 7 (75 to 100GB).

Click the ‘Shrink’ button to start the process. After the shrink operation has completed you will see 460.00GB in “Unallocated” space.

4) Create a “Primary” partition and format it. Right click on the unallocated space and select ‘New Simple Volume’.

In the “Format Partition” window you want an ‘NTFS’ partition, leave the allocation unit size set to ‘Default’ and either choose a ‘Quick’ or ‘Full’ format. I prefer a full format (takes longer to complete, but it’s safer) so as the screenshot below shows, the ‘Perform a quick format’ option is unchecked. Click ‘Next’ to continue.

5) Change the volume name to Windows 7 (or Windows 7 Pro or Windows 7 Ult if Home Premium is not what you are installing). This will make it easy for you to select the proper location on the drive during the Windows 7 installation process.



6) At this point I created another Image Backup of the drive (all partitions) using Todo Backup. This allows me or you to return to the current state should Windows 7 fail to install properly the first time around.
 
7) You are now ready to install Windows 7. This will be a “Keyless” install, should anything go wrong your Windows 7 product key will not have been used or activated and you can try again.
 
For reference purposes a “Keyless” install simply means you will skip entering in a product key during the install and activate Windows 7 at a later point in time. More on this subject later.
 
I’m not going to show you screenshots for each step in the installation of Windows 7 as this has been documented many times.
 
What I will provide is the basic information and screenshots at key points in the installation process that you will need to know and follow.
 
Installing Windows 7:
 
Step 1 - Insert the Windows 7 installation DVD into your DVD drive and restart the computer. When you see the prompt to ‘Press any key” to boot from the DVD, do so. Windows 7 will start to boot up and you will see the following progress bar “Windows Is Loading Files” followed by the “Starting Windows” logo.
 
Step 2 - The next screen allows you to setup your language, time and currency format, keyboard or input method. Choose your required settings and click next to continue.
 
Step 3 - The next screen allows you to install or repair Windows 7. Since we are doing a clean install, click on "install now". The ‘Setup’ process will then start.

Step 4 - Read the license terms and click ‘I accept the license terms’. Then click ‘Next’ to continue.
 
Step 5: What type of Installation do you want: There are two options to choose from, Upgrade or Custom (Advanced). Since you are doing a clean install, select the second option ‘Custom (Advanced)’.
 
Step 6: Choose where you would like to install Windows 7. Since the drive already has been partitioned, formatted and assigned a volume name (Windows 7 Pro), all you need to do is select the third / Windows 7 Pro partition (since that’s what I’m installing) and click ‘Next’.

Step 7 - Windows 7 starts the installation process and begins by copying and expanding all the necessary files to your hard drive or SSD.
 
Step 8 - The installation will go through various setup stages and then will reboot your system.
Warning: Each time your computer reboots it will prompt you to boot from the DVD. Take no action on your part, please do not touch that keyboard, even though you are prompted to “press any key to boot from CD or DVD” just let the computer boot on its own and the installation will automatically continue.
 
Step 9: The next set of tasks are completely automated and no user intervention is required. You will see a starting Windows logo.
 
Note: If you failed to Disable Windows 8’s ‘Fast Start’ option, ‘chkdsk’ may run immediately after a reboot, check each partition on your drive and then reboot again to continue the installation.
 
At this point “Setup is updating registry settings” message quickly followed by a “Setup starting services” message, finally the “Completing installation” message is displayed (your display may flicker). Your computer will then reboot at this point in the installation process.
 
Setup will now prepare your computer for first use and check your video performance.
 
10) You will now be prompted to enter a user name and a computer name. Your username will be will become the prefix for the computer name. Click the ‘Next’ button to continue.
 
11) Set a password for your account:  Choose your password and password hint just in case you forget the password and need to jog your memory.
 
12) This step is where you perform a “Keyless Install”. 
You could at this point enter the product key that came with the version of Windows 7 you are installing and then click ‘Next’. But wait, if you choose to activate Windows now and something should go wrong anywhere in the process of installing Windows, installing the device drivers or installing the latest Windows Updates and as a result forcing you to start fresh by reinstalling Windows from scratch, the next time you try to activate it will most likely fail and phone activation will be required; not a good idea, especially if there is a better way.
 
Keyless Install:
If you do not enter the product key and remove the checkmark from the “Automatically activate Windows when I'm online” box, you can still proceed with the installation process without entering your product key. After the installation has completed, Windows 7 will run in a trial mode for 30 days, this should be more than enough time to install the device drivers, all the Windows Updates, configure and test your dual boot computer before you need to activate Windows.

13) Help protect your computer and improve Windows automatically: 
Choose ‘Ask me later’, there is no need to be flooded with Windows Updates after the installation has completed.
 
14) Set the ‘Time zone’, Date and Time for your location. Note: Because you have performed a “Keyless Install” it is very important that you set the Time zone, Date and Time correctly.
Then click ‘Next’.
 
Note: Changing these settings after the install has completed could result in instantly using up your 30 day grace period.
 
15) Select your computer's current location: Home users should choose ‘Home network’ option, otherwise pick one of the appropriate remaining two options. Windows will now connect to your network and apply the settings.
 
16) Select what you want to share if a network is detected and enter a password or simply click ‘Skip’.
 
17) Windows will finalized your settings, prepare your desktop and finally display the Windows 7 style desktop with a “Real” start button in the lower left corner of the ‘Taskbar.
 
18) The bland grayish color of the toolbar (Non Aero) is a dead giveaway that the graphics card driver has not been installed. Other device drivers will also need to be installed.
 
19) Remove the Windows 7 installation DVD and reboot to Windows 8 and create another backup before installing any Windows 7 device drivers. You will note the boot menu now takes on the look of a typical Windows 7 dual boot display with Windows 7 at the top of the list and it is also the ‘Default’ OS that will load if no choice is made before the 30 second timeout.
 
Use the ‘Down’ arrow on the keyboard to select Windows 8 and press the ‘Enter’ key.

20) Reboot to Windows 7 and install your device drivers.

Missing Boot Menu:
You may notice that on powering down from Windows 8 (not Windows 7) and then booting the computer later in the day or the next morning that the boot menu is missing and the PC boots straight to Windows 8.This is caused because you forgot to disable the ‘Fast boot’ option prior to installing Windows 7.
 
To fix this issue make the following changes to the Windows 8 Power Options.
1. Control Panel --> View by: Small Icons -->Power Options
2. Select "Choose what the power button does" on left hand side.
3. Click on "Change settings that are currently unavailable".
4. Uncheck "Turn on fast startup" under shutdown settings.
5. Click on the ‘Save changes’ button.Install the Windows 7 device drivers:
Go to your computer or motherboard manufacture's support web site and check for Windows 7 drivers for your specific model number.
 
If there are Windows 7 drivers, then download to a folder on your hard drive and install all of them, starting with the Motherboard/chipset drivers, SATA, LAN, Audio, USB, Graphics, Webcam, Etc., and so on.
 
 
If you have an Intel motherboard you can try the Intel Driver Update Utility: http://www.intel.com/support/detect.htm?iid=dc_iduu
 
 
 
Graphics/Video drivers:Check the Graphics card manufacture's download site for the most recent Windows 7 drivers for your card.
 
 
21) Once you are satisfied everything is as it should be and there are no issues after installing Windows 7 and the device drivers on your Windows 8 based computer create another Image Backup.
 
By now you have noticed that I create a fresh image backup at the completion of each major juncture in the process of creating a dual boot computer. Frequent backups allow you to conveniently roll back to a last known good state thus eliminating to need to start the whole process from scratch.
 
22) Activating Windows 7: Once you are satisfied everything is as it should be and there are no issues then activate Windows 7. Play it safe and only use a maximum of 29 days from the date of installing Windows 7 as a guideline for the activation deadline, don’t wait for the last day to activate Windows.
 
23) After Windows has been activated, make another image backup. This backup is your Dual Boot baseline.
 
Verify you can boot to either version of Windows using either the reboot option or from a cold start. Open “File Explorer” in Windows 8 then open “Windows Explorer” in Windows 7; here is what you can expect to see:


That’s it, your finished !