Archivos para agosto, 2015

Si bien es cierto que para una gran cantidad de aplicaciones alimentamos nuestra placa Raspberry Pi con un adaptador de pared, otros usos podrían requerir de una fuente de alimentación portátil a baterías, como por ejemplo: Construyendo Nuestro Propio Pi(rate)Box Desde Cero.

Lamentablemente el circuito de la fuente de alimentación de la placa Raspberry Pi utiliza un regulador de tensión lineal para la línea de alimentación principal de 3.3V. El regulador de tensión en cuestión es un SE8117T33 fabricado por Seaward Electronics Inc., el cual, si bien es de alto rendimiento, por sus características lineales desperdicia aproximadamente un 30% de energía la cual disipa en forma de calor. Este porcentaje puede parecer despreciable si la placa Raspberry Pi es alimentada utilizando un adaptador de pared, pero cuando se trata de baterías, este porcentaje no es para nada insignificante. Para incrementar la autonomía utilizando baterías, sustituiremos el regulador de tensión lineal por un regulador de tensión switching.

Sin más preámbulos procederemos a analizar las características eléctricas del regulador de tensión original de la placa Raspberry Pi encontradas en la hoja de datos provista por el fabricante.

Descargar SE8117T33 Datasheet

Características principales del regulador de voltaje SE8117T33:

  • Voltaje de Entrada: 9V (Máx.)
  • Voltaje de Salida: 3.3V
  • Corriente Máxima: 1A

Conociendo estos datos, buscaremos un módulo regulador switching de características iguales o superiores para alimentar correctamente nuestra placa. En el mercado existe una gran cantidad de módulos switching de diversos fabricantes que pueden satisfacer nuestros requerimientos, como por ejemplo, el módulo D24V6ALV de la Casa Pololu, que si bien provee una corriente de salida máxima de 600mA, es suficiente para nuestro propósito. En particular, no me fué posible encontrar dicho módulo dada la actual escasez de componentes electrónicos importados en mi país. Sin desistir de la búsqueda, conseguí mediante un importador local un módulo genérico de procedencia China, rotulado “DSN-MINI-360”, cuyas características eléctricas se detallan a continuación:

Características principales del módulo regulador switching DSN-MINI-360:

  • Voltaje de Entrada: 4.75V – 23V
  • Voltaje de Salida: 1.0V – 17V (Ajustable)
  • Corriente Máxima: 1.8A
  • Eficiencia: 96%

Como podemos observar, las características satisfacen perfectamente nuestros requerimientos, y con una eficiencia del 96% sólo tenemos una pérdida del 4% en contraste con el 30% del regulador de tensión lineal original, obteniendo así una mejora del 26%.

El módulo regulador switching DSN-MINI-360 se observa en las siguientes imágenes:

A continuación debemos soldar al módulo switching los 3 cables de conexión en los lugares correspondientes:

  • IN+ –> Entrada (+) [5V]
  • IN- –> GND (-) [Común a Entrada/Salida]
  • OUT+ –> Salida (+) [3.3V]

En la siguiente imagen se observa el resultado de este proceso:

Habiendo realizado exitosamente el paso anterior, ahora debemos ajustar la tensión de salida del módulo a un voltaje de 3.3V, la misma tensión de salida del regulador de voltaje original de la placa. Conectaremos el módulo switching a una fuente de alimentación cuyo voltaje de salida sea 5V, respetando el esquema de conexiones detallado anteriormente. Con el multímetro ajustado en la escala apropiada, comenzaremos a ajustar el trimpot ayudándonos con un destornillador de precisión hasta obtener el voltaje deseado en la salida. NO DEBE EXCEDER 3.3V!!!

IMPORTANTE: el ajuste de la tensión de salida del módulo switching debe realizarse ANTES de ser conectado a la placa Raspberry Pi. Una tensión de alimentación mayor a 3.3V causará daños irreparables en la placa.

Llegados a este punto, ya tenemos el módulo switching listo para ser instalado como reemplazo del regulador de voltaje original. La etapa siguiente probablemente sea las más crítica (y emocionante) de todo el proceso, que consiste en remover el regulador de voltaje original e instalar el módulo switching como reemplazo del mismo.

Antes de remover el regulador de voltaje SE8117T33, debemos verificar el pinout del mismo para identificar los puntos de conexión de nuestro módulo switching. El pinout se observa en la siguiente imagen:

Luego, buscamos el regulador de voltaje original en la placa Raspberry Pi y en su correspondiente diagrama esquemático para identificar correctamente los puntos de conexión:

Descargar Raspberry Pi Rev 2.1 Model A/B Schematics

Para remover el regulador de tensión original, emplearemos una estación de soldado SMD con aire caliente, en particular he utilizado la estación HONY 908 con excelentes resultados.

Con extremo cuidado calentaremos el componente hasta que sea posible extraerlo de la placa con la ayuda de una brusela antiestática. Debemos asegurarnos de calentar lo suficiente el componente ya que de lo contrario existe el riesgo de dañar los pads del PCB. La placa con el regulador de voltaje removido se observa a continuación:

Si logramos remover el regulador de tensión sin inconvenientes, podemos volver a respirar y la modificación estará casi completa. En caso de tener algún contratiempo, a no perder la calma y revisar el diagrama esquemático en busca de alguna solución.

Con el componente original removido, solamente nos queda soldar los 3 cables de conexión de nuestro módulo switching a los pads correspondientes en nuestra placa Raspberry Pi. También es conveniente fijar el módulo al PCB, para esta tarea utilizaremos un pegamento no abrasivo a base de silicona, por ejemplo “Fastix®”. El único inconveniente será que la frambuesa (logo) quedará oculta. Triste

En particular, he sometido a todo el proceso descripto anteriormente a dos placas Raspberry Pi con excelentes resultados. En las siguientes imágenes se observan ambas placas:

Anuncios

Vivimos días en los que el sitio “The Pirate Bay” ha sido bloqueado en diferentes países, incluido el nuestro. Vivimos días en los que partidos políticos y funcionarios quieren censurar hasta los comentarios en sitios web y redes sociales, ejerciendo una censura sin límites mediante justificaciones banales. Vivimos días en los que Google discrimina contenido proveniente de BitTorrent obligado por lobbies que nada tienen que ver con la ciudadanía ni la cultura. Así que para estos tiempos particularmente oscuros, tiempos de lucha en la red contra esas distintas formas de poder, quiero presentarles PirateBox: una caja para el que sabe que compartir no es robar.

El Pacto de San José de Costa Rica expresa:

Artículo 13. Libertad de Pensamiento y de Expresión
1. Toda persona tiene derecho a la libertad de pensamiento y de expresión. Este derecho comprende la libertad de buscar, recibir y difundir informaciones e ideas de toda índole, sin consideración de fronteras, ya sea oralmente, por escrito o en forma impresa o artística, o por cualquier otro procedimiento de su elección.

Declaración Universal de los Derechos Humanos:

Todo individuo tiene derecho a la libertad de opinión y expresión; este derecho incluye el de no ser molestado a causa de sus opiniones, el de investigar y de recibir informaciones y opiniones, y el de difundirlas, sin limitación de fronteras, por cualquier medio de expresión.

En tanto a Internet la OEA sostiene en su Declaración Conjunta sobre Libertad de Expresión e Internet:

1. Principios generales
La libertad de expresión se aplica a Internet del mismo modo que a todos los medios de comunicación. Las restricciones a la libertad de expresión en Internet solo resultan aceptables cuando cumplen con los estándares internacionales que disponen, entre otras cosas, que deberán estar previstas por la ley y perseguir una finalidad legítima reconocida por el derecho internacional y ser necesarias para alcanzar dicha finalidad (la prueba "tripartita").

Un PirateBox es un dispositivo electrónico portátil, que a menudo consiste en un enrutador y un dispositivo de almacenamiento, la creación de una red inalámbrica que permite a los usuarios que están conectados a la misma compartir archivos de forma anónima y de manera local. Por definición, este dispositivo no está conectado a Internet.

Inspirado por los movimientos en pro de la cultura libre y las radios pirata, el artista David Darts utiliza software libre y abierto (FLOSS) para crear redes inalámbricas de cajas pirata para el libre y anónimo intercambio de imágenes, vídeo, audio, y demás contenido. Luego de leer los párrafos anteriores, tal vez se pregunten cuáles son sus características, dónde se obtiene, o mejor aún, cómo hacer uno por su cuenta.

Lista de Componentes

1 Raspberry Pi Modelo B (Rev. 2)

1 Memoria USB Sandisk Cruzer Micro 16GB (o equivalente)

1 Tarjeta de Memoria ADATA microSDHC 8GB Clase 10 (o equivalente) [Sistema de Archivos FAT32, partición única]

1 Adaptador USB Inalámbrico TP-LINK TL-WN823N (o equivalente Realtek RTL8192CU)

1 Cargador Portátil a Batería USB 10.000mAh con suministro de corriente de 2A

1 Cable Ethernet (derecho) retráctil.

1 Adaptador de Tarjetas microSD de Bajo Perfil (opcional)

Instalación

Habiendo reunido todos los componentes, nuestro primer paso será descargar la siguiente imagen: Raspberry Pi(rate)Box 1.0.2 image v1.0.5 utilizando nuestro cliente BitTorrent favorito, en particular, recomiendo Deluge. Una vez finalizada la descarga recomiendo seguir compartiendo el archivo para colaborar con la descarga del mismo y así ayudar a otros miembros de la comunidad.

Luego descomprimiremos el archivo “ArchLinuxARM-2014.10-PirateBox*.zip” y como resultado de este proceso obtendremos el archivo “raw_arch_image_file”, el cual debemos escribir en nuestra tarjeta microSDHC.

Podemos realizar esta tarea desde un sistema operativo Linux con la utilidad “dd”. Desde un sistema operativo Windows podemos utilizar una excelente herramienta: Win32DiskImager

Luego de ejecutar la utilidad debemos especificar la ruta de la imagen a escribir y seleccionar la letra de la unidad correspondiente a nuestra tarjeta microSDHC. ¡CUIDADO! Finalmente presionamos el botón “Write”. La secuencia de pasos antes descritas se observa en la siguiente imagen:

Finalizado exitosamente el proceso de escritura de la imagen en la tarjeta microSDHC, procederemos a insertar la misma en el adaptador de bajo perfil y éste a su vez en el zócalo del Raspberry Pi. Además conectaremos la memoria USB, el adaptador USB inalámbrico y conectaremos el RPi a nuestro router utilizando el cable Ethernet. Finalmente conectaremos la fuente de alimentación.

Luego de algunos segundos, habiendo iniciando por completo el sistema operativo Arch Linux, ejecutaremos nuestro cliente SSH favorito y estableceremos una conexión a la dirección IP asignada por el servidor DHCP de nuestro router. Desde un sistema operativo Windows podemos utilizar una excelente herramienta: “PuTTY”, cuyo enlace de descarga se encuentra a continuación.

PuTTY 0.64

Autor: Jakub

Web: jakub.kotrla.net/putty/

Tamaño: 1.05MB

SHA1 Hash: B37FB75C18705263BB9A4A0DCCFCBCE395CB1A76

Descarga     Mirror

Cuando se nos solicite, introduciremos las credenciales de acceso

login: root

Password: root

Ejecutamos la siguiente secuencia de comandos:

[root@alarmpi ~]# passwd

A continuación introduciremos una nueva contraseña decente para el usuario “root”, como se observa en la siguiente imagen:

Ahora debemos configurar la memoria USB como almacenamiento predeterminado para nuestro PirateBox, para ello debemos ejecutar la siguiente secuencia de comandos:

[root@alarmpi ~]# echo "/dev/sda1 /mnt/usbdrive vfat umask=0,noatime,rw,user 0 0" >> /etc/fstab

[root@alarmpi ~]# mkdir -p /mnt/usbdrive

[root@alarmpi ~]# mount /mnt/usbdrive

[root@alarmpi ~]# mv /opt/piratebox/share/Shared /mnt/usbdrive

[root@alarmpi ~]# ln -s /mnt/usbdrive/Shared /opt/piratebox/share

[root@alarmpi ~]# mv /opt/piratebox/share/board/src /mnt/usbdrive/kareha_uploads

[root@alarmpi ~]# ln -s /mnt/usbdrive/kareha_uploads /opt/piratebox/share/board/src

La ejecución exitosa de la secuencia de comandos expuesta anteriormente se observa en la siguiente imagen:

Como vemos, la ejecución de determinados comandos arroja el mensaje de error “Failed to preserve ownership for…”, podemos ignorar este mensaje ya que se trata acerca de la preservación de permisos en los archivos, esto es lógico ya que estamos utilizando el sistema de archivos FAT32 en la memoria USB.

La siguiente tarea consiste en configurar como Access Point el adaptador USB inalámbrico para proveer conectividad a los usuarios. Afortunadamente ya se encuentran incluidas algunas versiones alternativas de “hostapd”, entre las cuales se encuentra una versión para el chipset de nuestro adaptador inalámbrico (RTL8192CU). Ahora debemos instalar la versión correcta de “hostapd” para nuestro chipset ejecutando el comando:

[root@alarmpi ~]# pacman -U /prebuild/hostapd/hostapd-8192cu-0.8_rtw_r7475.20130812_beta-3-armv6h.pkg.tar.xz

El resultado de la ejecución del comando anterior se observa en las siguientes imágenes:

Siendo exitoso el paso anterior, ahora debemos asegurarnos que el administrador de paquetes “pacman” no actualice la versión alternativa de “hostapd” que acabamos de instalar. Para esto debemos modificar el archivo “pacman.conf” ejecutando el siguiente comando:

[root@alarmpi ~]# nano /etc/pacman.conf

Luego, modificamos el archivo como se muestra en la siguiente imagen:

Con lo anterior nos aseguramos que “pacman” no reemplace nuestra versión alternativa de “hostapd”. Ahora sólo queda editar el archivo de configuración de “hostapd” para configurar el controlador correcto. Debemos modificar el archivo “hostapd.conf” utilizando el comando:

[root@alarmpi ~]# nano /opt/piratebox/conf/hostapd.conf

Y modificamos el archivo como se muestra en la siguiente imagen:

El controlador correcto es RTL871xdrv, en minúsculas. La L no es 1.

Finalmente procedemos a reiniciar el dispositivo:

[root@alarmpi ~]# shutdown –r now

Luego de reiniciar el dispositivo, nuevamente establecemos una conexión ejecutando nuestro cliente SSH favorito y ejecutamos los siguientes comandos:

[root@alarmpi ~]# systemctl start piratebox

[root@alarmpi ~]# systemctl enable piratebox

Llegados a este punto, cerramos la sesión SSH con el comando:

[root@alarmpi ~]# exit

Luego procederemos a desconectar el cable Ethernet de nuestro Raspberry Pi y nos conectaremos mediante Wi-Fi al Punto de Acceso inalámbrico cuyo SSID es “PirateBox – Share Freely”. Una vez más ejecutaremos nuestro cliente SSH favorito y estableceremos una conexión a la dirección IP 192.168.77.1.

Luego de introducir las credenciales de acceso, debemos modificar el archivo de configuración de “Kareha” (Pizarra de Imágenes y Discusión). Para realizar esta tarea, utilizaremos el editor de texto “vi”. Modificaremos los valores de las constantes “ADMIN_PASS” y “SECRET”. También debemos eliminar el caracter “#” al principio de ambas líneas en caso de estar presente.

ADMIN_PASS: contraseña decente.

SECRET: totalmente aleatorio y extenso. No es necesario recordarlo.

[root@alarmpi ~]# vi /opt/piratebox/www/board/config.pl

Habiendo modificado exitosamente el archivo de configuración, ejecutamos el siguiente comando:

[root@alarmpi ~]# /opt/piratebox/bin/timesave.sh /opt/piratebox/conf/piratebox.conf install

Ahora, ejecutaremos nuestro navegador web favorito y en la barra de direcciones introduciremos la dirección http://piratebox.lan/board/kareha.pl para la primera inicialización.

Finalmente procederemos a activar el servidor multimedia UPnP con la siguiente secuencia de comandos:

[root@alarmpi ~]# cp /etc/minidlna.conf /etc/minidlna.conf.bkp

[root@alarmpi ~]# cp /opt/piratebox/src/linux.example.minidlna.conf /etc/minidlna.conf

Editaremos el archivo “minidlna.conf” utilizando el editor de texto “vi”.

[root@alarmpi ~]# vi /etc/minidlna.conf

El archivo debe quedar como se muestra en la siguiente imagen:

Por último, iniciamos el servidor multimedia UPnP con la siguiente secuencia de comandos:

[root@alarmpi ~]# systemctl start minidlna

[root@alarmpi ~]# systemctl enable minidlna

Share freely!!!

Fuente: http://www.piratebox.cc/raspberry_pi:diy