Desenvolver aplicativos para dispositivos IoT com as Bibliotecas de IoT do .NET

O .NET é executado em várias plataformas e arquiteturas. Há suporte para quadros comuns de IoT (Internet das Coisas), como Raspberry Pi e Hummingboard. Os aplicativos IoT normalmente interagem com hardware especializado, como sensores, conversores analógico/digital e dispositivos LCD. As Bibliotecas IoT do .NET habilitam esses cenários.

Bibliotecas

As bibliotecas IoT do .NET são compostas por dois pacotes NuGet:

System.Device.Gpio

System.Device.Gpio oferece suporte a vários protocolos para interagir com pinos de hardware de nível inferior para o controle de dispositivos. Estão incluídos:

  • GPIO (E/S de uso geral)
  • I2C (circuito interintegrado)
  • SPI (interface de periférico serial)
  • PWM (modulação por largura de pulso)
  • Porta serial

Iot.Device.Bindings

O pacote Iot.Device.Bindings:

  • Contém associações de dispositivos para simplificar o desenvolvimento de aplicativos encapsulando System.Device.Gpio.
  • Tem suporte da comunidade e associações adicionais são adicionadas continuamente.

A lista completa de associações de dispositivo disponíveis é mantida no GitHub.

Algumas associações de dispositivos comumente usadas incluem:

Sistemas operacionais compatíveis

System.Device.Gpio tem suporte em qualquer sistema operacional com suporte para .NET, incluindo a maioria das versões do Linux com suporte para ARM/ARM64 e Windows 10 IoT Core.

Dica

Para o Raspberry Pi, recomenda-se o Raspberry Pi OS (64 bits). Nenhuma área de trabalho é necessária, portanto, o Raspberry Pi OS Lite pode ser usado para reduzir o tamanho do sistema operacional.

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 com suporte

System.Device.Gpio é compatível com a maioria das plataformas de quadro único. As plataformas recomendadas são Raspberry Pi (2 e superior) Hummingboard. Outras plataformas sabidamente compatíveis são BeagleBoard e o ODROID.

Computadores com Windows, macOS e Linux têm suporte por meio do uso de uma ponte USB para SPI/I2C.

Importante

Não há suporte para o .NET em dispositivos anteriores ao ARMv7, incluindo dispositivos Raspberry Pi Zero e Raspberry Pi anteriores ao Raspberry Pi 2.

Recursos