Rust for Windows 10 IoT Core

I am curious whether anybody did anything with Rust for Windows 10 IoT core.

I tried to Google it, but I haven't found any good references.

The only thing which I read and that gives me pause is Platform support page (Platform Support - The rustc book).

Based on my (very high-level understanding) Windows 10 IoT core requires UWP apps. And it looks like it's in tier 3 support. However, I may be misread this either on Windows 10 IoT side or not fully understand the Rust side.

Is IoT Core still a thing? I thought it was dead. MS released it for the Raspberry Pi some years ago. It never got support or updates. I believe it does not run on new Pi models. What platform do you want to run it on?

It's running on a point-of-sale device. Right now, I am early in the feasibility investigation. (BTW. There is a good chance that they run Win10 IoT Enterprise in there, I still need to figure out this bit of info).

Yeah, IoT Core supported Rasberry Pi 2 and 3. However, it doesn't support 4.

I have no idea whether it's a thing or not on a bigger scale. On the one hand, I saw a bunch of "flags" that it's not widely adopted. On the other hand, Microsoft released Windows 11 IoT, which implies that they still push it forward.

Based on Overview of Windows 10 IoT Core - Windows IoT | Microsoft Learn I think you need an UWP app only if you want to show UI in the foreground but not if you want to run in the background without UI. So you may be able to get away with compiling your program as non-UWP executable depending on your use case.

As bjorn3 says you should be able to compile non-gui Rust applications for IoT Core. The only caveat is that IoT Core has a reduced Windows API. The stdlib should be fine though third party crates may or may not.

If you do want a GUI then the usual way is to wrap a Rust cdylib in a UWP C# application. The C# application takes care of the UI and forwards actions/events to the cdylib. This design also makes packaging easier because it has good first party support.

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.