La plataforma Raspberry Pi ha cambiado para siempre
la forma en la que entusiastas y profesionales por igual llevan a cabo
sus proyectos. Desde imitaciones de consolas clásicas hasta el diseño de superordenadores,
el Raspberry Pi logró adaptarse a casi cualquier situación. Sin
embargo, su costo sigue siendo un verdadero problema en algunos países, y
la respuesta es nada menos que el Raspberry Pi Zero, una versión reducida en lo que se refiere a puertos y pines, pero que cuesta solamente cinco dólares.
Raspberry Pi Zero: Conoce al Raspberry Pi de cinco dólares
El potencial del Raspberry Pi
es enorme, nadie tiene dudas de eso a esta altura. En el pasado hemos
visto a este pequeño ordenador controlando robots, emulando consolas,
asumiendo el rol de servidor, y sirviendo como corazón para otras plataformas DIY.
En una situación normal y dependiendo del modelo disponible, el precio
del Raspberry Pi oscila entre los 25 y los 35 dólares. Claro que… el
mundo está muy lejos de ser un lugar normal, y en muchas
ocasiones el usuario descubre que debe pagar sumas escandalosas para
obtener uno. Costos de envío, impuestos internos y ese avatar del mal llamado aduana pueden elevar el precio de un Raspberry Pi hasta tres o incluso cuatro veces más, según la región.
Con más de tres años en el mercado, si hay algo que la fundación
Raspberry puede hacer es bajar el costo de su hardware, y esto ha
llevado a la creación del Raspberry Pi Zero. En esencia
es un Raspberry Pi como cualquier otro, basado en el SoC Broadcom
BCM2835 que vimos en la primera generación del ordenador, aunque la
diferencia principal es que su frecuencia fue elevada a 1 GHz, por lo
tanto, el Raspberry Pi Zero será un 40 por ciento más veloz que
el Raspberry Pi original. La memoria RAM se ubica en 512 megabytes, y
hay tres puertos en total: Un Mini HDMI para salida de audio y vídeo, un
micro USB para accesorios, y otro micro USB dedicado a la alimentación
de energía. La salida RCA requiere de pines que debemos soldar por
nuestra cuenta, y lo mismo sucede con toda la sección GPIO. De acuerdo a
lo publicado en la página oficial, el «pinout» es idéntico al de los
modelos A+, B+ y 2B. Una ranura microSD se encarga del almacenamiento, y
sus dimensiones finales son de 65 por 30 por 5 milímetros.
Cinco dólares. Incluso es más rápido el RBPi original…
Entiendo que la ausencia de conectividad inalámbrica puede ser un
problema para muchos usuarios, pero cualquier inconveniente queda
automáticamente compensado por el costo del Raspberry Pi Zero: Cinco dólares.
De hecho, este precio es tan atractivo que sus responsables decidieron
entregar un Zero de regalo con la compra de la última edición de la
revista MagPi. Pensar que hace 20 años, las revistas venían con
diskettes o CD’s, y ahora regalan ordenadores. El Raspberry Pi Zero debería lograr lo que sus hermanos no pudieron, y es ingresar a aquellos mercados en los que cada dólar es crítico.
Es probable que la memoria DDR4 necesite algunos
meses más de ventaja para iniciar su avance sobre los sistemas de
escritorio, pero los fabricantes principales ya han activado todos sus
recursos de producción en masa. Ese es el caso de Samsung, quien presentó un nuevo módulo DDR4 de 128 gigabytes. No, no es un error de escritura: 128 gigabytes, dieciséis veces más que el promedio de RAM en un ordenador actual.
Los 128 GB de RAM DDR4 de Samsung
Han pasado muchos años desde que aquella histórica barrera nos limitó
a 640 kilobytes de memoria en nuestros ordenadores. Hoy podemos obtener
sistemas con varios gigabytes de RAM, pero a pesar de su relativo bajo
costo, la memoria nunca es suficiente. Además de incrementar la cantidad
disponible, también existe la necesidad de aumentar el ancho de banda, y
ahí es cuando interviene la memoria DDR4. Se supone que el máximo teórico de un módulo DDR4 asciende a 512 gigabytes,
cuatro veces más de lo que un fabricante podría colocar en un módulo
DDR3. Medio terabyte de RAM en un sólo módulo sería algo sacado de una
película de ciencia ficción… si no fuera por el hecho de que Samsung ya tiene uno con 128 gigabytes.
Imagina todo un ordenador volcado en RAM…
Así es, el gigante surcoreano inició la producción general de una
memoria DDR4 con 128 gigabytes. Se trata de la siguiente fase en su
diseño TSV (Through-Silicon Via), en el que combina un total de
144 chips DDR4 con diseño de 20 nanómetros, distribuidos en 36 paquetes
de 4 GB cada uno. Con la aplicación de la tecnología TSV, Samsung no sólo logra duplicar el rendimiento de esta memoria a 2.400 megabits por segundo, sino que reduce el consumo de energía en un 50 por ciento, factor crítico para el entorno empresarial y los servidores que seguramente recibirán a este hardware.
Lógicamente, Samsung no ha dicho nada aún en cuanto a su precio, pero
imagino que se ubicará en un nivel imposible de alcanzar para el
consumo general. De todas maneras, es cuestión de tiempo. Cada una de
las generaciones previas de RAM inició su evolución siguiendo el mismo
camino. Si tenemos en cuenta que hay servidores con 96 ranuras DIMM…
estaríamos hablando de 12 terabytes de RAM. Cualquier sistema virtualizado debería volar sobre esa memoria…
El IBM PC,
también conocido como 5150, conserva una posición de privilegio en la
historia de la informática. Tanto su popularidad como el desarrollo de
estándares derivados de su diseño original escribieron reglas a las que
se obedece incluso en estos días. Obtener a este hardware en buenas
condiciones representa un desafío enorme, pero gracias al entorno de emulación PCjs, podrás reproducir su funcionamiento directamente sobre el navegador, sin plugins ni módulos externos.
PCjs: Un emulador de IBM PC en tu navegador
Recordar la forma en la que trabajaban los ordenadores antiguos
no es solamente un proceso de nostalgia. También nos ayuda a conocer
mejor sus limitaciones, y acceder a software que no puede ser ejecutado
sobre hardware moderno. En el caso de los juegos, muchos apelan a la
magia del DOSBox, utilizado en una enorme cantidad de títulos. Sin
embargo, DOSBox ofrece un entorno modificado «para» el juego en
cuestión, y no hace ningún esfuerzo por emular el funcionamiento de un
sistema con varias décadas de edad. Ahí es cuando interviene PCjs, un emulador en línea que reproduce al ordenador IBM 5150, identificado mundialmente como IBM PC.
Fósforo verde. Muchos recuerdos…
La primera recomendación va para los usuarios de auriculares: Bajen el volumen, porque el «beep»
tomará a más de uno por sorpresa. El entorno se basa en la versión 2.0
del IBM PC-DOS, y se encuentra dividido en dos discos flexibles
virtuales. El entorno no ofrece ninguna clase de disco duro, aunque
ofrece algunas imágenes para cargar manualmente en las disketteras.
Los discos del PC-DOS también poseen varias de las demos originales
escritas en lenguaje BASIC, como por ejemplo el Donkey. Su desarrollador
incluso se tomó la molestia de asignar un tono fósforo verde a la
pantalla del emulador, tal y como se enseñaba en aquel entonces. PCjs no requiere ninguna clase de plugin o extensión
para funcionar: Accede a la página, y eso es todo. De más está decirlo,
es obligatorio contar con conocimientos básicos de DOS. Por sí solo, el
emulador no nos deja hacer mucho, y es deber del usuario exprimirlo al
máximo, un comando a la vez. La alternativa es ejecutar uno de los
entornos «pre-cargados» y evitar todo el tipeado.
Hola a todos!! Recientemente he adquirido una RaspberryPi v2 (segunda versión) para jubilar la RPi vieja que tengo. La utilizo como mediacenter + emulador de juegos para el salón, hasta entonces utilizaba una versión de OpenELEC modificado por modi
(un conocido usuario de los foros de Raspberry), el problema de dicha
versión es que solo es compatible con la versión antigua de Raspberry,
así que me he decidido en montar algo similar para la v2, empecemos:
- Centro Multimedia en Full HD @ 1080p - Centro de juegos/emuladores de las principales consolas - Reproductor de vídeo para películas, series y canales de TV en Streaming - Reproductor de contenido multimedia deportivo (SopCast y AceStream) - Reproductor de música, videoclips y radio online - Gestor de descargas torrent (con control remoto).
En esta parte del Blog Electrónica PIC me centraré en publicar ejemplos muy sencillos sobre Arduino y publicarlo aquí. Puede estar relacionado con Arduino y Visual Studio .net, incluso con Raspberry Pi, PC o ordenadores de sobre mesa e incluso con móviles bajo Android. Aquí se trata de encontrar ejemplos sobre Arduino de información rápida, ejemplos sencillos como podrás ver en la lista de abajo. Con el tiempo se irán haciendo más ejemplos, en el cual también puedes dar sugerencias de ejemplos sencillos para todo el mundo, no un proyecto grande que esto entrarían en la parte de tutoriales. Si es posible, la mayoría de los ejemplos será orientado a Arduino UNO.
Ejemplos que tengo pendiente de hacer sin ningún orden en particular:
Salida analógica con Arduino y Visual Studio 2017. (Control iluminosidad de un Led y un servo motor).
Entrada analógica con Arduino y Visual Studio 2017.(Con potenciómetro o sensores de temperatura y humedad como ejemplos).
Enviar comandos y mensajes al LCD con Arduino y Visual Studio 2017.
Recibir mensajes con Arduino y Visual Studio 2017. (Recibir mensajes de textos).
Control LCD hitachi hd44780 con Arduino. (Como funciona por dentro toda sus funciones y creando menús en ella).
Crear un archivo .txt para un sensor de temperatura y humedad con Visual Studio 2017.
Reconocimiento de voz y Arduino con Visual Studio 2017. (Con ejemplos del LCD y sin él. Si le dices "apagar led 3" desde el micro de tu PC, se comunica con Arduino y refleja en el LCD las palabras y acciones de su comportamiento).
Capturar datos por el puerto serie con C# en modo consola, Windows Form y WPF. Arduino pulsas el pulsador 2 y envía datos al puerto serie, C# lo captura que en realidad puede ser una foto y lo guarda al disco duro. (Arduino sin LCD y con LCD).
Otros tutoriales de Arduino serie con otro interfaz:
Aquí se pondrá una lista de supuestos ejercicios o ejemplos que con el timepo, sugeridos en los comentarios si los veo interesantes. Recuerda, por ahora son ejercicios o ejemplos fáciles para todo el mundo pueda entender en su mayoría. Cuando ya cumpla los mínimos que he indicado arriba, ya se verá otras alternativas.
Puedes aportar ideas en los comentarios para hacer una buena documentación de ejemmplos sencillos para todo el mundo con Arduino y Visual Studio .net. Se intentará hacer con todos los lenguajes y tecnologías más usado.
Cuando un usuario reemplaza a su sistema operativo tradicional e instala una alternativa open source
debe reconocer que los lazos con el software propietario no se han roto
en su totalidad. Existen muchos componentes de hardware que dependen de
controladores cerrados incluso bajo entornos Linux, pero también está el BIOS del ordenador, cuyo código no puede ser explorado ni auditado. El proyecto Libreboot busca cambiar eso ofreciendo un BIOS completamente libre y open source para una lista exclusiva de sistemas.
Libreboot: La visión de un BIOS «libre» y «open source»
La idea de que ya no se puede confiar en nadie tiene cada vez más fuerza en el mundo informático. Aún recordamos muy bien cuando la comunidad atrapó a Lenovo con las manos en la masa,
instalando malware en sus ordenadores para obtener un billete extra.
Lamentablemente, la historia del famoso Superfish no terminó con la
purga de un disco duro, sino que en muchos casos demandó una actualización del BIOS para eliminar todos sus rastros. Una verdad entre los ordenadores es que no tenemos la menor idea
de lo que hay dentro de un BIOS. Los fabricantes no publican el código,
ni tampoco tienen el menor interés de hacerlo. Casi todas las
auditorías que se han hecho hasta aquí apuntan en la misma dirección: Son inseguros. La situación es aún peor con el UEFI, y ese espanto llamado «Secure Boot» que lo acompaña en muchos sistemas.
Irónicamente, hay un par de MacBooks compatibles con Libreboot
Algunos años atrás hablamos sobre Coreboot, un proyecto bajo el que se desarrollan BIOS open source para diferentes ordenadores y placas base. Sin embargo, lo que nos trae aquí hoy es Libreboot, basado en los fundamentos de Coreboot. La diferencia más importante es que sus desarrolladores hacen énfasis en la definición de «libre». Desde un punto de vista técnico, los BIOS provenientes de Libreboot son open source,
pero en su página oficial establecen la necesidad de identificar a
Libreboot como un proyecto que obedece a los parámetros éticos del
software libre. Esto queda en evidencia con los esfuerzos para convertir
a Libreboot en un componente oficial certificado del sistema GNU. La llamada «compatibilidad filosófica»
entre GNU y Libreboot es completa, pero aún quedan varios detalles por
resolver, y si tienes algo de experiencia en esa materia, eres
bienvenido de participar.
De más está decirlo, Libreboot no es algo que puedas
descargar e instalar en cuestión de minutos. Sus condiciones especiales
de desarrollo hacen que la compatibilidad de hardware sea bastante
limitada. La lista general nos habla de apenas una docena de sistemas,
la mayoría de ellos portátiles Lenovo con varios años en el mercado. En
resumen: Si quieres un BIOS open source con algún que otro blob asociado, Coreboot ofrece un soporte más amplio, pero si la idea es un BIOS totalmente libre y cuentas con un ordenador compatible, Libreboot es lo que buscas.
Código Arduino IDE, encender y apagar el Led 13 que viene
integrado en la placa Arduino UNO.
pinMode(pinLed1, OUTPUT);// Inicializa el pin del Led 1 como salida.
char caracter;
String comando;
void
setup()
{ Serial.begin(115200);
}
void loop()
{
/* Voy leyendo carácter a carácter lo que se recibe por el canal *serie (mientras llegue algún dato allí), y los voy concatenando
*uno tras otro en una cadena. En la
práctica, si usamos el
*"Serial monitor" el bucle
while acabará cuando pulsemos Enter.
*El delay es conveniente para no saturar
el canal serie y que la
*concatenación se haga de forma
ordenada.
*/
while (Serial.available() > 0)
{ caracter= Serial.read(); comando.concat(caracter); delay(10);
}
/* Una vez ya tengo la cadena "acabada", compruebo
su valor y hago
* que la placa Arduino reaccione según sea este. Aquí podríamos
* hacer lo que quiesiéramos: si el comando es "tal", enciende
* un Led, si es cual, mueve un motor... y así. */
if (comando.equals("Led_ON")
== true) { digitalWrite(pinLed, HIGH); //
Enciende el Led. Serial.println("Led 13
encendido."); }
if
(comando.equals("Led_OFF") == true) { digitalWrite(pinLed, LOW); //
Apaga el Led. Serial.println("Led
13 apagado."); }
// Limpiamos la cadena para volver a recibir el siguiente comando. comando="";
}
// Fin del código.
Probando Monitor Serie
Probaremos los comandos establecidos en el código de Arduino, encender el Led
corresponde al comando Led_ON y apagar el Led corresponde al comando Led_OFF.
Conectamos Arduino con el USB al ordenador o PC y probamos
el código pulsando “Control + U” o en Programa -> Subir.
Abrimos el Monitor Serie de Arduino IDE, en Herramientas
-> Monitor Serie.
Cuando tengamos la ventana abierta del Monitor Serie,
introducimos Led_ON para encender el Led 13 de la placa Arduino UNO.
Como puedes ver en la imagen de arriba, al introducir el
comando Led_ON, a parte que dice en el Monitor Serie el mensaje “Led 13
encendido”, comprueba en la placa Arduino UNO que dicho Led realmente esté
encendido. Lo mismo probar el comando Led_OFF para apagar el Led. No olvidar
que se usan los 115200 baudios tanto en el programa como en elMonitor Serie.
Comprueba que el Led del pin 13 lo puedes encender y apagar.
Visual C# AWF 2015
Creamos un proyecto nuevo con Visual C#.
Selecciona Entorno clásico en Visual C#, Aplicación de
Windows Forms, he puesto como nombre del proyecto en este caso Arduino_Led,
luego pulsar Aceptar.
Arrastramos dos botones en el formulario principal, en el
cuadro de propiedades cambiamos los valores.
Botón Enceder:
Propiedad
Cambie
a
Text
Encender
(Name)
button_Encender
Botón Apagar:
Propiedad
Cambie
a
Text
Apagar
(Name)
button_Apagar
Revisa que puerto COM estás usando, en mi caso es el COM4,
indicado en la parte de debajo de Arduino IDE.
Propiedades a cambiar del componente SerialPort.
Propiedad
Cambie
a
(Name)
serialPort1
BaudRate
115200
PortName
COM4
StopBits
Two
Código Visual C# AWF.
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO.Ports; // No olvidar.
namespace Arduino_Led
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// Abrir puerto mientras se ejecuta esta aplicación.
if(!serialPort1.IsOpen)
{
try
{
serialPort1.Open();
}
catch (System.Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}
A la venta el Kenbak-1, el primer ordenador comercial
El Kenbak-1 tiene el honor de ser considerado como el primer ordenador comercial, un reconocimiento que le ha sido otorgado por el Computer History Museum.
Su comercialización se produjo en el año 1971 y estaba orientado al
sector educativo, pero no consiguió el éxito esperado. En este
sentido su precio de 750 dólares (equivalente a 4.400 dólares de hoy)
y sus limitaciones jugaron claramente en su contra, y según datos
oficiales apenas se vendieron 50 unidades hasta que la empresa
responsable cerró en 1973.
Actualmente apenas se conservan diez de estos equipos, por lo que es
una auténtica rareza muy buscada por coleccionistas del mundillo
tecnológico, que ven en él toda una pieza de museo, única y exclusiva.
No hace mucho un Kenbak-1 consiguió alcanzar los 31.000 dólares en una subasta,
así que imaginamos que esta otra unidad que ha salido a la venta en
Alemania podría superar dicha cifra, aunque las subastas puedan dar
sorpresas, así que no nos atrevemos a anticipar nada con seguridad.
Por si tenéis curiosidad sobre sus especificaciones técnicas os
podemos decir que el Kenbak-1 es una máquina de 8 bits que cuenta con 256 bytes de RAM, capaz de ejecutar varios cientos de instrucciones por segundo y que incorpora incluso funciones de procesado de texto.
Nuevos detalles del prototipo PlayStation Nintendo
A principios de este año surgieron fotos y nuevas informaciones de lo que se pintaba como un prototipo de consola PlayStation Nintendo, o Nintendo PlayStation, como más os guste llamarlo, aunque en un primer momento no lo publicamos porque no estábamos seguros de su autenticidad, ya que no faltaron voces que apuntaban que podría ser un mod casero.
Sin embargo recientemente el medio estadounidense Engadget ha seguido
el prototipo hasta una expo en Hong Kong y ha podido constatar su
autenticidad, aunque por desgracia no se encuentra en un estado de pleno
funcionamiento, ya que si bien la unidad de cartuchos parece funcionar
sin problemas el lector de CD ha “pasado a mejor vida” y no parece que tenga arreglo.
¿Por qué estamos seguros de que no es un modelo falso? Porque como
bien apunta la fuente original de la noticia la consola, también
conocida como Super Nintendo CD o Super NES CD, cuenta incluso con su propio sistema operativo, además de que el diseño general en persona da esa sensación de “auténtico”.
Sólo llegaron a salir unos 200 prototipos de este
proyecto fallido que, como sabemos, Sony acabó convirtiendo en lo que
posteriormente conocimos como PlayStation, una consola que arrasó en
todos los mercados en los que aterrizó y que podemos considerar sin duda
como una de las mejores de toda la historia, tanto por facilidad para
programar como por potencia, flexibilidad y catálogo de juegos.
La mayoría de mundos tipo Tierra aún no han nacido
La NASA ha publicado un interesante artículo en el que aseguran que la mayoría de los planetas parecidos a la Tierra, y por tanto potencialmente habitables, todavía no han nacido, asegurando además que nuestro planeta llegó “temprano a la fiesta”.
Según esta afirmación incluso cuando el Sol llegue al final de su
vida, algo que ocurrirá dentro de unos 6.000 millones de años, un 92% de planetas potencialmente habitables todavía no habrán nacido, un dato muy interesante que sin duda deja muchas cuestiones en el aire.
Sí, todavía ha suficiente material sobrante tras el Big Bang como para que sigan naciendo nuevos planetas
tanto en la Vía Láctea como en otros horizontes mucho más lejanos,
según dijo textualmente Molly Peeples, coinvestigador del Space
Telescope Science Institute.
Todo implica que no podemos descartar que acaben naciendo “nuevas
Tierras” y que en las mismas se forme vida compleja, algo que podría dar
pie a la creación de nuevas civilizaciones paralelas a
la nuestra en galaxias lejanas, o que incluso en un futuro podamos
llegar a dar el salto a este tipo de mundos para escapar del fin de
nuestro propio planeta azul.
Por otro lado los expertos predicen que podrían existir alrededor de 1.000 millones de planetas de tamaño similar a la Tierra,
cuya evolución acabaría siendo similar a la de aquella, una teoría que
refuerza la idea de que es muy probable que no estemos solos en el
universo.