Windows 10 IoT Grew Out of Windows Embedded
Windows 10 IoT is an evolution of an earlier Windows edition—Windows Embedded. If your memory is long enough, you may recall stories of ATMs running Windows XP and in need of serious updating. Those ATMs, and other devices like it, ran Windows Embedded (XPe). The central concept is a stripped down version of the Windows operating system that would run well on less powerful hardware, run one use case scenario, or both.
A bank might use this OS for an ATM, a retailer might use it for a POS (point-of-sale) system, and a manufacturer might use it for a simple prototype device. However, Windows IoT isn’t just a rebranded version of Windows to take advantage of the Internet of Things, nor is it solely for businesses and large corporations. That’s evident in the two different versions of the OS, IOT Enterprise and IoT Core.
RELATED: What is the Internet Of Things?
IoT Enterprise Is for Multiple Device Use
Microsoft offers Windows 10 IoT in two flavors, Enterprise and Core. The Enterprise version is essentially Windows 10 Enterprise but with additional lockdown controls. With those controls, you can force Windows to display a single kiosk app, for example. Windows will still run in the background, but average users shouldn’t be to access those services. If you’ve stepped up to a check-in kiosk and noticed the check-in app has crashed and Windows 10 is in view, you’ve probably encountered Windows 10 IoT Enterprise.
Similarly to Windows 10 Enterprise, you can’t buy a license for IoT Enterprise in a store. Microsoft distributes licenses through resale partners and OEM Agreements. Because this is a full version of Windows, you get all the power that comes with it but one distinct disadvantage: IoT Enterprise will not run on ARM processors.
IoT Core Is for Simple Boards, Solo Programs, and Sensors
IoT Core, on the other hand, is stripped down in comparison. You don’t get the full Windows Shell experience; instead, the OS can only run a single Universal Windows Program (UWP) app and background processes. However, IoT Core will run on ARM processors. You would choose IOT Core to run simple programs that may not require as much direct user interaction. For example, the Glas Thermostat uses IoT Core. And, thanks to the ARM compatibility, you can run IoT Core on simple boards like the Raspberry Pi.
That last feature makes IoT Core an excellent choice for quick prototypes for manufacturers or one-off projects for a hobbyist. Hackster, a hardware and software development community, hosts quite a few one-off IoT Core examples, including a pet-door with recognition, a facial recognition door, a smarthome dashboard, and a magic mirror. These are all projects that you could feasibly build on your own if you have the necessary skills. Microsoft even demonstrated a Raspberry Pi-powered robot that used Windows IOT and interacted with holograms. It provides the resources required so you can download IoT Core for personal use with a free license.
Additionally, IoT Core on a Raspberry Pi or Minnowboard can be paired with sensors and mechanisms like cameras, PIR sensors, servos, and temperature sensors for expanded use. This, in turn, allows Windows 10 to communicate the data gathered by those sensors, which is the basic premise of the Internet of Things.
Windows IoT Is a Closed-Source Choice for Visual Studio Developers
You might be wondering why anyone would use Windows IoT instead of any number of alternatives like Linux or Android. Most of that boils down to what or who the device is intended for and who is doing the programming.
The advantages of open source, like licensing and customization options, are often touted as great things—and they are. But open source isn’t the best choice for every scenario. Occasionally, specific projects demand closed source (or proprietary) software. Some businesses and governments (for better or worse) expressly forbid the use of open source software in their purchases, too. Even when a company doesn’t ban open source software, it may be unofficially discouraged or frowned upon. If you are a manufacturer and are capable of working with either option, you’ll use whatever makes your customer happy.
But putting that open source versus proprietary software debate aside, there’s another distinct advantage for some people. Windows 10 IoT ties into Visual Studio, and you can use that IDE to develop programs for it. In fact, IoT Core is designed to run “headless” (without a graphical interface) and will connect to another Windows 10 machine for programming and feedback. If you spend most of your development time in Visual Studio anyway, choosing Windows 10 IoT instead of an alternative can save in learning and setup time. You’ll be able to put your full experience to immediate use.
The average everyday user probably won’t download and use Windows 10 IoT, but that doesn’t mean they won’t encounter it. For the most part, if you’re not a developer, this OS is working for you in ways that you may not even notice. It could be powering the kiosk you used to order food at a restaurant or preparing your next cocktail. Even if you are a developer or someone who likes to dabble as a hobby, but you find the idea of learning an alternative like Linux too time-consuming, Windows 10 IoT could be the best option for your next project.