Durante minha viagem aos Estados Unidados para participar do MVP Summit em 2013, comprei um NETDuino para conhecer e aprender como programar para Arduino, mas esse ficou engavetado por um longo período.
Mas depois de algum tempo resolvi iniciar meu apredizado com esse novo brinquendo e aproveito para divulgar aqui um pouco do que aprendir.
Pode se dizer que o NetDuino é o Arduino para quem desenvolve com C# ou VB, ele manté a compatibilidade de pinagem com o Arduino e foi criado justamente para permitir aos que trabalham com .NET se embrenhar nesse universo de prototipagem.
O Modelo que comprei foi o NetDuino GO Starter Kit, pelo nome já é possível perceber que se trata de um KIT para iniciantes. Mas mesmo sendo uma versão starter, ele oferece 6 vezes mais velocidade e espaço para código que o Netduino Plus, e ainda tem mais memória.

Imagem 01: Netduino GO montado
Para quem não conhece o Arduino, é uma plataforma OpenSource de Prototipagem eletronica, criada por volta de 2005 pelo professor italiano Mássimo Banz, com proposito de permitir artistas e entusiastas criarem projetos de eletronica sem precisar conhecer eletronica. Podemos dizer que o Arduino seja um conjunto de ferramentas que permite criar projetos de prototipagem eletronica. Mais detalhes em http://pt.wikipedia.org/wiki/Arduino.
E o NetDuino é uma plataforma també OpenSource de Prototipagem Eletronica com .Net Micro Framework, e suas placas são compativeis com a pinagem do Arduino (exceto o NetDuino Go), o que significa que é possível comprar placas adicionais (Shields) para o Arduino e usar com o Netduino.
Veja o Arduino e Netduino lado a Lado.



Através das imagens acima é possíve perceber a compatibilidade de pinagem entre o Arduino e o Neduino Plus, e a diferença para o NetDuino Go.
Agora que você já tem uma leve ideia do que se trata o NetDuino, podemos começar a falar de desenvolvimento para ele.
Para desenvolver para o NetDuino você terá que ter uma ferramenta de desenvolvimento, neste caso o Visual Studio 10 ou superior, o .Net Micro Framework e o SDK do NetDuino. Você poderá fazer o download de todos os recursos através do site http://www.netduino.com/downloads/. Só fique atento para fazer o download do SDK de acordo com o modelo do teu NetDuino.
Com os recursos instalados podemos iniciar o desenvolvimento.
Neste primeiro Post, vamos apenas mostrar como criar o projeto e fazer o Led do NetDuino piscar, em posts futuros vamos avançar e aos poucos conhecer a plataforma.
Para esse exemplo vou usar o Visual Studio 2012.
No Visual Studio Crie um novo Projeto e nos Templates do Micro Framework escolha Neduino Go Application (C#). Estarei usando esse template pois como já fora dito, meu modelo é o NetDuino Go.
Dê um nome para seu projeto, usarei NetDuinoPiscarLed.
A escolha do template ajudará a você configurar o seu ambiente com os recursos necessários para desenvolver, se por alguma razão não aparecer o template para você, basta criar um Projeto Microsoft Framework Console Apllication e em seguida adicionar as referencias necessárias.
Para esse nosso projeto, já fora adicionada as referências necessárias:
- GoBus;
- Microsoft.SPOT.Hardware;
- Microsoft.SPOT.Hardware.PWM;
- Microsoft.SPOT.Hardware.SerialPort;
- Microsoft.SPOT.Native;
- SecretLabs.NETMF.Hardware;
- SecretLabs.NETMF.Hardware.NetDuinoGo;
As referencias GoBus e SecretLabs.NETMF.Hardware.NetDuinoGo são especificas do modelo NetDuino Go.
Ligue seu NetDuino ao Cabo USB e ao Computador.
Agora você pode pressionar F5 para executar sua aplicação. Como você ainda não desenvolveu nada, servirá para testar a conexão com sua placa.Agora abra o arquivo Program.cs, pois esse será sua aplicação.
Para fazer piscar o Led do NetDuino será necessário adicionar referencia ao NetduinoGo.RgbLed. No Solution Explorer Clique com botão direito em References e em seguida Add Reference e procure por NetduinoGo.RGBLed e Conect a Placa RGBLed a primeira porta do NetDuino.
O Código ficará assim:
using System;
using System.Threading;
using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using SecretLabs.NETMF.Hardware;
using SecretLabs.NETMF.Hardware.NetduinoGo;
using NetduinoGo;
namespace NetDuinoPiscarLed
{
public class Program
{
static readonly RgbLed RGBLed = new RgbLed(GoSockets.Socket1);
public static void Main()
{
while (true)
{
RGBLed.SetColor(255, 0, 0); ; // Ligar o LED
Thread.Sleep(250); // Aguardar 250ms
RGBLed.SetColor(0, 255, 0); // Desligar o LED
Thread.Sleep(250); // Aguardar 250ms
}
}
}
}
Execute a sua aplicação e veja um pequeno Led na placa piscando e mudando de cor.
No Próximo avançamos mais.