Windows CE On A Raspberry Pi

WinCE

From all the BSDs and Linuxes to extraordinarily odd operating systems, it seems just about every OS has been ported to the Raspberry Pi. All except Windows, that is, but a few people are working on it.

This build comes to us from [ideeman] who wanted to show off his Raspi running Windows Compact Embedded. It technically works, but there are still a few problems. In his own words:

Unfortunately, as it is now, I can’t really control it through anything else than via the kernel transport layer (through serial, directly to visual studio, and I still get lots of checksum errors, must me from the cheapo USB<==>TTL 3.3V adapter I’m using). The original developer (dboling) is still struggling with native USB drivers, but as you can see, he already got a (unaccelerated) running display driver.

If you’re interested, I can send you the compiled kernel image, but I don’t think you’ll do really much without the serial debugging provided through Visual Studio 2008 (+Platform builder 7.0)… I’m not sure it can be legally released to the public though.

While running Windows Compact Embedded isn’t as cool as running Windows RT on a Raspi, the latter will never happen. Windows RT requires 1 GB of RAM and a 1 GHz ARM v7 processor, neither of which the Pi has. Still, it’s a very impressive hack and with a few more devs on board, [dboling] and [ideeman] might end up with a truly functional system.

Below are pics of [ideeman]‘s Raspi running WinCE. For [ideeman], feel free to link to a torrent in the comments.

Comments

  1. Galane says:

    Can the x86 version of this run normal Windows programs?

    • six677 says:

      No. “Normal” windows uses the NT kernel as does windows server, windows RT (which is essentially windows 8 anwyay) and Windows Phone 7, rumoured the Xbox One is likely using NT also.
      Windows CE is a real time kernel with no relation to the NT kernel beyond name, it powered Windows mobile, windows phone 7, rumored to be under the hood of the 360, powered zune, point of sale terminals, ATM’s, car entertainment systems etc etc.
      Its actually CE vs NT that is to blame for windows phone 7 being incapable of updating to windows phone 8. Seeming as the kernel is changed and the kernel is the core of the operating system, you would have to reflash the entire phones software.

  2. squeeks says:

    In essence no you can’t run normal windows programs, but what do you classify as a normal windows programs?

    You will be able to run .net programs, but you have to use the compact framework (be prepared to do a lot of Pinvoke wrapping…), rather than the normal full fat version. Create a cab file, drop it on the device and jobs a good’s.

    The Kernel on CE is different from your normal WINNT and Windows RT environment, so while a lot of the concepts are the same or similar, you will need to compile and write an applications specifically for the Windows CE environment and again you’ll find a lot of the libraries you are used to are extensively slimmed down.

  3. fartface says:

    ” It technically works, but there are still a few problems. ”

    No that means that they have it 100% ported. Windows CE on all platforms has “a few problems” I am so glad I don’t have to write software for that horrid platform anymore.

    Kudos to them for porting, but it will not be used by anyone, it’s bad to write software for, it’s bad to use, it’s a big ball of horrible wrapped up in a bow.

  4. ideeman1994 says:

    hi!
    just to be clear, I didn’t do much more than building the BSP available thanks to dboling ;)

    as for the torrent itself, i’ll try to take care of it tonight…

  5. Jeff Nichols says:

    While running Windows Compact Embedded isn’t as cool as flying to the moon on your own home built airplane, the latter will never happen.

    Then why bring it up?

    • Yarr says:

      While the moderators taking an active interest in cleaning up the comments section of Hack-A-Day isn’t as cool as edgy fucksticks like you shit-and-running the comments in order to whine impotently about the HaD editors and nit-pick the articles worse than a herd of apes, the latter will never happen.

      But man, I really wish it would.

  6. Where's my fish says:

    The virus spreads, an unfortunate moment in history

  7. Pun says:

    Linux + Mono = full .NET support for the Ras Pi. It actually works really well.

  8. v00 says:

    This is cool on a number of levels. While Linux rules the roost on lots of consumer-grade embedded kit, Windows CE is *EVERYWHERE* in industry, and I mean everywhere. If they manage to get this working to the point that it becomes useful (though I doubt there’ll ever be accelerated graphics) then that could open the Pi up to a whole new market. Windows CE boards are expensive, especially when you consider that the license fee is only about 6 bucks.

    I’ve ported CE to a few things before, and while MS have tried to make it fairly painless, it’s still a hell of a lot of work. Hats off to the guys responsible.

  9. buhradlee says:

    I want to ask why, but then again why not. My curiosity though has to ask, is there any specific reason for doing this, or is this just a project to say it can be done?

  10. MrX says:

    @v00

    Wrong, depends on *which* industry. ATM industry, yes but not for long. Windows CE is being ditched out.
    Now in Router/TV/NAS/Toaster/uC/FPGA/CellPhone… industries? That’s 99.999% of Linux my friend.

    (sounds like you have been living under a rock or something)

  11. RafMan says:

    Just because you can doesn’t necessarily mean you should…

  12. DerGoGo says:

    Well I like it alot since many of the navigation devices like tomtoms and garmins are running windows ce and therefor their software should be compatible. We could see IGo on a Raspberry Pi since Android is not going to happen.

  13. how says:

    How can one port Win CE without having the source?
    I mean if you want to use it on a different platform, don’t you have to rewrite some parts of win ce?

    • six677 says:

      Microsoft do release quite a few tools for porting windows CE to your own boards. I have access to some of them on microsoft dreamspark.

      • v00 says:

        Microsoft give you most of the image in binary form, and the porter just writes the abstraction layer for the platform in question. It’s much like writing drivers for desktop Windows, all you have to do is write your driver to be able to plug in to Microsoft’s pre-defined interfaces. This does mean that you’re stuck to architectures that MS have compiled CE for, though, but that’s a fairly wide field these days.

  14. aztraph says:

    I am wondering why Windows CE has a link on their website listed as “Customer Success Stories?” I would think that if a product really did a good job you wouldn’t need to advertise it, the word would spread on its own. Having to put a link up to prop it up seems a little desperate.

    I do realize that this could and most likely be a user issue, user issues would happen if it was more popular.

  15. all_out_of_bubblegum says:

    Its not a big deal on x86 versions of Windows to bypass the CPU and memory requirements when installing. It could probably be done with RT as well. Obviously, it may not perform as well, but just because Windows demands a certain amount of memory and CPU speed to install, doesn’t necessarily mean it requires it to run.

    • v00 says:

      It’s not about CPU speed here, RT is compiled for ARMv7, which the Pi doesn’t support. Full stop. It’s like trying to run a 64 bit OS on a PC that only supports 32 bit software. It just won’t work.

  16. Andre says:

    ARMv7 and 1 GB of RAM. That’s what a CubieBoard got. So, does that mean Windows RT could be ported to the CubieBoard?

  17. ces tr says:

    What version of WinCe is that image ?

  18. Dan Peirce says:

    That last thing I’d want is to run MS on my Raspberry Pi. I’d really like to see FOSS continue to expand.

    • arkkun says:

      What a pity that FOSS is so weak, jealous and controlling that the mere possibility of the freedom to run any OS, including Windows CE, on an open board threatens FOSS and makes its zealots go mad with rage.

  19. Tulio Guimaraes says:

    Why? What makes people put a proprietary S.O. in a Raspberry Pi!!!
    People should go back to Richard Stallman speches and REALLY understand why Free Software and Open Source philosophy started, and what is the philosphy about!! That was a real dumb thing to do. Really walking backwards pointing towards the wrong path, a throwback to freedom and the incentive to technology development!! By doing that you are holding people back… absoultely DISLIKED and DISAPPROVED!!

    • arkkun says:

      LOL. FOSS fascists and zealots are just like the Christian zealots that “kill in the name of Jesus”.
      You really need to learn what the free software and open source is. You also need to understand what an “open platform means”. You seem to be unable to grasp what “open” means. Open platform means that you are free to build one yourself, modify it or run any software that you’re able to get running. Any. Linux, Windows, FreeBSD. Any.

      Freedom is NOT about fascism, racism, sexism, inequality and exclusionism. It’s the opposite.
      By rejecting the idea of installing a closed-source software on an open platform, you’ve just tarnished this “open platform”. It’s not open if you cannot do what you want with it.

  20. Steve says:

    Some of you seem very stupid here… only bashing against WinCE without any background knowledge.
    I don’t know what should be wrong with Windows CE. It comes with a full stack of services (i.e. HTTP Server, MSMQ and much more). It’s really really easy to develop software with the .NET Compact Framework. With WEC2013 you can even develop XAML (WPF) apps like on Windows Phone 8.
    I would suggest the Linux kiddies to go to their playground and hacking the command line…

  21. Sherlock, No Shit. says:

    How about this: Somebody reconfigure XP to run on ArmV6 and everyone stop wasting time arguing about CE. Easy nuff?

  22. sojab0on says:

    one little problem with that is win xp doesnt support ARM architecture at all so that would be the biggest waste of time

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,672 other followers