As you may have heard, Microsoft is slowly replacing its monolithic and proprietary .NET technologies with the open, modular, and cross-platform .NET Core. As part of this effort, the broader .NET community is porting .NET Core to various Internet of Things (IoT) platforms, including Raspberry Pi 2 and 3.
The software giant has been pretty quiet about this work, choosing instead to focus its own efforts at bringing .NET Core to higher profile platforms such as Windows, macOS and Linux. But as IDG noticed this week, the broader .NET community is also making progress bringing this platform to IoT generally, and to Raspberry Pi specifically. And there is already an early release on GitHub for interested parties.
“We can confirm there is an ARM32 version of .NET Core out on GitHub,” a Microsoft spokesperson told IDG. “It is an implementation of .NET Core that Samsung, Microsoft, and the community are working on. We are making it available to customers … so they can use it on Raspberry Pis, IoT, etc.”
Microsoft confirming that something exists on GitHub is semi-pointless—anyone can go see it—but the underlying message there is that it’s not just Microsoft working on .NET Core. Now that these technologies are truly open, they can—and will—spread anywhere. And Samsung mention, by the way, means that .NET Core is also coming to Tizen, apparently in late 2017.
“Samsung will be shipping their Tizen platform on both .NET Core x86 and .NET Core ARM32,” the spokesperson told IDG. “They will build their own supported releases of this just like Red Hat builds their own supported releases of .NET Core.”
OK, but what about Raspberry Pi?
“ARM32 support for .NET Core is still being brought up,” the GitHub page explains, “but there are now daily runtime builds that are ready to use. There is no SDK that runs on ARM32 yet but you can publish an application that will from on a Raspberry Pi.”
I haven’t tried this outside of Windows yet beyond some light console app work in the Bash for Windows 10 Linux environment, but you can now install .NET Core on Linux or macOS and then create and run .NET Core apps in those environments. With this community release, you can also do so on Raspberry Pi.
Looking at the GitHub instructions, this process appears to work identically on Raspberry Pi, but you need to be running Ubuntu Linux (14.04 or 16.04) or Windows 10 IoT Core on that hardware. Which I guess makes sense. But this also casts the cross-platform nature of .NET Core in a new light: Not only does it run on different software platforms, but it can run on different hardware platforms too. Neat!