Netduino 2 Firmware v4.3.0 (beta 1)


Versión: 4.3.0 Beta 1 (versión 4.3.0.0 beta 1) 

Este firmware requiere el uso del . NET Micro Framework SDK v4.3 y Netduino 4.3.0.0 SDK . 

Con este firmware, tendrá los siguientes recursos disponibles para el código: 
192KB flash 
60KB RAM 

Este firmware incluye las siguientes actualizaciones: 
1. . NET MF qfe2 4.2 y 4.3 correcciones de errores 

Este firmware no incluye: 
1. SecretLabs.NETMF.Hardware.Diagnostics.dll. Esto se añadirá en la próxima versión. 

Este firmware también incluye las actualizaciones anteriores: 
1. Corrección de error: Configuración SPI reloj de ralentí elevada Ahora apoyado 
2. Ahora compatible con el legado SecretLabs AnalogInput y clases de PWM 
3. Corrección de errores: SPI selección de chip momento corregida 
4. Corrección de errores: PWM de frecuencia corregida 
5. Nuevo: más fiable reiniciar durante la implementación 
6. Adicional de corrección de errores I2C – pines ve obligado a la configuración adecuada 

Para encontrar la versión actual del firmware Netduino: 
1. Ir al menú Inicio> Programas> Microsoft. NET Micro Framework 4.3> MFDeploy 
3. Conecte su Netduino a su PC usando un cable Micro USB. 
4. En la sección de dispositivos en la parte superior, seleccione USB en vez de serie. Su Netduino debe aparecer en la lista desplegable, si no, seleccionarlo. 
5. Seleccione el menú Destino, opción de funciones de dispositivos. 
6. En la casilla de salida, encontrar el valor de “SolutionReleaseInfo.solutionVersion”. Esta es la versión del firmware. 

Para actualizar el firmware: 
1. Separe su Netduino 
2. Pulse y mantenga pulsado botón de su Netduino mientras que enchufarlo vía USB, lo que lo pondrá en modo bootloader. 
3. Borrar el firmware de su Netduino utilizando el Tester STDFU v3.0.1 aplicación 
> A. Seleccione la pestaña “Protocolo” 
> B. Pulse el botón “Crear desde Map” 
> C. Seleccione el botón de opción “Borrar” 
> D. Pulse el botón “Go” 
> E. Espere a que el proceso de borrado para completar 
4. Flash en el archivo adjunto. DFU con el Demostrador DfuSe v3.0.2 ST aplicación (incluido con STDFU Tester) 
> A. Localice el panel “Actualizar o Verificar Acción” (panel inferior derecho) 
> B. Pulse el botón “Elegir …” y seleccione el archivo adjunto DFU 
> C. Marque la opción “Verificar después de la descarga” 
> D. Pulse el botón “Actualizar”. Tomará unos minutos para actualizar su Netduino. 
> E. Desconecte y vuelva a conectar el Netduino (apagar y encender) o pulse “Agregar el modo DFU” 

Fuente:Chris Walker

 Licencia Creative Commons
solo-electronicos por Carlos Rodriguez Navarro se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 3.0 Unported.

Implementar un watch-dog con Netduino


¿Qué pasa si usted crea su propia aplicación Netduino, y un error lo  detiene de forma inesperada?
Primera respuesta: no hay problema, estoy en frente del depurador, y voy a tener el seguimiento de la pila completa de la excepción.
Segunda respuesta: es una pesadilla! Estoy en vacaciones de fin de semana, y mi sistema de rociadores basado en  Netduino se ha colgado de modo que tengo que pedirle  a mi vecino que resetee mi Netduino

Obviamente estamos interesados ​​en la segunda respuesta, o-mejor-la forma de evitar, como situación.

Cuando el hardware está dañado o el software está libre de errores, no hay muchas maneras de rescatar el control de la placa. Sin embargo, hay muchas, muchas situaciones donde nuestra placa funciona perfectamente (tal vez por semana) sin ningún problema en absoluto y tn pronto se mueve “en el lugar”, el primer problema que ocurre…
Dado que ninguno de utilización gustaría ser despertar a las 3 am para una parada del sistema, u obligarnos a volver a casa porque el rociador basado con Netduino no funciona correctamente, entonces podríamos hacer cumplir la fiabilidad mediante la adición de un así llamado “perro guardián”.
Es una forma muy sencilla de proteger el sistema de paradas no deseadas y  nos resuelve toda esta problematica pues  una buena práctica de programación, junto con un buen hardware, es el deber-tiene redundancia para la mayoría de la fiabilidad de cualquier sistema.

WatchDog externo

No sé quién inventó este nombre WatchDog … “perro guardián” … pero suena claro (al menos para mí) que hay dos temas diferentes:
  • el perro, que es el controlador;
  • la casa está vigilada por el perro.
Ahora, el sistema que falla potencial es la casa, y el perro vive respeto “externa” de la casa.
Eso es obvio, ya que si el sistema se bloquea se podría hacer la misma en el rescate?
Es tan obvio, que muchas personas están pidiendo una solución de software pura, tal vez usando un hilo separado como un controlador.
Hay taaaan muchas situaciones que pueden obtener un MCU para colgar, que llevarían a alguien de inmediato a una solución externa.
Algunos ejemplos:
  • sub o sobre-temperatura;
  • picos de tensión (tanto por encima de la oferta y por debajo del suelo);
  • fuerte ruido en general (especialmente cuando los cables largos están conectados directamente a los pernos de MCU);
  • errores de software;
  • la inestabilidad de hardware (por ejemplo, el cristal se detiene oscilante);
  • muchos otros.
Podría haber usado un chip personalizado para un perro guardián. El chip Atmel del Netduino incrusta un perro guardián, pero no ha sido impulsado por el firmware.
En su lugar, me gustaría mostrar un circuito muy simple diseñado por Mario Vernari , cuyo objetivo es principalmente intentar resolver este problema en particular.

Usaremos un simple contador: el 74HC4060 . Es un contador binario de 14 etapas, que incrusta también un oscilador RC básica. Todo esto para obtener una re-activable, de largo periodo del temporizador.
La palabra “timer” llama inmediatamente en mi mente la increíble ” 555 “chip: una obra maestra en el diseño del hardware de los ’70. BTW, tenemos un tiempo de reacción relativamente largo: al menos varios segundos.Eso es porque el Netduino tarda un par de segundos para completar el proceso de restablecimiento completo, entonces debemos tener en cuenta la lentitud del programa. Un organismo de control normales reacciona en milésimas de segundo, mientras que aquí estamos considerando docena de segundos, tal vez más. Durante un largo tiempo como el 555-temporizador normal no es confiable, porque se basa en la carga de los condensadores. Además, necesitaríamos un gran condensador bonita.
El 74HC4060 es mucho más simple para tiempos largos. Me desconecté el oscilador de frecuencia de alrededor de 60 Hz, que es el uso de:
  • Rt = 2.7k
  • Ct = 100n
Nota: consulte las 74HC4060 especificaciones.
Entonces, opté por la salida de la 10 ª etapa (es decir, Q9) como “tiempo de espera de señal”, que desencadena el reinicio Netduino después de unos 10 segundos. Ahora, diez etapas binarias producen una división de frecuencia de 1024 (= 2 ^ 10), ¿por qué 60 Hz dividido por 1024 no cede 10 segundos, pero 20?
Debido a que el reinicio ocurre tan pronto la salida Q9 resulta alta, que es después de sólo la mitad del tiempo total.

Así que, ¿cuál es el papel de la Netduino, tener miedo de poner a cero desde el 74HC4060?
Bueno, sí … el programa se ejecuta en el Netduino debe “refrescar” constantemente el contador, por lo que no será nunca llegar al Q9 alta. Básicamente tenemos que cualquiera de las salidas Netduino generando un impulso positivo a corto, que tiene que reiniciar el contador. Hasta la aplicación Netduino está funcionando correctamente, el pulso se mantendrá el contador en un valor relativamente bajo, y Q9 nunca le des alta. Por cierto, cuando el programa se cuelga, no hay generación de impulsos más reset, y el contador se puede ejecutar para alcanzar el Q9 alta. Esa señal se restablecerá la Netduino.

Un programa de prueba simple.

El programa siguiente se utiliza como una prueba para el organismo de control.
Esto hace que el LED intermitente durante un período determinado, a continuación, genera una excepción. Eso es un “bug” simulado, que en realidad cuelga todo el tablero. Bajo tales circunstancias, usted tiene sólo dos opciones: pulsar el botón “reset”, o desconecte y conecte la alimentación nuevamente. Dado que ninguno de ellos es adecuado funcionamiento para un contexto remoto, nos introducimos un poco de “ayuda”, que “presione el botón de reinicio para nosotros”.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
using System;
using System.Net;
using System.Net.Sockets;
using System.Threading;
using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using SecretLabs.NETMF.Hardware;
using SecretLabs.NETMF.Hardware.NetduinoPlus;
namespace NetduinoWatchdog
{
    public class Program
    {
        public static void Main()
        {
            //define the led port
            var led = new OutputPort(Pins.ONBOARD_LED, false);
            //just a long loop to make the led blinking
            for (int i = 0; i < 1000; i++)
            {
                //call the critical section
                Freezer(i);
                //wait for a while, then toggle the led status
                Thread.Sleep(100);
                led.Write(
                    !led.Read()
                    );
            }
        }
        static void Freezer(int count)
        {
            //this is just to simulate an unexpected event
            if (count == 20)
                throw new Exception();
            //keep the dog awaken
            Watchdog();
        }
        //define the watchdog port
        static OutputPort wdt = new OutputPort(Pins.GPIO_PIN_A5, false);
        static void Watchdog()
        {
            //generate a positive pulse to reset the external counter
            wdt.Write(true);
            wdt.Write(false);
        }
    }
}

Esta claro que el código, se centra principalmente el circuito externo mediante el 74HC4060 por lo que una fuente similar colgará cada vez que se inice este programa por lo que no tiene sentido en un contexto real. Una aplicación más realista debería ser mucho más “a prueba de excepción-libre”, y tal vez ser capaz de “corregirse” en un cierto fracaso. Por ejemplo, considere la posibilidad de su aplicación está escribiendo un archivo en la tarjeta SD, pero el usuario saque la tarjeta. Es un poco difícil de escribir un procedimiento a prueba de balas que escribe los datos sin ninguna excepción. Sin embargo, una vez que el Netduino se ha restablecido, puede analizar la presencia en SD, y evitar cualquier operación relacionada

Fuente  Mario Vernari

Licencia Creative Commons
solo-electronicos por Carlos Rodriguez Navarro se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 3.0 Unported.

Presentaciones remotas con PowerPoint


La característica Difundir presentación de diapositivas en PowerPoint 2010 permite a los presentadores compartir una presentación con cualquier persona, en cualquier lugar, mediante la Web mejorando la calidad   gráfica de la presentación  respecto  a otros sistemas 
Basicamente   se  envía un vínculo (dirección URL) a la audiencia por correo electrónico  y todos los invitados pueden ver de forma simultánea la presentación en el explorador.
Durante la difusión, se puede pausar la presentación , reenviar la dirección URL a los asistentes o cambiar a otra aplicación sin interrumpir la difusión ni mostrarles su escritorio a los asistentes.
Tipos de difusion 
 La característica Difundir presentación de diapositivas requiere un servicio de red que hospede la presentación. Puede elegir entre dos servicios:

  • Servicio de difusión de PowerPoint. Este servicio está disponible para cualquier persona con una identificación de Windows Live y es una buena solución para ofrecer la presentación a una audiencia que está fuera de la organización. Cualquier persona en Internet podrá obtener acceso a la dirección URL para una presentación hospedada en este servicio.
  • Un servicio de difusión proporcionado por su organización, hospedado en un servidor con las aplicaciones web de Microsoft® Office instaladas. Para usar este servicio, el administrador del sitio debe configurar un sitio de difusión y los miembros de la audiencia deben tener acceso a ese sitio.

Preparacion
Éstas son algunas cuestiones para tener en cuenta antes de difundir la presentación:
  • Conexión a Internet     Para poder usar esta característica, debe estar conectado a Internet o tener acceso a un sitio de difusión en un servidor con las aplicaciones web de Office instaladas.
  • Exploradores admitidos     La característica de difusión de presentaciones se puede ver en Internet Explorer, Firefox y Safari para exploradores Mac.
  • Límites de tamaño de archivos     Es posible que el servicio que utiliza imponga un límite para el tamaño de archivos para las presentaciones difundidas.
  • Características admitidas de PowerPoint     Cuando se difunde la presentación en línea, se modifican algunas características de PowerPoint:
  • Cualquier transición en la presentación se muestra como transición con efecto Desvanecer en el explorador.
  • Los protectores de pantalla y los correos electrónicos emergentes pueden ocasionar molestias a la audiencia que está viendo la presentación con diapositivas.
  • El audio (sonidos, narración) no se transmite a la audiencia mediante el explorador.
  • No pueden agregar anotaciones manuscritas ni marcas en la presentación durante su difusión.
  • Si sigue un hipervínculo a un sitio web desde la presentación, los asistentes solo pueden ver la última diapositiva que se mostró en la presentación original.
  • Si reproduce un vídeo en la presentación, el explorador no se lo muestra a la audiencia.
  • PRIVACIDAD:   Atención  culalquier persona que tenga el vínculo a la presentación puede verla. Si un miembro invitado de la audiencia reenvía el vínculo a otra persona, esa otra persona también puede ver la presentación, siempre y cuando tenga acceso al servicio.
  • Difundir una presentación

    Para difundir una presentación, siga este procedimiento:
    1. En la ficha Presentación con diapositivas en el grupo Iniciar presentación con diapositivas, haga clic en Difundir presentación de diapositivas.
    Difundir presentación de diapositivas en el grupo Iniciar presentación con diapositivas de la ficha Presentación con diapositivas en PowerPoint 2010.
    Se abre el cuadro de diálogo Difundir presentación de diapositivas.
    Cuadro de diálogo Difundir presentación de diapositivas
    1. Siga uno de estos pasos:
      • Si desea hospedar la presentación en el servicio que aparece en Servicio de difusión, vaya al paso siguiente.
      • Si desea utilizar algún otro servicio para que hospede la presentación con diapositivas, haga clic en Cambiar servicio de difusión. En Elija un servicio de difusión, seleccione el servicio que desea usar. Para obtener más información acerca de los servicios de difusión, consulte Elegir un servicio de difusión.
     NOTA   Si no encuentra el servicio que desea usar, seleccione Agregar nuevo servicio y luego, en el cuadro de diálogo Agregar servicio de difusión, escriba la dirección de red del servicio que desea usar y haga clic enAgregar.
    1. Después de seleccionar el servicio de difusión, haga clic en Iniciar difusión. PowerPoint crea una dirección URL para la presentación.
    Cuadro de diálogo Difundir presentación de diapositivas con una dirección URL para una presentación.
    PowerPoint crea una dirección URL única para la presentación.
    1. Para enviar la dirección URL de la presentación a la audiencia, siga uno de estos pasos:
      • Para enviar la dirección URL de la presentación por correo electrónico, haga clic en Enviar por correo electrónico.
      • Para copiar el vínculo, haga clic en Copiar vínculo.
    2. Cuando la audiencia reciba la URL de la presentación, haga clic en Iniciar presentación con diapositivaspara comenzar la difusión.
    Una presentación difundida tal como se ve en el explorador
    La audiencia sigue la presentación en el explorador mientras usted la presenta en PowerPoint 2010.
    1. Cuando termine la presentación y si está listo para finalizar la difusión, presione ESC para salir de la vista Presentación y haga clic en Finalizar difusión.
    Al difundir una presentación en PowerPoint 2010, aparece la ficha Difundir.
    Después de comenzar a difundir una presentación, aparece la ficha Difundir en la cinta de PowerPoint 2010.

    Presentaciones remotas con POWERPOINT 97

    Con PowerPoint 97 tambien  es posible hacer una presentación remota, si bien el proceso es algo mas engorroso. En el caso de varios equipos remotos que estén en la misma red o bien conectados a Internet, se puede mostrar una presentación como moderador de forma que en los demás equipos se mostrara la ppt  como   audiencia (sin participación en la misma). 

    Para mostrar una presentación remotamente, el moderador tendrá que estar en contacto  ( por ejemplo por vozip o telefonía ) con los usuarios que van a actuar como audiencia porque le tendrán que dar algunos datos (como nombre de equipo o dirección IP en caso de estar conectados por Internet). Una vez que estén  todos en contacto , el moderador debe ir a Herramientas/Presentación remota en PowerPoint 97 con la presentación abierta. En el primer paso del asistente, le preguntara como va a actuar, si como moderador o como audiencia (tendrá que indicarle que como moderador). 

    En el momento en que se pulsar el botón Siguiente del asistente, los demás usuarios ya podrán arrancar PowerPoint 97 (sin ninguna presentación abierta) e ir a Herramientas/Presentación remota y en el primer paso del asistente solo les permitirá actuar como audiencia. 

    Acto seguido a los usuarios que se conecten como audiencia, el asistente les dará el nombre del equipo propio. En caso de que esten en la misma red que el moderador, este sera el nombre que le tengan que comunicar al moderador. En caso de que estén en distintos dominios y conectados por Internet, tendrán que darle la direccion IP al moderador. 

    Una vez que el moderador conozca la identidad de todos los usuarios que van a visualizar la presentación cada usuario, debe terminar el asistente y el equipo se quedara en modo de espera buscando la señal del equipo moderador. 

    El moderador, en el paso Detalles de conexión del asistente, debera insertar el nombre de los equipos de los usuarios de audiencia (o las direcciones IP en caso de que esten en Internet) en el cuadro de dialogo del asistente. 

    Una vez que todos los equipos estén en modo de espera, y siempre después de todos los usuarios de audiencia, el moderador puede terminar el asistente. En ese momento, el equipo del moderador entrara en la red a buscar a los demas equipos que estan en espera. En el momento en que se encuentren los equipos, en las pantallas de los equipos de audiencia aparecerá la presentación y en la pantalla del moderador aparecerán varias ventanas, una con la presentacion y otras con herramientas para controlarlas. En ese momento, el moderador puede iniciar la presentación que se mostrara en los demás equipos. 

    Fuente   Microsoft   y  aqui 
    Licencia Creative Commons
    solo-electronicos por Carlos Rodriguez Navarro se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 3.0 Unported.