Installing Windows 8.1 on a Dell XPS 12 with UEFI and a GPT Disk

I picked up a Dell XPS 12 yesterday and was momentarily stumped by trying to install Windows 8.1 onto it by booting from a USB key.

I made a bootable USB key from the Windows 8.1 ISO image, stuck it into the side of the Dell, booted it and tried to get into the boot options to cause it to boot from USB.

Not happening.

I managed to get into the Setup for the system (what I’d have once called the BIOS) and played around with all kinds of options including disabling UEFI secure boot (no joy) and then enabling “Load Legacy ROM” (no joy) and then a few more options until I hit the point where I’d disabled all the UEFI bits and was legacy booting.

At that point, the machine managed to see the USB key at boot time and I booted from it and got to the point of installing on a partition when Windows came back and said something like “I can’t install onto that partition, it’s a GPT disk”.

I figured at that point that I was heading down the wrong road so I backtracked.

I finally came across this article which worked a treat in that it told me that my problem wasn’t with having UEFI enabled per se but was, instead, because my USB key was formatted NTFS.

The process then ran something like this;

  1. Disable secure boot in the ‘BIOS’.
  2. Leave UEFI boot well alone – no need to play with any of those settings or enable legacy modes or any of that.
  3. Make a UEFI bootable USB key with Windows 8.1 on it formatted as FAT32.

and then the machine will show me the USB key as an option at boot time, it’ll boot from it and it’ll install Windows 8.1 from it.

Thanks to John for the original article – saved me a tonne of time here once I’d realised I was lost and needed to search for it Smile

The Modern PC

Quick caveat – these are just my thoughts, not some new terminology from Microsoft or some kind of review of Windows 8 or any specific device.


I wrote a little once before about the idea of the ‘contextual PC’ – the idea that I can have a modern PC that adapts to the context in which I’m using it. Sometimes I need touch input, sometimes I need mouse and keyboard or pen. Sometimes I need a display that gives me ‘at a glance’ information like I see in the Weather app or the News app in Windows 8. Sometimes, I need detailed information like I see in Microsoft Excel or Visual Studio on Windows 8. Sometimes I need long battery life, sometimes I’m connected to a wall socket. Sometimes I need 3G connectivity and have to take care over what I’m paying for it and sometimes I’m connected to a wire where bandwidth is free.

“it depends”.

It’s contextual.

What I don’t really want though is to have a separate device for every one of those scenarios – mostly, I need a device and a software stack that can adapt although for the edge cases I might sometimes choose a specific device because it has more CPUs, memory, disk, connectivity, battery, etc. In that case, I need good cloud support to make sure that my ‘stuff’ shows up on whatever devices I use.

In talking about Windows 8 to developers in the UK I’ve tended to talk about Windows spanning my usage;

‘from the sofa to the office’

and this really comes from my own experience with the idea being that I can sit on the sofa with my slate browsing the web or playing a game or reading the news and I’m using touch as my input mechanism. However, if I’m reading some web article that inspires me to go write some code, I simply walk into another room and dock my slate, pick up my mouse and keyboard and I’m in a different context and using the exact same device in a different way and I maybe plug in a few peripherals (monitors, printers, USB hubs) to get more stuff done.

Or, I drive off to the office and do the same thing and I fit in to Active Directory and all the group policy stuff and Network Access Protection and Bitlocker and DirectAccess and VPN and all those bits that big companies need including all those Line of Business and productivity apps that run on Windows.

For the past 12 months or so I’ve been living this with the Samsung Slate (prototype) device given out at the BUILD conference and it’s moved into being the main machine that I work on.

The slate is spec’d with;

  • 4GB RAM
  • Core i5 @1.6Ghz (i.e. dual proc with hyper threading to make 4 cores)
  • 60GB SSD
  • 1366×768 screen with integrated graphics (Intel HD Graphics 3000)
  • Couple of webcams (forward and rear facing)
  • Whole bunch of sensors/additions like accelerometer, gyro, GPS, NFC.
  • Whole bunch of connectors – HDMI, USB, microSD, SIM.

and I marry it up with;

  1. Various HDMI connecting cables and adapters (anyone living in the world of HDMI/DVI/DisplayPort and trying to connect to VGA projectors will know this well Winking smile).
  2. The supplied Samsung bluetooth keyboard (albeit with 2 keys now falling off Smile).
  3. Microsoft Touch Arc Mouse.

There are times when I want more power from a device and I would choose to use a laptop or a desktop rather than the slate but this device is so close to doing everything that I need that I use it more than any other device right now with the possible exception of my Windows Phone.

The slate pretty much spans that spectrum from the sofa to the office and I’m running everything from Visual Studio 2012 and SQL Management Studio through to the Office 2013 Preview and then on into a whole bunch of Windows Store apps (especially Wordament and Metrotwit) that I’m using all the time.

In working in ‘desk mode’ today, I thought I’d take that photo above to show how I had the slate set up and it prompted a bunch of questions on Twitter like;

“But can you run Visual Studio?”

“How do you get that 3rd screen?”

and so I thought I’d share. In this photo  I’m using the slate in “3 screen desk mode” where I have the device docked, mouse and keyboard connected and a wired ethernet connection and them I’m running 2 additional monitors ( Dell U2412M monitors ). I have them stacked up like this;


where monitor 1 is the slate, monitor 2 is over HDMI->DVI from the slate-dock at 1920×1200 and monitor 3 is over USB at 1680×1050.

That monitor is connected using one of these;


which you can go and read about and I can highly recommend as a way of adding a 3rd or maybe 4th monitor to a machine. I would say that I bought this for my laptop which has USB 3 and 8 cores whereas the slate has only USB 2 and 4 cores so with the slate I tend to use that 3rd monitor for more ‘static’ items like web pages and documents rather than, say, video and I’ve also dropped the resolution down to 1680 to try and give the hardware more breathing space.

Nonetheless, I still find it a pretty useful way to use the slate in ‘desk mode’.

While the slate has become my main machine and I rely on it every day, it’s easy to forget that it is a prototype device from nearly a year ago. There are a bunch of real, new devices on their way which you can go and preview on the official site;

and the imagery that you’ll see up there includes all of the devices below that I’ve stolen the images for and built into a big single image.

That site shows some of the diversity of what a PC can be in 2012 and beyond – I’d like to buy about 10 of them and am going to have to make a tough choice at the point where I actually get to sit down and think about which 1/2/3 I can actually own;


and, for me, that’s the start of what I see as this era of the ‘Modern PC’ Smile

HP8540W–Installing Windows 7 from USB Key (USB3?)

I got an HP8540W laptop a couple of months ago and at the time I had a bit of fun and games installing it. The machine has a main drive in it (SSD) and a secondary bay that can take a DVD-drive or another hard-drive and I have another hard-drive in there.

I’m a bit “manual” when it comes to installing operating systems and so when it came around to doing this I thought that there’d be no problem in that I’d just put the OS onto a USB key, boot from that and then install.

this walk-through takes you through using a USB key to install Windows 7

Suffice to say that, at the time, I got so fed up with trying to make this work that I ended up taking out my 2nd hard-drive, dropping in a DVD drive (having made a DVD Smile) and installing from that DVD.

Why? Because I would find that I had no problem whatsoever getting the laptop to boot from the USB key but then whenever I got to the stage of being about to install the OS I would get the dreaded;

“Required CD/DVD drive device driver is missing”.

This is always a bit puzzling and especially when you’re in a situation where you don’t have any kind of CD/DVD drive at all and you’re wondering what Windows might be looking for.

In my case, I suspected that I knew what Windows was looking for – despite the laptop having booted from the USB key the installation process is looking for a driver that lets it talk to the USB key and I’m not sure whether this is because the laptop has USB 3 ports or not.

At the time, I downloaded the driver from HP (it seems to be an NEC USB 3 and that link is to the 64-bit download) and I know that I couldn’t get it to work but, having revisited it, I’m not 100% sure whether that was because;

  1. I couldn’t get the OS install process to then accept that driver off a USB key or maybe an SD card ( I know I tried both ).
  2. I didn’t quite follow the right steps.

I’ve just been around the installation loop again on this machine except this time I was installing a new Windows 7 into a bootable VHD file.

 Hanselman has a good article on this here.

I hit the exact same problem except this time around I know that when I reach the “give me a CD/DVD driver” stage I already have filesystems available from the existing OS and so I can put the driver on one of my existing partitions to feed to the installation process and so I;

  1. Downloaded the NEC 3.0 USB drivers.
  2. Stuck them on my C: drive.
  3. Made a bootable USB key.
  4. Made a blank VHD to install the OS into.
  5. Rebooted and booted off the USB key.
  6. Attached the VHD file so that I could install into it (via SHIFT+F10 and diskpart – see Hanselman).
  7. Got to the point where my laptop said “Required CD/DVD device driver is missing”
  8. Fed it the NEC 3 USB driver off my C: drive which HP unpacks to some Files\x64 folder.
    1. Important point – I had to untick the “hide incompatible drivers” option which then reveals 3 drivers that I installed.
    2. Important point – I had to unplug and replug the USB key at that point.
  9. Installed into the VHD file.
  10. All is good. I think.

So if that helps anyone out there installing to an HP8540W or maybe installing Windows 7 generally with USB 3 ports then that’s great and apologies that it’s not a 100% guaranteed set of instructions because I’d have to flatten my laptop to be 100% sure of what the process might be when starting again from scratch.

If anyone spots the specifics of what’s going on here and wants to add better guidance via comments then feel (as always) very free Smile