[#XDUINO] #Arduino vs #Netduino vs #NetGadgeeter (III), empezamos con Netduino

image

Serie:

  1. Introducción. https://elbruno.com/2013/07/13/xduino-arduino-vs-netduino-vs-gadgeteer-i/
  2. Ejemplo con Arduino. https://elbruno.com/2013/07/15/xduino-arduino-vs-netduino-vs-netgadgeeter-ii-usamos-el-arduino/

Buenas.

Después del ejercicio super simple de ayer con Arduino:, hoy toca cambiar a Netduino. Lo primero que nos encontramos es que, trabajando con Netduino, no tenemos una extensión oficial para Visual Studio 2012 (ni hablar de VS2013).

El escenario es rebuscado asi que intentaré explicarlo. Netduino utiliza la plataforma de .Net Micro Framework (NETMF). La versión actual de NETMF es la versión 4.3 que SI se integra con Visual Studio 2012. Sin embargo casi todas las placas de Netduino que se venden vienen con la versión 4.2 de NETMF. Por otra parte, la extensión oficial para trabajar con Netduino es para Visual Studio 2010 y con NETMF 4.2. Sumando estas partes tenemos una ensalada donde no coinciden las piezas.

Es más, si buscas en la página oficial con las descargas de Netduino, podrás ver que no hay descarga para NETMF 4.3 > http://netduino.com/downloads/. Y aquí llega el gran Chris Walker a nuestro rescate con esta entrada en un foro donde nos guía a la descarga de Netduino SDK 4.3, que SI nos permite trabajar con Visual Studio 2012.

Esto tiene mejor pinta, ahora en la ventana de nuevos proyectos de Visual Studio ya podemos ver los proyectos de Netduino.

image

Ahora me toca seleccionar el hardware para ver si todo funciona. En este caso utilizaré

image

El programa que utilizaré es muy simple, hace un blink con el LED que viene integrado en la placa. El mismo posee el siguiente source code:

   1: using System.Threading;

   2: using Microsoft.SPOT.Hardware;

   3: using SecretLabs.NETMF.Hardware.Netduino;

   4:  

   5: namespace NetduinoApplication1

   6: {

   7:     public class Program

   8:     {

   9:         public static void Main()

  10:         {

  11:             var ledStatus = false;

  12:             var led = new OutputPort(Pins.ONBOARD_LED, false);

  13:             while (true)

  14:             {

  15:                 led.Write(ledStatus);

  16:                 Thread.Sleep(500);

  17:                 ledStatus = !ledStatus;

  18:             }

  19:         }

  20:     }

  21: }

Dentro de un Loop infinito este programa, cambia el estado del LED de la placa cada medio segundo. Con la placa conectada al puerto USB, al darle F5 me encuentro con el siguiente error:

Error    2    Cannot deploy the base assembly ‘mscorlib’, or any of his satellite assemblies, to device – USB:Netduino twice. Assembly ‘mscorlib’ on the device has version 4.2.0.0, while the program is trying to deploy version 4.3.0.0        

El board del Netduino 2 tiene montado NETMF 4.2 no el 4.3. La solución es simple, en las propiedades del proyecto, en la sección Application cambio el framework para que sea el NetMF 4.2.

image

También en las propiedades del proyecto, verifico que el transporte se realize utilizando el cable USB a mi placa.

image

Y listo después de un F5 ya tengo la aplicación desplegada y funcionando.

Mañana postearé sobre como implementar el ejercicio propuesto utilizando el BUTTON y el LED de la placa y como hacerlo con un Groove sobre la misma.

 

Downloads: http://www.netduino.com/downloads/netduinosdk_NETMF43.exe

Referencias: http://forums.netduino.com/index.php?/topic/8083-how-to-upgrade-to-the-net-micro-framework-v43-sdk/

Saludos @ Home

El Bruno

image image image

6 thoughts on “[#XDUINO] #Arduino vs #Netduino vs #NetGadgeeter (III), empezamos con Netduino

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.