.NET can be used to build IoT applications, using sensors, displays and input devices. Most ARM64 and ARM32 (hard float required) single board computers can be used, incuding Raspberry Pi.
The System.Device.Gpio package includes protocol APIs, such as GPIO, I²C, andSPI. The Iot.Device.Bindings package includes community-supported bindings such as SN74HC595 and CharacterLcd.
The following samples demonstrate various scenarios:
- Blinking LED
- More blinking lights
- Force Sensitive Resistor usage
- LED Matrix - Weather
- Serial Port - Arduino
The .NET IoT APIs require using at least .NET 8.0.
Many of these samples use the Raspberry Pi, however, .NET Core can be used with other devices. .NET is supported on Raspberry Pi 2B as well as 3 and 4 models (ARMv7/v8). .NET is not supported on Raspberry Pi Zero or Arduino. For the later ones, there are alternatives like NanoFramework or our own Arduino Compiler.
We primarily test the IoT APIs on Debian Linux, although we expect them to work on most Linux distros. On Windows, we test using USB devices, such as FT-4222 or Arduino interfaces.
