Disponible nueva version de Raspbian para Raspberry Pi


En efecto ya esta disponible  una nueva versión para Raspbian, el sistema operativo enfocado en  Raspberry Pi, con muchas mejoras pero sobre todo arreglos de errores.

Llegando poco más de dos semanas después de su última actualización lanzada el 18 de abril, Raspbian 2018-06-27 ya está disponible y trae consigo novedades interesantes.

Como siempre  esta nueva versión  se  descarga a partir de una nueva imagen descargada a partir del sitio  oficial Raspbian ,

En la url de descarga podrá  apreciar en la imagen de abajo ,   se mantienen tanto la imagen de la versión previa mínima (Lite) o la nueva version Stretch para escritorio:

raspbian.PNG

Lógicamente si la SD es suficiente grande , lo interesante es descargar la primera  en lugar de la versión mínima

Una vez decidida,  descargue la imagen correspondiente  en su ordenador y siga los siguientes pasos:

  • Inserte la tarjeta SD en el lector de tarjetas SD  de su ordenador comprobando cual es la letra de unidad asignada. Se puede ver fácilmente la letra de la unidad, tal como G :, mirando en la columna izquierda del Explorador de Windows.
  • Puede utilizar la ranura para tarjetas SD, si usted tiene uno, o un adaptador SD barato en un puerto USB.
  • Descargar la utilidad Win32DiskImager desde la página del proyecto en SourceForge como un archivo zip; puede ejecutar esto desde una unidad USB.
  • Extraer el ejecutable desde el archivo zip y ejecutar la utilidad Win32DiskImager; puede que tenga que ejecutar esto como administrador. Haga clic derecho en el archivo y seleccione Ejecutar como administrador.
  • Seleccione el archivo de imagen que ha extraído anteriormente de Raspbian.
  • Seleccione la letra de la unidad de la tarjeta SD en la caja del dispositivo. Tenga cuidado de seleccionar la unidad correcta; si usted consigue el incorrecto puede destruir los datos en el disco duro de su ordenador! Si está utilizando una ranura para tarjetas SD en su ordenador y no puede ver la unidad en la ventana Win32DiskImager, intente utilizar un adaptador SD externa.
  • Haga clic en Escribir y esperar a que la escritura se complete.
  • Salir del administrador de archivos  y expulsar la tarjeta SD.
  • Ya puede insertar la SD en su Raspberry Pi en el adaptador de micro-sd , conectar un monitor por el hdmi , conectar un teclado y ratón en los  conectores USB, conectar la  con un cable ethernet  al router  conectividad a Internet y finalmente conectar la alimentación  para comprobar que la Raspeberry arranca con la nueva imagen

La version previa basada  en  Raspbian Jessie ( Debian8 )  ya incluía  características y aplicaciones bastante interesantes así como algunos cambios más sutiles en el diseño del sistema, como por ejemplo,al iniciar ahora su Raspberry Pi que la pantalla inicial  cambiara  mostrando una imagen mas moderna .También  incluia  algunas aplicaciones como un navegador integrado , el  software  de RealVNC, para acceder a la Pi desde un escritorio remoto  , wallpapers nuevos para  decorar el fondo de escritorio de su Raspberry Pi,etc .

Ahora lo mas importante de  esta  nueva actualización es sin duda  la subida de version hacia Debian 9 ( recordemos que la versión anterior  era Debian 8)  trayendo  ademas un gran número de cambios y mejoras internas respecto a Debian 8 destacando quizás ademas de la subida de version el  incluir un  nuevo asistente de configuración que será mostrado en el primer inicio, lo cual  ayudará a los recién llegados a configurar el sistema Raspbian a su gusto sin tener que buscar los distintos paneles de ajustes.Por supuesto este asistente de configuración se ejecutará de forma automática en el primer inicio del sistema, permitiendo que los usuarios escojan su país, lenguaje, huso horario, configuren un perfil con contraseña, agreguen una red Wi-Fi e incluso instalen actualizaciones disponibles.

Esta nueva version llega con las últimas versiones de las aplicaciones y los paquetes incluidos en esta distribución, como, por ejemplo:

  • La última versión de Chromium 65 con enlaces actualizados de la Fundación Rasperry Pi y una nueva página de inicio.
  • Una versión offline de Scratch 2
  • Actualización del sintetizador de música Sonic Pi.
  • Los controladores de Bluetooth han sido actualizados, especialmente los de audio, que en vez de utilizar PulseAudio, con los problemas que eso supone, ahora utiliza Bluez-Alsa, mejorando notablemente tanto la calidad como el funcionamiento general del audio por bluetooth.
  • Un nuevo visor de PDF llamado qpdfView que funciona como software nativo remplazando el anterior Xpdf
  • La nueva aplicación de Software Recomendado, que funciona muy similar a la App Store, permitiendo que los usuarios revisen, seleccionen e instalen varias aplicaciones. La idea es mantener a Raspbian liviano para abastecer el almacenamiento limitado de la tarjeta SD, mientras que también permite a los usuarios instalar selectivamente cualquiera de los software gratuitos que recomienda usar.
  • etc

Otro cambio importante se encuentra a nivel de los usuarios del sistema, tanto pi, el usuario por defecto, que quedará vinculado al usuario principal, como sudo, que ahora pedirá siempre contraseña.

Por último, pero no menos importante, se ha solucionado la vulnerabilidad BROADPWN detectada hace dos meses en el chipset BCM43xx utilizado en los Raspberry Pi 3 y Zero W que podía permitir a un atacante ejecutar código remoto en el sistema.

Anuncios

Recicle su smartphone como camara de seguridad


En este humilde blog ya hemos comentado en innumerables ocasiones que un smartphone es uno de los dispositivos más versátiles que podemos encontrar hoy en día sobre todo cuando queda en desuso porque hemos adquirido uno mas moderno  o le falla alguna carasterictica ( por ejemplo baja autonomia o pantalla con arañasos) asi   que lo idea seria   darle una segunda oportunidad aprovechando diferentes capacidad de  su terminal

Por ejemplo usando el sensor de proximidad puede usarse como alarma de puerta o ventana (gracias a la app Seguricasa) , usarse como reloj despertador avanzado  o bien gracias a la cámara usarlos como camara de seguidad

Veamos en este post algunas de las mejores aplicaciones dedicadas que encontramos actualmente para Android.

Alfred

Nunca ha sido más fácil disponer de nuestro propio sistema de videovigilancia pues solo necesitamos un par de smartphones conectados a Internet (incluso uno solo), una cuenta de correo electrónico y la instalación de alguna de las aplicaciones gratuitas disponibles.

Esta aplicación es una de las más descargadas(+ 5millones)   y a la vez /fáciles de usar. Solamente necesitamos una cuenta de Google y abrirla en los dos dispositivos. Podemos configurar la calidad de grabación y retransmisión y revisar todos los registros durante catorce días.

Entre la oferta existente de este tipo de aplicaciones de las tiendas oficiales, la que alcanza un mayor éxito de calificaciones y elevado número de usuarios es ‘Alfred’. Y es que, realmente tiene un gran número de funciones, es gratuita y está disponible para los dos grandes so  de  smartphone actuales

La instalación es realmente sencilla, solo requiere unos pocos minutos y está al alcance de cualquiera aunque no se considere usuario avanzado. El único requisito que encontramos es la necesidad de disponer de una cuenta gmail o Google, ya que la vinculación entre dispositivos se hace a través de esa cuenta. De este modo, la posibilidad de conectarse a nuestra cámara de videovigilancia y por tanto de nuestra privacidad, depende del uso de nuestra cuenta y del conocimiento de su valiosa contraseña.

Veamos algunas características, todas ellas disponibles en esta aplicación sin coste:

  •  Podemos utilizar como cámara cualquier teléfono inteligente tanto de Android como de iOS siempre que disponga de al menos una cámara en buen estado, lógicamente.
  •  Como visor, podemos optar por Android, iOS o Firefox en cualquier PC.
  •  Tanto el dispositivo que hace de cámara como el que utilizamos para ver las imágenes, deben permanecer conectados a Internet, ya sea por Wifi o por datos y en  ambos dispositivos deberemos haber registrado la aplicación con la misma cuenta de Google.
  •  El dispositivo que hace de cámara tiene una función de ahorro de batería que apaga la pantalla, pero aun así, para periodos muy largos, deberemos mantenerlo conectado a la alimentación.
  • Desde el visor tenemos multitud de posibilidades que actúan sobre la cámara, como encender la luz del flash, girar la imagen, intercambiar entre ambas cámaras posibles, activar un modo nocturno de alta sensibilidad, etc.
  • Podemos usar  detección de movimiento y el envío de notificaciones directamente al dispositivo visor adjuntandoa una foto del momento en que detectó el movimiento.
  • También es posible activar el audio para escuchar a distancia y hablar desde el visor para que suene por los altavoces de la cámara.
  • Podemos tomar fotos y vídeo de lo que captura la cámara en cualquier momento desde el visor.
  • El sistema permite tener varias cámaras a la vez las cuales pueden visualizarse desde un mismo visor.

Sin duda una interesante herramienta para mantener nuestra casa vigilada o para utilizarla como dispositivo vigila bebés, aunque sus usos pueden llegar a ser tan variados como lo sea nuestra imaginación.

AtHome

AtHome con mas de 1 millón de descargas  puede convertir  más de 10 millones de dispositivos obsoletos en nuevos sistemas, actuando como monitor de bebé, cámara para mascotas, cámaras niñera, cuidado de los ancianos etcetera de vigilancia de video. Todas las plataformas están soportadas, incluyendo PCs, smartphones y tablet PCs.

Cuenta con reconocimiento de imágenes con detección de movimiento  de modo que  recibirá una notificación con un GIF animado cuando detecta una persona, mucho más precisa que la detección de movimiento tradicionales  contribuyendo a no tener o más falsas alarmas debido a la tecnología avanzada de AI y el aprendizaje profundo, utilizado para detectar el movimiento provocado por los seres humanos a diferencia de las sombras, luces, etc.

Con la visión nocturna mejorada  en condiciones de baja iluminación si  activamos el modo “Visión nocturna” se obtienen una mucho clara y mayor imagen de vídeo. Ademas la  tecnología de reconocimiento de rostros ayuda distinguir si la persona que aparece en el viseo si es un familiares o intruso e informarle inmediatamente;

Utilizado junto con AtHome Video Streamer, podemos  mantener un ojo en nuestro hogar cuando usted estemos fuera y recibir alertas de inmediato en caso de cualquier incidente  gracias a video streaming con el potente cifrado y tecnología de la transferencia P2P protege su privacidad. Usted puede estar seguro – las cámaras están bien protegidas de accesos no autorizados!

Por si fuera poco  se puede  hablar por dos vías: permitiendo comunicarse con personas y animales utilizando el micrófono incorporado y el altavoz

Antes de instalar debemos preparar 2 dispositivos (ordenador o teléfono inteligente) antes de comenzar, después solo se necesitan tres pasos para la  instalación:

  • Paso 1: descargar la aplicación de captura de vídeo AtHome Video Streamer aplicación de GooglePlay e instalarlo en su dispositivo. Un único ID de conexión (también conocido como el CID) se le asignará al dispositivo tras el AtHome Video Streamer es la primera vez;
  • Paso 2: descargar e instalar la aplicación Visor cámara AtHome app en otro dispositivo que desea utilizar como un visor, abrir la aplicación, registrarse e iniciar sesión;
  • Paso 3: seleccione “añadir por CID” o “Por código QR” para añadir una cámara, estás listo para disfrutar de la transmisión en vivo!

Salient Eye

Con mas de un millón de descargas puede convertir un  smartphone android en un sistema de alarma de detector de movimiento utilizando la cámara del teléfono como sensor de movimiento y haciendo sonar una alarma cuando se produce un robo e inmediatamente  mandando fotos vía email y tambien  por  SMS, lo cual no es nada frecuente en este tipo de aplicaciones.

Además, Salient Eye nos facilita un enlace para acceder al contenido que se haya grabado durante ese período de tiempo.

Algunas de sus características mas notables:

  •  Captura imágenes con sensor de movimiento
  •  Hace sonar la alarma (opcional)
  • Alertas SMS y correo electrónico (opcionales)
  • Muy fácil de instalar y muy fácil de usar
  • Sigue trabajando cuando se apaga la pantalla
  • Funciona hasta 10 horas sin ninguna fuente de alimentación (con la batería)

Además también permite activar una alarma que anuncie a un hipotético intruso que ha sido detectado.

Presence

Personas en todo el mundo están encantadas de volver a su viejos  smartphones y tablets volverlos  a ver trabajar gracias a esta app  descargada mas de 100.000 veces  que ofrece  VIDEOSEGURIDAD gratis.

Esta aplicación  ofrece hasta ofrece hasta 50 MB de almacenamiento cifrado en la nube para almacenar todos los vídeos grabados (se puede actualizar  a Pro a dentro de la aplicación de funciones de detección de movimiento avanzada y obtener 5GB de almacenamiento para grabaciones más largas y de mayor resolución de vídeo)

Gracias a esta app es muy facil añadir sensores inalámbricos compatibles con presencia en su casa y disfrutar de este avanzado sistema de seguridad para el hogar

 

Captura de pantalla

Esta app ofrece algunas algunas características un tanto especiales:

  • Monitor con presencia ;permite  hacer una gran  webcam , vigilabebés, cam del animal doméstico, nanny cam, cam de vigilancia o sistema de seguridad de bricolaje. En casa, en la cocina, el garaje, el vivero, en su oficina, o dondequiera – permite a usted sabe lo que sucede cuando te has ido. Obtener movimiento alertas de vídeo detección, ve lo que está sucediendo en tiempo real y mucho más.
  • Alerta con presencia;la cámara de  viejo smartphone o la tableta sigue siendo increíblemente valiosa.  Habilitando detección de movimiento de presencia para recibir gratis alertas de Video de presencia – ver y oír lo que sucedió unos segundos hace si se detecta movimiento por el smartphone o tablet que has colocado en casa funcionando presencia. Se le notificará en el dispositivo con usted si se detecta un intruso, cuando los niños llegan a casa con seguridad, o lo que te hace sentir más informada y segura.
  • Control con presencia:usted puede comprar una variedad de sensores Wi-Fi conectado compatible con presencia para proteger su hogar, incluyendo puertas y ventanas sensores de entrada, movimiento detectores de agua sensores de fuga, sensores de temperatura y humedad, sensores de tacto y mucho más. Puede controlar aparatos eléctricos en casa remotamente con el enchufe elegante presencia, demasiado. Dispositivos y sensores de presencia-compatible son asequibles e instalación en cuestión de minutos.
  • Reloj con presencia :esta appa apoya espectadores simultánea conexión a una sola cámara, para que  cualquier persona que usted designe pueden ver el perro o los niños al mismo tiempo desde dos diferentes dispositivos y ubicaciones. Esta app pues convierte smartphones en cámaras automáticas de Twitter para tuitear en vivo capacidades y permite iOS primeros del mundo y smartphone Android seguridad cámara robot, presencia 360. Más información sobre él en: https://www.indiegogo.com/projects/presence-360-smartphone-security-camera-robot-99-app#/
  •  Alexa Amazon: esta app le permite supervisar y controlar su hogar con su voz. Usted puede solicitar actualizaciones de estado sobre la presencia de su casa dispositivos conexión y envían comandos a sus sensores de seguridad, enchufes inteligentes, luces o incluso el termostato conectado. Decir “Alexa, Dile presencia para armar mi home” para activar su sistema de seguridad antes de salir de la casa. ¡Por supuesto, es gratis!

 

 

Manything

Manything significa monitor Cualquier cosa … y eso es exactamente lo que puede hacer esta aplicación permitiendo darle  una nueva oportunidad de vida a un teléfono inteligente o tableta pues  sólo tiene que descargar la aplicación en su dispositivo  para convertirlo en una cámara de seguridad para  el hogar instantánea

Se ha descargado ya mas de 100.000 veces y su  uso es muy sencillo : basta con instalar Manything en su dispositivo desde Google Play,, seleccionar el modo “cámara” y realice el registro de esta . Entonces descargue Manything a su teléfono principal o tableta que lleve contigo y seleccione “Visor”. Es así de simple, ahora puede ver su cámara desde cualquier lugar!

Esta aplicación también detecta movimiento y además, sonidos. Nos ofrece una gráfica ordenada con todos los picos de actividad y ruido registrados durante el período de tiempo que seleccionemos. Podemos visualizar en directo lo que grabe a cámara desde la app en nuestro móvil o desde el navegador web en la versión para escritorio.

LLegan los robots limpiacristales


Cecotec Innovaciones,la innovadora empresa valenciana que está detrás de varios tipos de  robots ,  fue fundada hace 10 años, por lo que no son unos recién llegados del sector tecnológico y su éxito es fruto del esfuerzo de  ingenieros y diseñadores españoles que han conseguido llegar a plantar claramente cara a empresas mucho mas famosas  como quedo demostrado la  temporada pasada donde   no dio abasto a fabricar sus robots limpiadores para cubrir toda la demanda que tuvieron  ( de hecho se e vieron obligados a abrir una lista de espera, para poder ir enviandolos a medida que los fabricaban.)

Este éxito pues es  fruto de los años de trabajo y constancia de todo su equipo  y en esta ocasión hablamos de un concepto similar al robot aspirador cuyo diseño inicial se lo debemos al fabricante Irobot con su  famosisima Roomba , pero que los de Cecotec han dado un giro innovador  convirtiendo el robot clásico  replicado por casi todos los fabricantes  en uno vertical para poder limpiar los cristales,  y de hecho como podemos ver en el vídeo  lo hace de maravilla:

 

Este diseño como vemos realiza una limpieza uniforme y eficiente en vertical  mediante una potente bomba de succión que lo  mantiene adherido a cualquier superficie acristalada para eliminar la suciedad con la máxima seguridad

Vemos pues que para ser posible que pueda desplazarse por los cristales necesita alimentación continua para mantenerse vertical , pero para evitar que se caiga o se desprende del cristal,  cuenta con un sistema de seguridad integral.:

  • Incluye una batería de litio con alimentación ininterrumpida que evita que el robot se caiga al suelo cuando hay un corte de corriente durante 15 minutos
  • Un algoritmo de control anticaída que ayuda a detectar obstáculos, vacío, marcos y bordes,
  • Un arnés de seguridad muy resistente, que dispone de una ventosa para adherirse al cristal consistente en una cuerda de seguridad muy resistente con una ventosa para adherirse al cristal..

 

 

Si bien el fabricante propone tres modelos las version Conga WinRobot Excellence de Cecotec es la mas avanzada ( y por ende la de mayor  precio)  por su  diseño cuadrado para limpiar todos los bordes y las esquinas,  limpiando todo tipo de superficies como cristales, espejos, mamparas, azulejos, superficies lisas y ventanas tanto interiores como exteriores. 

Este  modelo usa algoritmos de inteligencia artificial iTech Win 2.0 para calcular la ruta idónea, detectar los límites de la ventana y limpiar completamente las superficies gracias a sus novedosos sensores de posición, bordes y distancia realizando un recorrido de limpieza eficiente  ( el modelo anterior WinRobost 870  solo implementa el algoritmos de control anticaida  para marcos).

En gran venatja frente al modelo 870  , el  modelo Excelent   limpia en 5 etapas para conseguir un acabado profesional  gracias  a que  la mopa superior realiza un movimiento de vaivén constante para fregar y eliminar hasta la suciedad más difícil.

Implementa  4 modos de  limpieza automáticos seleccionables con un mando a  distancia para limpiar una ventana desde cualquier posición: modo N, modo Z, modo Loop en el que el robot realiza 10 pasadas por el mismo punto.Obviamente también dispone de AutoStop System  parando  de forma automática al finalizar la limpieza avisando obviamente al usuario.

 

 

Respecto a aspectos técnicos el nivel de ruido prometido por el fabricante es  menor de 71 dB contando con un motor de succión de 75w, una batería Ion Litio 700 mAh 14,4 V que tarda 120 minutos en cargarse alimentándose el robot directamente de la red ca 100-240ac   con un cable de 4mt
Por ultimo es eco-friendly gracias  a las  mopas de microfibra reutilizables de alta calidad con 2 modos de limpieza posibles: en seco y en húmedo con productos especializados.

Por cierto si alguien se pregunta también puede limpiar en superficies horizontales

 

Este robot cuesta unos 215€ en Amazon aunque es enviado directamente por el propio fabricante

 

Editar ficheros con linux


Para muchas personas, una de las piezas de software más importantes es un procesador de textos, aunque obviamente si ese equipo es un Linux  para  escribir documentos se usen otros programas como LibreOffice Writer,Open Office ,ete c o incluso servicios en linea como google docs , un editor de texto, sigue siendo hoy en dia  una herramienta indispensable  pera  ver contenido de ficheros ASCIII ( por ejemplo tipo logs, txt ,etc )   y también  para editar o ver  scripts de shell, programas PostScript, páginas web y más.

Un editor de texto opera en archivos de texto sin formato almacenando solo los caracteres que escribe no agregando ningún código oculto de formateo. Es decir ,si escribimos unos caracteres   y presionamos Enter en un editor de texto y lo guardamos, el archivo contendrá exactamente esos caracteres y una nueva línea. Sin embargo si usamos  un  procesador de textos, dicho fichero  que contenga el mismo texto sería miles de veces más grande (con abiword por ejemplo un archivo de unos pocos caracteres  podiria ocupar 2.526 bytes, el archivo LibreOffice.org contendria sobre 7.579 bytes).

Puede escribir scripts en cualquier editor de texto, desde el e3 básico o nano hasta el emacs o nedit completos.

Los mejores editores de texto le permiten tener más de un archivo abierto a la vez. Hacen que el código de edición sea más fácil con, por ejemplo,con  resaltado de sintaxis, sangría automática, autocompletado, revisión ortográfica, macros, búsqueda y reemplazo, y la importante funcion de deshacer.

En última instancia, qué editor se  elige es una cuestión de preferencia personal pero en  GNU  uno muy bueno  es  emacs

emacs1.PNG

Emacs viene autodocumentado de serie con un manual al que puede acceder usando el comando info. Ya sea desde una terminal de los sistemas operativos GNU y Unix, o desde el propio Emacs, escribiendo M-x info RET (esto quiere decir Meta- x o ESC x, la palabra “info”, seguido de la tecla return), o escribiendo C-h i (eso es Control-h seguido de la i). Ademá Emacs trae consigo un tutorial interactivo que le guiará paso a paso a través de una sesión de edición en la cual aprenderá los elementos básicos del uso de Emacs como editor de texto.

Para realizarlo, proceda de la siguiente manera:

  • Utilice C-h t (presione Control y h, suelte ambas teclas, y luego pulse t).
  • Si eso no resulta, intente mediante F1 t.
  • Si eso no resulta tampoco, intente M-x help-with-tutorial (Pulse Esc, suéltela, pulse x, suéltela, escriba help-with-tutorial, pulse Enter).

Si desea leer el tutorial en un idioma distinto al Inglés, use el comando M-x help-with-tutorial-spec-language. (en el momento se encuentran disponibles: bg, cn, cs, de, es, fr, it, ja, ko, nl, pl, ro, ru, sk, sl, sv, th, zh  , es decir también esta en español)

Las opciones más habituales:

  • Obtener ayuda C-h (Mantenga presionada la tecla CTRL y presione h)
  • Deshacer cambios C-x u Salir Emacs C-x C-c
  • Obtener un tutorial C-h t Usar información para leer documentos C-h i
  • Manuales de pedido C-h RET
  • Activar la barra de menú F10 o ESC `o M-`
  • `C- ‘significa usar la tecla CTRL.
  • ` M-‘ significa usar la tecla Meta (o Alt).Si no tiene una clave Meta, en su lugar puede escribir ESC seguido del carácter).

El entorno puede modificar el modo en que secuencias como C-h o F1 son interpretadas.

 

Cuadro de Referencia Resumido

Apertura de archivos: C-x C-f – luego escriba el nombre del archivo, puede usar la tecla TAB para  autocomplementar de modo automático.

Creación de nuevos documentos: C-x C-f – luego escriba el nombre de un archivo que no exista aun; use TAB para  autocomplementar de modo automático.

Guardar archivo: C-x C-s

Destruir búfer (cerrar archivo): C-x k

Separar ventanas (para ver dos archivos al mismo tiempo):

  • Una sobre la otra: C-x 2
  • Una al lado de la otra: C-x 3

Unificar ventanas (maximizar una ventana)C-x 1

Cambiar de ventana (luego de haber hecho una separación): C-x o

Cambiar de búfer (si está editando múltiples archivos): C-x b

Menú de búferes (listado de búferes): C-x C-b

Ejecutar comandos de cuyo atajo por teclado se ha olvidado: M-x – luego escriba el nombre del comando, TAB puede ser usado para autocomplementar.

Obtener ayuda: C-h, luego cualquiera de las siguientes teclas:

  • k – ¿qué hace cierta secuencia de teclado?
  • f – ¿qué hace cierta función?
  • m – ¿qué secuencias de teclado están definidas en este modo?
  • w – ¿a qué teclas está asociada una función?
  • a – ¿qué nombres de comandos coinciden con cierta cadena?

 

 

Como ve, emacs  es un editor  ASCII  muy diferente a los editores basados en sistemas windows , pero como se ve tambien puede ser muy potente para trabajar desde una consola depurando o inlcuso escribiendo nuestros propios scripts en c-shell

Cómo descargar fácilmente videos de youtube


Aunque estamos en la era de la hiperconectividad   de  modo que  servicios como youtube normalmente están siempre activos puede  haber circunstancias que nos hagan necesaria la descarga  para ver dicho contenido offline porque precisamente no siempre se dispone de esa conectividad.

Para estos casos , pues se hace necesario la descarga del video  desde la plataforma de video ( por ejemplo youtube )   hacia un fichero para disponer  de este de forma desconectada  o con mala conectividad  y poder reproducirlo sin problemas.

Existen  muchas  formas de poder descargar un video de youtube sobre todo  usando programas específicos  o  incluso con complementos (addsons) para la mayoría de los navegadores.

Hoy vamos  a ver un servicio   web cuyo uso es bastante intuitivo

Vamos  a tomar el  video de demostración del uso de la aplicación  Segurisca  como ejemplo  . La url directa del video es   “https://www.youtube.com/watch?v=orr7hFKGTcA”

Ahora   bien invocamos al servicio  en “https://es.savefrom.net/”   o  creamos una nueva url   eliminando  la cabecera  https://www.”     y sustituyendo simplemente  la cadena anterior por “ss”   , es decir   la url   anteior      quedaria  en:

ssyoutube.com/watch?v=orr7hFKGTcA” ( es decir sin el https)

Esta url la copiaremos  en la barra del navegador  y  nos abrirá ya automáticamente el servicio savefrom  con precisamente la url del video a descargar

pantalla1.PNG

Obviamente la idea del servicio es que compramos la aplicación  pero nos hacen una demo de como funciona precisamente   usando este servicio web

Para  poder hacer uso del servicio simplemente  pulsaremos en  el signo “v” a la izquierda de la barra de direcciones:pantalla2.PNG

Ahora  nuevamente nos ofrece la   aplicación aconsejando su descarga  aludiendo a  problemas con velocidades de descarga más lentas y limitaciones en los formatos de archivo ,pero si queremos usar el servicio web,  nos vamos un poco más abajo  y veremos el botón de descarga   seleccionado por defecto en  formato MP4  con resolución  360 mfs

pantalla3

Si tiene instalado vlc   y accesible desde navegador  se verá  en una ventana nueva  ,reproduciendo directamente con el vlc dentro del navegador:

pantalla4.PNG

Para tener el fichero en nuestro ordenador , ya basta pulsar el botón derecho sobre el video y elegir “Guardar video como

pantalla5.png

 

En el caso de que no tenga  el VLC instalador  directamente empezara a descargarse en la carpeta por defecto que tenga configurado el navegador desde donde hace la petición

En el caso de Chrome  en la página de Opciones, hacemos clic en “Avanzadas” y en el panel de la derecha descendemos hasta “Descargas“. Allí aparece la carpeta donde Google Chrome guarda las descargas por defecto. Para cambiarla hacemos clic en el botón “Cambiar” y seleccionamos la nueva carpeta de destino.

Enviar correos desde Linux: el método definitivo


Mutt es un cliente de correo electrónico basado en línea de comandos. Es una herramienta muy útil y poderosa para enviar y leer correos electrónicos desde la línea de comandos en sistemas basados en Unix.

Mutt también admite protocolos POP e IMAP para recibir correos. Se abre con una interfaz coloreada para enviar correos electrónicos que hacen que sea fácil de usar para enviar correos electrónicos desde la línea de comandos.

Algunas  características importantes de Mutt son las siguientes:

  • Es muy fácil de instalar y configurar.
  • Nos permite enviar correos electrónicos con archivos adjuntos desde la línea de comandos.
  • También tiene las características para agregar BCC (copia ciega ) y CC (copia ) al enviar correos.
  • Permite el enhebrado de mensajes.
  • Nos proporciona la facilidad de listas de correo.
  • También es compatible con muchos formatos de buzón de correo como maildir, mbox, MH y MMDF.
  • Admite al menos 20 idiomas.
  • También es compatible con DSN (notificación de estado de entrega).

Por si alguna vez ha necesitado enviar correos completos con anexos desde una maquina Unix con Shell scripting siempre que esté configurado el servidor de correo , por ejemplo para enviar estos desde un script, de este modo funciona perfectamente:

#envió de correo ok
cat $BODY | mutt -s “$asunto” -a $Fichero $destinos

Donde las variables significan lo siguiente:

  • $BODY : es un fichero cuyo texto contiene el texto del cuerpo .Atención: con el comando cat sí se respetan los retornos de carro del fichero original pues con el comando echo los elimina concatenando todas las líneas quitando los saltos de línea
  • “$asunto” : es el asunto que hay que poner las comillas para que nos interprete los espacios como otros parámetros pues de no hacerlo corta el texto que queremos poner en el asunto interpretando las palabras tras el segundo espacio como destinatarios de correo
  • $ Fichero : es la ruta directa del fichero a adjuntar
  • $destinos: todos los destinatarios de correos separados por espacios

 

Entramos en  modo interactivo   cuando solo  especificamos el destinatario:

mutt -s "Test correo" [email protected]

Cuando ingresa el comando anterior en el terminal, se abre con una interfaz y confirma la dirección del destinatario y el asunto del correo y abre la interfaz. En este momento  puede realizar cambios en la dirección de correo del destinatario:

  • Cambiar la dirección de correo electrónico del destinatario presionando t.
  • Cambiar la dirección de Cc con c.
  • Adjunte archivos como archivos adjuntos con a.
  • Salir de la interfaz con q.
  • Enviar ese correo electrónico presionando y.

Podemos agregar Cc y Bcc con el comando mutt a nuestro correo electrónico con la opciones  “-c” y “-b”. Asimismo podemos enviar correos electrónicos desde la línea de comandos con archivos adjuntos utilizando la opción “-a” con el comando mutt.


Si queremos cambiar el nombre y el correo electrónico de los remitentes, entonces necesitamos crear un archivo en el directorio de inicio de ese usuario en particular.

# cat .muttrc

Agregue las siguientes líneas a él. Guárdelo y cierrelo.

set from = “[email protected]” set realname = “Realname of the user”

AYUDA

Para imprimir el menú de ayuda de “mutt”, necesitamos especificar la opción “-h” con él , es decir

# mutt -h

Y esta es la salida:

Mutt 1.4.2.2i (2006-07-14)
usage: mutt [ -nRyzZ ] [ -e ] [ -F ] [ -m ] [ -f ]
mutt [ -nx ] [ -e <cmd> ] [ -a <file> ] [ -F <file> ] [ -H <file> ] [ -i <file> ] [ -s <subj> ] [ -b <addr> ] [ -c <addr> ] <addr> [ … ]
mutt [ -n ] [ -e <cmd> ] [ -F <file> ] -p
mutt -v[v]

options:
-a <file> attach a file to the message
-b <address> specify a blind carbon-copy (BCC) address
-c <address> specify a carbon-copy (CC) address
-e <command> specify a command to be executed after initialization
-f <file> specify which mailbox to read
-F <file> specify an alternate muttrc file
-H <file> specify a draft file to read header from
-i <file> specify a file which Mutt should include in the reply
-m <type> specify a default mailbox type
-n causes Mutt not to read the system Muttrc
-p recall a postponed message
-R open mailbox in read-only mode
-s <subj> specify a subject (must be in quotes if it has spaces)
-v show version and compile-time definitions
-x simulate the mailx send mode
-y select a mailbox specified in your `mailboxes’ list
-z exit immediately if there are no messages in the mailbox
-Z open the first folder with new message, exit immediately if none
-h this help message
$

Display inteligente para Netduino


La biblioteca TextDisplayMenu  es un marco extensible para rápidamente crear menús jerárquicos, editables que pueden mostrar en un display lcd de caracteres de verias lineas (típicamente compatible con hd44780)    controlándose mediante un IRotaryEncoder o una intrface  IButton . Los drivers para pantallas LCD Serie comparten una interfaz común que lo hacen fácil de conectar e integrar con el  TextDisplayMenu

Por tanto gracias a esta biblioteca podemos movernos en menús mostrados en displays lcd de varias lineas con un solo botón giratorio de un modo muy potente  y eficiente.

En este vídeo podemos ver un ejemplo de funcionamiento:

El menú se puede crear mediante programación o cargadolos desde un fichero en formato JSON y tiene un número de tipos de elementos de menú integrado de pantalla y edición entrada como tiempo, temperatura y otros.

Además se pueden crear fácilmente menús personalizados contipos de elementos que permiten a los usuarios editar su valor a través de las entradas

Utilización

Para utilizar el menú, necesitará un LCD compatible con ITextDisplay u otro display, así como alguna combinación de botones y codificador rotatorio que permita la funcionalidad de avanzar a siguiente, anterior y seleccionar . Por ejemplo, puedes usar; tres entradas IButton discretas para la siguiente / previa / selección, un codificador rotatorio para siguiente / anterior y un IButton para selección, o un RotaryEncoderWithPushButton para manejar las tres entradas.
El esquema siguiente muestra una configuración típica de integral para manejar el menú e incluye una pantalla de cuatro líneas LCD común controlado directamente por pernos GPIO digitales de Netduino, así como un encoder rotativo con pulsador:

Como se puede apreciar se usa un display copatible con hd44780  usando interfaz de 4 bits  con dos señales de control  y luego aparte el encoder que usa tres señales de control

El display  ademas de alimentación de 5v DC , tomada directamente de la placa ,usa pues   6 conexiones binarias de Netduino :d8,d9,d10,d11,d12 y d24 , forzando algunas lineas del diplay a  vcc o gnd y el encoder las tres anteriores :d7,d5 y d5;

Resumiendo estas son las conexiones del display lcd:

  1. VSS – Ground
  2. VCC – (+5V)
  3. VE – Contrast adjustment –>a gnd
  4. RS – Register Select–>pind13
  5. RW – Read/Write– >a gnd
  6. EN – Clock (Enable)–>pind12
  7. D0 – Data Bit 0–>pin d11
  8. D1 – Data Bit 1–>pin d10
  9. D2 – Data Bit 2–>pin d9
  10. D3 – Data Bit 3–>pin d8
  11. D4 – Data Bit 4
  12. D5 – Data Bit 5
  13. D6 – Data Bit 6
  14. D7 – Data Bit 7
  15. BLA – Backlight Anode (+)–>gnd
  16. BLK – Backlight Cathode (-)–>a 5v (ojo algunos dislplay necesitan una resistencia  limitadora no alimentándose directamente a 5v dc)

La caja para contener el encoder  y el display  los del Wilderness Labs han  diseñado específicamente en 3D  conun acabado fantastico:

Código de ejemplo

El código siguiente ilustra cómo crear una nueva, por eso carga su contenido de JSON:TextDisplayMenuRotaryEncoderWithButton

using System;
using System.Collections;
using System.Threading;
using Microsoft.SPOT;
using H = Microsoft.SPOT.Hardware;
using N = SecretLabs.NETMF.Hardware.Netduino;
using Netduino.Foundation.Sensors.Rotary;
using Netduino.Foundation.Displays;
using System.IO;
using TextDisplayMenu_Sample.Properties;
using Netduino.Foundation.Displays.TextDisplayMenu;

namespace TextDisplayMenu_Sample
{
    public class Program
    {
        public static void Main()
        {
            RotaryEncoderWithButton encoder = new RotaryEncoderWithButton(
                N.Pins.GPIO_PIN_D2, N.Pins.GPIO_PIN_D3, N.Pins.GPIO_PIN_D4,
                Netduino.Foundation.CircuitTerminationType.CommonGround);
                
            ITextDisplay display = new SerialLCD(new TextDisplayConfig() { 
                Height = 4, 
                Width = 20 }) as ITextDisplay;

            display.SetBrightness();

            Menu menu = new Menu(_display, _encoder, Resources.GetBytes(Resources.BinaryResources.menu), true);
            menu.Enable();

            Thread.Sleep(Timeout.Infinite);
        }
    }
}

El código  completo se puede encontrar aquí.

Para crear un menú con otras entradas, como botones o un codificador giratorio opcional, puede usar los otros constructores:

// Rotary encoder and select button
public Menu(ITextDisplay display, IRotaryEncoder encoder, IButton buttonSelect, byte[] menuResource, bool showBackOnRoot = false)

// Buttons for next, previous, and select
public Menu(ITextDisplay display, IButton buttonNext, IButton buttonPrevious, IButton buttonSelect, byte[] menuResource, bool showBackOnRoot = false)

Carga un menú desde JSON

Para crear el menú de JSON, en primer lugar definir el contenido del menú en un archivo JSON y luego agregarlo como un recurso.
Definición de muestra
El nodo raíz debe ser una matriz de elementos de menú. La tabla siguiente enumera las propiedades y uso asociado:

Property Usage
text Mostrar texto en el renderizado. Incluye {value} para mostrar el valor actual del tipo
command Nombre del comando para distinguir los eventos de selección de menú. Si se establece el comando, tiene prioridad sobre el elemento de menú editable.
id Identificador único para el tipo. Necesario para un elemento de menú editable..
type Tipo de entrada, por ejemplo: Edad, Tiempo. Necesario para un elemento de menú editable.
sub Array de items de sumenus .

Por ejemplo, el siguiente código json define un menú jerárquico dispuesto en los artículos y páginas de menú.

{
  "menu": [
    {
      "text": "My Age: {value}",
      "id": "age",
      "type": "Age",
      "value": 12
    },
    {
      "text": "My Command",
      "command": "DoSomething"
    },
    {
      "text": "Parent",
      "sub": [
        {
          "text": "Sub Item A"
        },
        {
          "text": "Sub Item B"
        },
        {
          "text": "Sub Item C",
          "sub": [
            {
              "text": "Sub Item D"
            },
            {
              "text": "Sub Item E"
            },
            {
              "text": "Sub Item F"
            }
          ]
        }
      ]
    }
  ]
}

Agregar el menú JSON como un recurso

Para agregar el archivo JSON al proyecto como un recurso:

  1. Haga clic derecho en el proyecto y seleccione Propiedades
  2. Haga clic en el panel izquierdo Recursos
  3. Haga clic y elija el archivo apropiado. Agregar recurso

Ahora, se puede acceder a este recurso por Resources.GetBytes(Resources.BinaryResources.[ResourceName]).

Soporte de eventos

El menú genera eventos cuando se selecciona un comando, se edita el elemento del menú y se sale del menú.

En cuanto a la selección de eventos ,para recibir una notificación cuando se selecciona un elemento de menú con un comando asignado, asigne un controlador al evento Seleccionado:

menu.Selected += (s, e) =>
{
    Debug.Print("menu selected: " + e.Command);
};

Respecto a la salida de eventos si el menú no es la pantalla de inicio de la aplicación deseada, entonces el menú puede ser cargado o descargado programáticamente usando Enable () o Disable (), respectivamente. Además, hay un parámetro opcional al crear un nuevo menú, showBackOnRoot, y cuando se establece en verdadero, ”

menu.Exited += (s, e) =>
{
    Debug.Print("menu exited");
    menu.Disable();
};

Para editar eventos para obtener una notificación cuando cambia un valor de elemento de menú Editar, asignar a un controlador al evento:ValueChanged

menu.ValueChanged += (s, e) =>
{
    Debug.Print(e.ItemID + " changed with value: " + e.Value);
}

Construcción de  tipos

La siguiente tabla enumera los tipos de elementos de menú integrados y sus usos y valores asociados:

Type Description
Boolean Un tipo de lista como true y false.
Age Un integer entre 0 y 100.
Temperature Un valor entre -10 y 100 con una escala de 2.
Time 24 hora militar con HH:MM
TimeDetailed 24 hora militar con HH:MM:SS
TimeShort 24 hora militar con MM:SS

Creación de tipos de elementos de menú personalizado

Hay dos formas de crear elementos de menú personalizado. El más fácil y más común es heredar de y modificar, los tipos de base integrados. Sin embargo, también puede crear menús totalmente personalizada tipos de elementos.
Personalización de tipos Base incorporados
TextDisplayMenu incluye una serie de tipos base integrados que manejan tipos comunes y puede ser modificado para requisitos particulares para adaptarse:

Base Type Description
NumericBase Proporciona una pantalla y entrada numérica genérica. El mínimo / máximo y el número de decimales se pueden modificar.
TimeBase Proporciona una máscara de entrada de XX: XX: XX o XX: XX según el modo.
ListBase Proporciona una lista seleccionable de elementos.

Ejemplo de NumericBase personalizado

El siguiente código se extrae del tipo de menú Edad, e ilustra cómo heredar de NumericBase y especificar el piso, el techo y la escala de la entrada deseada.

using System;
using Microsoft.SPOT;

namespace Netduino.Foundation.Displays.TextDisplayMenu.InputTypes
{
    public class Age : NumericBase
    {
        public Age(): base(0, 100, 0) { }
    }
}

En resumen como vemos el equipo de Wilderness Labs a través de la fundación de Netduino ha hecho un trabajo fantástico que espero podemos usar en nuestros futuros proyectos

Mas información en http://netduino.foundation/Library/Displays/TextDisplayMenu/