Nov 7, 2013 - The Perceptive Pixel Touch Driver enables a world class touch and stylus experience on devices from Perceptive Pixel by Microsoft. A woman with a laptop on her lap gazes out a window. Laptop 2 NEW Surface Go Xbox One X Xbox One S VR & mixed reality Windows 10 apps Office apps. After restoring the computer from a Windows 7 System Image Backup, Toshiba. The Perceptive Pixel Touch Driver enables a world class touch and stylus.
UPDATE April 17, 2015: Due to the many requests I’ve received, I’ve decided to share. Hope this helps in getting your own Surface upgraded to a more recent Windows version! I was recently lucky enough to receive an original Microsoft Surface through one of our great MVPs in the Netherlands,. If you’re wondering what the fuss is about, I’m not talking about the, but the original device which was called Microsoft Surface:. I was lucky enough to have worked with quite a few customers in The Netherlands between 2008 and 2010, creating solutions for Microsoft Surface in many verticals, including retail and finance. As you can imagine, I was pretty excited to get a $10,000 (original retail value) device at home and immediately replaced my coffee table in the living room with it.
Being released in 2008, the original Microsoft Surface runs on Windows Vista, which is somewhat outdated right now. After reading dating back to September 2011 on how he managed to run the Windows 8 Developer Preview on the original Microsoft Surface, I decided I’d take on the challenge of putting Windows 8.1 onto it. This blog post details the steps I’ve taken to get everything up and running, hopefully providing enough insight into what’s needed to accomplish this yourself as well. Creating some space Similar to what Joshua did, I did not want to get rid of the original Operating System running on the device (especially since I didn’t know whether this whole endeavor was going to work out). Installing Windows 8.1 side by side next to the Windows Vista installation requires shrinking the volume to create some space for the Windows 8.1 installation. To do so, click on Start, right-click on Computer and select Manage.
On the left side of the Computer Management console, click on Disk Management under Storage to view your existing disk configuration. You should see your C drive taking up most of the space, with some space assigned to the recovery partition of the Microsoft Surface unit.
Right-clicking on the C partition and selecting Shrink Volume will cue the calculation of free space that can be removed from the partition to create a new one for the Windows 8.1 installation. Note that if you have extensively used the device before, you may not be able to shrink enough space to install Windows 8.1.
I’ve chosen to assign 80GB to the Windows 8.1 partition, so I would have enough room for apps and games, but you may choose less (I advise at least 50GB). If you can’t clear enough space, try defragmenting your disk before trying to shrink the partition, as defragmenting should clean up your disk by moving all the data to the beginning of the disk, leaving more room to clear at the end. Once you’ve shrunk the partition, you can leave the unallocated space as is, as the Windows 8.1 installation will create a partition for us in that space.
Installing Windows 8.1 Now that we have the space we need to install Windows 8.1, we can commence doing so. It’s really up to you as to how you want to install Windows 8.1, but I recommend creating a bootable USB drive through, as it’s the fastest way I know to create one. Also, make sure you install 32-bit Windows 8.1, as it’s going to make our life easier in the long run and there’s no real point in installing 64-bit on this hardware. Now, the tricky thing here is that you will need to modify the boot order in the BIOS to be able to successfully boot from the USB drive. By default, the Surface has a BIOS password on it, which I can’t share here for obvious reasons. If you’ve never obtained it before, contact the for assistance.
Once you’ve changed the boot order in the BIOS, go ahead and plug in the USB disk and commence the Windows 8.1 installation to the unallocated space on the disk. After installing Windows 8.1 install. Getting the Surface Shell and applications up and running again Once you have Windows 8.1 all installed and configured, it’s time to get the Surface Shell and applications back up and running.
Luckily, we have kept the Windows Vista partition intact, which allows us to access the SurfaceRuntime.exe installer in the D: SurfaceInstallers folder (assuming D is your Windows Vista partition now). The problem here is that the installer has verification in place that prevent installation on anything other than Windows Vista with.NET 3.5 installed. Luckily, we can reuse the instructions described in, which was initially written to install the Surface 1.0 SP1 SDK on x64 machines. Interesting, curious to know how well the touch input works with normal WIndows 8.1 applications. I have a Surface 2 (SUR40) and the infrared sensor is just too sensitive for a normal touch enabled application, as it has terrible palm rejection. That isn’t as much of a problem for applications designed to use the Surface SDK, as they can tell the difference, but there isn’t any obvious way to filter non-fingertip input for normal OS and applications.
Actually, my impression of the SUR40 was that it was a lot more finicky than the original Surface (which I don’t have, but used at TechEd and PDC events in the past). In any case, I’ve got a 55″ Perceptive Pixel device now, and the touch response is so much better than the SUR40 (latency, accuracy, wrist rejection, environment sensitivity) that I can live without the tag recognition. Another interesting subject is duplicating the Surface SDK features in a WinRT application. I have not seen anything like the ScatterView, nor have I seen any controls libraries that handle multiple users on any platform other than the Surface SDK. Hey Robert, Touch input works well enough to be usable, but it’s not 100% perfect, naturally.
Sometimes you have to tap something twice and holding the tap just a bit longer seems to help increase accuracy. I’ve had the opportunity to do the “7-year old” test over the weekend, and games and some painting apps were no problem.
There’s no palm rejection, obviously, but that doesn’t seem to be a big issue for me so far. You’re right that there’s no ScatterView control for Store apps, but it seems people have started replicating its behavior (check out the app for example).
The Surface is a very specific device, so creating multi-user controls in the WinRT libraries doesn’t seem to make much sense to me (especially when there’s still so much other cool stuff to be worked on). The multi-user controls would work on any large device that supports enough inputs, like my Perceptive Pixel 55″. Because the touch input latency is so much lower, my Surface SDK applications actually work much better on it than they do on the real SUR40.
Of course, I can’t get tags or finger orientation. I feel that large form factor devices are going to explode in the next few years. Since Microsoft bought Perceptive Pixel, the 55″ unit is down to $5K-$6K US, which is bringing it in reach of small businesses. I fully expect to see active surface tables replacing “dumb” conference room tables in the near future.
Thus, it seems like a natural evolution to move the multi-user controls developed for Surface SDK to WinRT, as then we have a modern development platform and simple distribution via the Store. I love WPF, but it has significant performance limitations. I love XNA, but it is a dead end now.
Smart tables powered by Windows 8.1 would rock and be a product area not covered by iOS or Android. Hello Rajen, After receiving 2 of these units as donations, I found your blog here while searching for a way to get the “touch” part of the device working with Windows 8.1.
Seem I may be a bit over my head as it turns out the screen is not a true touch screen, but uses 5 IR cameras to “See” where your placing your hands instead. I easily installed the Windows 8.1 32 bit on an SSD for the device, and also keeped the original HDD as support for the drivers and keeped its original Vista and recovery partitions intact. I seem to get stuck on: “Getting the Surface Shell and applications up and running again” Practically getting “SurfaceRuntime.exe”. I can’t seem to find it anywhere on the original HDD.
Instead in the folder “D: SurfaceInstallers” the only.exe I have is “SurfaceSDK.exe”. Do I just need to change the names in the command: “C: SurfaceInstallersSurfaceRuntime.exe /extract C: SurfaceInstallers SurfaceRuntime” to the name SurfaceSDK instead? I may end up going the route, but wanted to ask here first to see if I am just way off, or if I have something odd going on with my version of Vista. Or, if possible, just doing a factory restore on the device and calling it a day, as this device from 08′ will end up being a toy for the boss’s kids to paly mini games on and not to much else. But that’s a “last ditch effort” if I can’t get this device to work with the 8.1 fully.
If I can just get the touch to work correctly, I could also call it a day as that would allow the kids to play there games. Hello again, I tried to do a factory as explained in:.aspx But get stuck on the accessing D: part, there is not a D: to access, when going into the computer, i see the recover partition is a 20GB area on the drive itself, only its in an odd file format (EISA), and right clicking it in Disk Manager comes up with no options. Would you know what this partition is? Any Idea where I can get a copy of the recovery if thats not it and just reregister the table? Also, as this is looking bleak, do you know of any links that can show me how to work the surface shell? Look as if it is full of apps that were meant to be used as a demonstration, then an workable table.
This one doesn’t even have the chest demo like the other 2 i repaired and resold. I do have a 4th one that came in, ill put that out and see what it had installed on it.
Hi Rajen, I’ve followed your instructions carefully and so far I have gotten win8.1 32-bit installed (very difficult – warning to others – do NOT purchase a windows 8.1 download as it will force you to install 64-bit. You must get a 32-bit Windows 8.0 ISO and install that, then perform the free web upgrade to 8.1) then I ran into my first difficulty – XNA 3.1 refused to install until after I had enabled.NET 3.5, and then the SurfaceRuntime installer still refused to install, saying that it needed XNA 2.0, not 3.1. I got that from Microsoft by googling it. Then the SurfaceRuntime installer ran fine. After starting the touch input and the Surface Shell, I found that it runs intolerably slowly on Windows 8.1, for whatever reason. There’s no obvious complaints from the Shell at the console, so I’m baffled.
Touch works in the Shell but I get maybe.75fps (yes, less than 1 frame per second) which is interesting insofar as I can see the shape of my hand propagate slowly out if I lay my entire outspread hand on the screen Now I’m attempting to install the touch support. First warning to others: the Multitouch-Vista zip package contains pre-compiled drivers and console apps.
These will not work. Don’t waste your time.
I’m going to see what steps are really required. I’m hoping Rajen’s directions for compiling work. The next hurdle seems to be getting a working development environment going in order to compile Multitouch Vista. Some things not to try: First, don’t install the Windows SDK. Second, don’t install XNA 3.1, since Surface runs on 2.0 and Multitouch Vista runs on 4.0. Third, don’t install Visual Studio Express 2013.
Do install Visual Studio Express 2010, which will actually install on Vista. Unfortunately it comes in ISO format, so install Virtual Clonedrive so you can mount the ISO and run the installer without adding optical media to your computing environmental disaster 😉 So far I am guessing but I think you want the Visual C Express install option.
With any luck I will get to try actually compiling things tomorrow. It turns out that Multitouch Vista won’t open in Microsoft Visual C Express 2010, and purchasing a full copy of Visual C is beyond the scope of the work I can do for my employer getting this working on Windows 8.1, so we’ll probably uninstall Windows 8.1 and stick with Vista, unless you can think of another way I can either build or acquire a working build of the software? The errors reported when loading the solution: “Solution Folders are not supported in this version of the application” “ project type (.csproj) is not supported by this version of the application” x 5. Then it might be helpful for the rest of the people who come here if you let them know in advance that they can’t follow your directions without a full copy of Visual Studio 2008 with the C# development environment installed, so they don’t waste their time. Not everyone automatically knows what you do.
П˜‰ For my own situation, this office is a Mac-only environment. Apart from a VAIO touch unit which is on display so customers can surf the web. The Pixelsense is in the staffroom as a toy for the staff to play with. Nobody here has any interest in doing professional Windows development so we won’t be buying Visual Studio. It’s really a shame that Windows 8 doesn’t come with drivers for hardware sold and marketed by Microsoft. It’s nice that there’s a community driver, but equally a shame that it can’t be built with an open toolchain.
I think you have a fair point in needing to specify the actual version of Visual Studio needed to compile this. The instructions over at state it should work with Express (Visual C# 2008 Express Edition to be exact), so that should work as well. I understand your point in not having the right licenses in place to do this, but you do have to realize that this device was released in 2008 and there was never official support for OS upgrades, not for Windows 7, not for Windows 8 and not for Windows 8.1.
I thus disagree with your expectation that drivers should be included in Windows 8/8.1 for this very specific hardware, that is not present in any other product aside from this commercial unit. I would suggest you try following the instructions again with Visual C# 2008 Express Edition, as that’s a free version and should probably work, although I have not tried it myself. Hi Tony, as there’s no more warranty, this won’t be an issue I guess. The only thing that might pose an issue is that everything is built into a “PC module”, which holds all the hardware. Assuming you’re going to take it apart, it should be fairly straightforward swapping out the parts. I never tried it myself, so I’m not sure how upgradable it actually is. As it’s a machine from 2008, I’m pretty sure that the HDD isn’t going to be the bottleneck (CPU and RAM being the larger influencers here).
To be fair, everything on Windows 8.1 runs fairly smooth, even with an external screen at 1080p hooked up in extended mode. Just make sure you create a good back-up of the original files, as they’re needed to keep everything in working order. Hi Rajen, Thanks for uploading the file! It really helps people like me that are not as technically adept as you are! I’ve hit a snag, I have MultiTouchVista working with other input providers, and the Surface Shell is too. But when I try to run your build, or even just move the Addins SurfaceInputProvider folder into a working build, I run Multitouch.Service.Console.exe and I get the error “Unable to load one or more of the requested types.
Retrieve the LoaderExceptions property for more information.” Any thoughts on what I might have missed? Jeremie: I will post a link to my specs for the Calibration Board as soon as I can. I’m happy to help! Hi Rajen, Your OneDrive download link doesn’t seem to work anymore. Having a set of compiled drivers would make things so much easier 🙂 Greatly appreciate your efforts to support and modernize this older but still useful devices. I’ve been having trouble compiling the SurfaceInputProvider driver for MultiTouch Vista. I haven’t been able to resolve an issue with the missing references using either the V1.0 or 2.0 SDK assemblies.
I was missing the calibration data and the card so created and printed my own from a photograph I’d seen online (via a professional printer for $30). Works really well. You can also down the Windows Touch Pack which won’t normally install but if you’re running Multi-Touch Vista at the time it will install. Hi Rajen, I have the 41inch Samsung Microsoft Surface SUR40 table running Windows 7 Professional. In Surface mode, it has the awesome water feature and Bing, that goes nowhere. In Windows 7 Pro mode, the touch control does not work, only mouse and keyboard.
I would like to upgrade to Windows 10, and be able to use the touch surface capabilities within the Windows 10 environment. Questions: 1. Do the above instructions work just as well for the Samsung SUR40? Will Windows 10 function properly on the SUR40?
What more can be added, or configured to operate within the Surface environment, even Bing? What needs to be configured for Windows 10 touch to function properly? Are you still answering questions?
Thank you for the many years to f accumulated knowledge featured herein, we are still out here and benefiting from your service and knowledge, seriously, thank you and all other contributors. Hi Brandon, Thanks for the kind words. Unfortunately, I don’t have experience upgrading the SUR40 at all. The hardware and software are both vastly different from the original Surface, so I’m not sure the same upgrade process would apply one-to-one. The reason why touch only works in the immersive mode is that the touch input app is only loaded automatically in that mode (on the original Surface).
Perhaps you can do the same on the SUR40, but again, I don’t have enough experience with it to tell for sure. My best advice would be play around with it, but make sure you back-up the recovery partition in case you need to revert back to stock, or you need drivers/files from the original partition. Feel free to post back when you have things up and running, it might even be worth a blog post of your own 🙂. Hey Rajen, You seem to be well versed in this, so perhaps you are able to assist me.
I recently obtained a non working model, (Needed an SCM board), which by a stroke of luck, I was able to find online. Fast forward, previous owner wiped the hdd. Got a copy of Vista installed as well as was able to find a database someone uploaded with all the files (except the asus wireless adapter one, which everest helped me figure out). Anyway, my concern is, whenever I try to calibrate the cameras, 1 and 2 don’t show up while 3/4/5 do in the black test.
I see the black and white, white IR light of 3-5, but for 1 and 2, nothing. I’m not getting any SCM errors or table top errors either. Tried to pop out and put back in the ethernet cables, but got nothing as well: /. Is this normal or are those 2 camera’s giving me an issue? I didn’t have a calibration board, but used a white piece of foam-board for a basic calibration, but when I turn on ‘touch’ from desktop I get a “Filter Graph” error, but if I open it in the folder, it works fine.
When I open in the folder then open the surface shell, the touch still doesn’t work. Well something dawned on me.
The camera has to work, because in the calibration setting I just realized that the image it shows is not the camera but the camera’s view. So on 1-2, if I place my hand on the screen, I see my hand, but on 3-5 I see a bright light. Around the middle (which I misinterpreted that as the camera.) I’m currently trying to obtain a system ISO from someone to see if my table is operating correctly, because even after a basic calibration, when I try to run the image seeing software from the desktop (it has /r surface) at the end of the exe path in properties, I get a filter graph error (whatever that means). But if I run it directly from the C drive, I don’t get that error, because its missing the /r surface instruction.
Either way, when its on, and I run the surface mode, i don’t get touch active:(. Hello, I’m Rep’till from France, I speak a very little bit english I’m so sorry but i need your help for my pixelsense (microsoft Surface 1.0) I need a drivers for activate a “surfaceMode” i don’t have all programs i have just windows vista edition integrale fr (ultimate) activated, all windows vista original drivers and files originally are LOST. I give this computeur coffee bar on the net for 100euro the ancient admin of the beast it’s a “NOOBY informatician” and he installed windows 10. He forgot all files it’s so difficult for me write or speak english, please help me for the restoration of my coffee table (backups, restoration, driver and other) BIG THANKS.