Get the Raspberry Pi’s “Sense HAT” working on Windows IoT

This project was about to make the Raspberry PiSense HAT” working on the Windows IoT platform.

I had some initial help from Graham Chow who’ve done a great job to get the LEDs and joystick up and running.

Then I contacted Richard Barnett who is the father of the RTIMULib used by the official Sense HAT installation. This library was written in C++ and managed the sensor readings. Richard “got onboard” and did the raw porting of his library (so far the senors used by the Sense HAT) into C#.

I did some refactoring of the library and have included the display and keyboard drivers into a complete C# project solution which you will find here (including the full source code). There is also a NuGet package to download for Visual Studio 2015 called Emmellsoft.IoT.RPi.SenseHat.

The solution contains a demo project that shows some of what you can do with the Sense HAT.

Here’s a video showing some of the demos:

(Note: It’s really difficult to take pictures or film the Sense HAT due to the relatively slow update of the LED displays. I had to use a really old camera with lousy frame rate to get an acceptable picture; otherwise the display would be blinking and flickering. Our eyes are luckily “bad enough” to find the LED update frequency acceptable.)

Update: Now there is support for sprites. Thanks Johan Vinet for your tiny Mario! Video below:


Author: Mattias

Senior .NET software consultant.

2 thoughts on “Get the Raspberry Pi’s “Sense HAT” working on Windows IoT”

  1. Hi Mattias, Thank you for making these classes to easily handle the SenseHat with Windows 10 IoT. I am currently looking into making the RPi3 & Sense Hat combo part of a Visual Basic programming class. What, judging from your long experience, would be easier (i.e. faster): turning your classes into a library, that could be used for any .NET language, or starting from scratch as you did?

    1. Hi Nils! It was my very intention to make the code as a library, and I have already published it as a NuGet package.
      I have never created anything in Visual Basic, but isn’t it possible to reference a .NET NuGet package into a VB project? Or must the package be created (or the code written) in a certain way? Anyway, the package is called RPi.SenseHat.

Leave a Reply