Desarrollo de aplicaciones para dispositivos IoT con las bibliotecas .NET IoT

.NET se ejecuta en varias plataformas y arquitecturas. Se admiten los paneles de Internet de las cosas (IoT) comunes, como Raspberry PI y Hummingboard. Las aplicaciones de IoT suelen interactuar con hardware especializado, como sensores, convertidores analógicos a digitales y dispositivos LCD. Las bibliotecas .NET IoT habilitan estos escenarios.

Bibliotecas

Las bibliotecas .NET IoT se componen de dos paquetes NuGet:

System.Device.Gpio

System.Device.Gpio admite varios protocolos para interactuar con marcas de hardware de bajo nivel para controlar los dispositivos. Entre ellos, se incluye:

  • E/S de uso general (GPIO)
  • Circuito interintegrado (I2C)
  • Interfaz de periféricos en serie (SPI)
  • Modulación de ancho de pulso (PWM)
  • Puerto serie

Iot.Device.Bindings

El paquete Iot.Device.Bindings:

  • Contiene enlaces de dispositivos para simplificar el desarrollo de aplicaciones mediante el ajuste de System.Device.Gpio.
  • Es compatible con la comunidad, y se agregan enlaces adicionales continuamente.

La lista completa de enlaces de dispositivos disponibles se mantiene en GitHub.

Entre los enlaces de dispositivo usados habitualmente se incluyen los siguientes:

Sistemas operativos admitidos

System.Device.Gpio es compatible con cualquier sistema operativo que admita .NET, incluidas la mayoría de las versiones de Linux que admiten ARM/ARM64 y Windows 10 IoT Core.

Sugerencia

Para Raspberry Pi, se recomienda Raspberry Pi OS (64 bits). No se requiere escritorio, por lo que se puede usar Raspberry Pi OS Lite para reducir el tamaño del sistema operativo.

Animated GIF showing the Raspberry Pi Imager tool. The user selects 'RASPBERRY PI OS LITE (64-BIT) from the list of available operating systems.

Plataformas de hardware compatibles

System.Device.Gpio es compatible con la mayoría de las plataformas de un solo panel. Las plataformas recomendadas son Raspberry Pi (2 y posterior) y Hummingboard. Otras plataformas que se sabe que son compatibles son BeagleBoard y ODROID.

Los equipos Windows, macOS y Linux se admiten mediante el uso de un puente USB a SPI/I2C.

Importante

.NET no es compatible con los dispositivos anteriores a ARMv7, incluidos los dispositivos Raspberry Pi Zero y Raspberry Pi anteriores a Raspberry Pi 2.

Recursos