scripts kernel linux • desarrollo android • juegos raros ... · personal odroid magazine rob...
Post on 27-May-2020
10 Views
Preview:
TRANSCRIPT
Time
Antildeo DosMum 19Jul 2015
Diet Pi
ODROIDMagazine
bull Atril Electroacutenico ODROID-C1 bull Control Pines GPIO C1
PopcornDisfruta depeliacuteculas yprogramas de TVal instantecon tuODROID
Liviana distribucioacuten para tu ODROID
Scripts kernel Linux bull Desarrollo Android bull Juegos raros en linux
Queacute defendemosNos esmeramos en presentar una tecnologiacutea punta futura joven teacutecnica y para la sociedad de hoy
Nuestra filosofiacutea se basa en los desarrolladores Con-tinuamente nos esforzamos por mantener estrechas relaciones con eacutestos en todo el mundo
Por eso siempre podraacutes confiar en la calidad yexperiencia que representa la marca distintiva de nuestros productos
Ahora estamos enviando losdispositivos ODROID U3 a lospaiacuteses de la UE Ven y visita nuestra tienda online
Direccioacuten Max-Pollin-Straszlige 1 85104 Pfoumlrring Alemania
Teleacutefono amp Faxtelf +49 (0) 8403 920-920email servicepollinde
Nuestros productos ODROID se pueden encon-trar en httpbitly1tXPXwe
EDITORIAL
ODROID Magazine que se publica mensualmente en httpmagazineodroidcom es la fuente de todas las cosas ODROIDianas bull Hard Kernel Ltd bull 704 Anyang K-Center Gwanyang Dongan Anyang Gyeonggi South Korea 431-815 bull fabricantes de la familia ODROID de placas de desarrollo quad-core y la primera arquitectura ARM ldquobigLITTLErdquo del mundo basada en una uacutenica placa
Uacutenete a la comunidad ODROID con miembros en maacutes de 135 paiacuteses en httpforumodroidcom y explora las nuevas tecnologiacuteas que te ofrece Hardkernel en httpwwwhardkernelcom
Uno de los usos maacutes comunes de ODROID es emplearlo como centro multimedia y Popcorn Time es un software todo-en-uno que puede reproducir casi cualquier tipo de
peliacutecula o programa de televisioacuten Funciona muy bien en el U3 convirtieacutendolo en un dispositivo muy uacutetil y barato que puedes
colocar sobre el televisorComo siempre contamos con diver-tidos artiacuteculos sobre juegos para la plataforma ODROID coacutemo crear
tus propios videojuegos para un claacutesico ordenador Amstrad jugar al Millenia
Altered Destinies y disfrutar de Nubsrsquo Adventure y Kung Fury para Android Para los apasionados de Android Nanik continuacutea su se-
rie de Desarrollo Android con una guiacutea para compilar Android Studio un entorno de desarrollo interactivo de Java
Para los amantes al bricolaje Ivaacuten presenta su innovador Atril electroacutenico que utiliza como muacutesico profesional para acceder a sus partituras de muacutesica y tomar notas con una moderna interfaz con pantalla taacutectil Tambieacuten detallamos coacutemo acceder a los pines GPIO de un ODROID-C1 usando una libreriacutea Java llamada jOdro analizamos una liviana distribucioacuten llamada DietPi y aprenderemos coacutemo compilar un kernel Linux para ODROID usando scripts automatizados
PERSONAL
ODROIDMagazine
Rob Roy Editor Jefe
Soy un programa-dor informaacutetico
que vive y trabaja en San Francisco CA en
el disentildeo y desarrollo de aplicacio-nes web para clients locales sobre mi cluster ODROID Mis principales lenguajes son jQuery angular JS y HTML5CSS3 Tambieacuten desarrollo SO precompilados Kernels perso-nalizados y aplicaciones optimizadas para ODROID basadas en las ver-siones oficiales de Hardkernel por los cuales he ganado varios Premios Utilizo mi ODROIDs para diversos fines como centro multimedia ser-vidor web desarrollo de aplicaciones estacioacuten de trabajo y como plataforma de juegos Puedes echar un vistazo a mi coleccioacuten de 100 GB de software ODROID kernel precompilados e imaacutegenes en httpbitly1fsaXQs
Robert Cleere Editor
Soy un disentildeador de hardware y software
que actualmente vive en Huntsville Alabama
Aunque semi-retirado del disentildeo de los sistemas integrados incluyendo maacutes de una deacutecada trabajando en el programa del transbordador espacial continuacuteo disentildeando productos de software y hardware y me interesa la produccioacuten de audiovideo y las obras de arte Mis lenguajes de programacioacuten son Java C y C ++ y tengo experiencia con bas-tantes sistemas operativos integrados Actualmente mis proyectos principales son los sistemas navales de seguimiento y control monitoreo ambiental y la energiacutea solar Actualmente estoy tra-bajando con varios procesadores ARM Cortex pero mi ODROID-C1 es en gran medida el maacutes poderoso de todos
Bruno Doiche Editor Atistico Senior
Date prisa Bruno ten-emos que empaquetar la revista para enviaacuterselas a nuestros lectores Piensa en algo divertido podamos incluir aquiacute iexclraacutepidoiexclLo tengoldquoNo me considero una persona fea sino maacutes bien un mono muy guapordquoAdemaacutesldquoLa gente dice que el dinero no es la clave de la felicidad pero siempre penseacute si tienes suficiente dinero puede tener una marca claverdquo
Manuel Adamuz EditorEspantildeol
Tengo 31 antildeos y vivo en Sevilla Espantildea
y naciacute en Granada Estoy casado con una mujer maravillosa y tengo un hijo Hace unos antildeos trabajeacute como teacutecnico informaacutetico y programador pero mi trabajo actual estaacute relacionado con la gestioacuten de calidad y las tecnologiacuteas de la informacioacuten ISO 9001 ISO 27001 ISO 20000 Soy un apasionado de la informaacutetica especialmente de los microordenadores como el ODROID Raspberry Pi etc Me encanta experi-mentar con estos equipos y traducir ODROID Magazine Mi esposa dice que estoy loco porque soacutelo pienso en ODROID Mi otra aficioacuten es la bici-cleta de montantildea a veces participo en competiciones semiprofesionales
Nicole Scott Editor Artistico
Soy una experta en Produccioacuten Trans-
media y Estrategia Digital especializa en la optimizacioacuten online y estrategias de marketing administracioacuten de medios sociales y produccioacuten multimedia impresa web viacutedeo y cine Gestiono muacuteltiples cuentas con agencias y productores de cine desde Analytics y Adwords a la edicioacuten de viacutedeo y maquetacioacuten DVD Tengo un ODROID-U3 que utilizo para ejecutar un servidor web sandbox Vivo en el aacuterea de la Bahiacutea de California y disfruta haciendo senderismo acampada y tocando muacutesica Visita mi web en httpwwwnicolecscottcom
JamesLeFevour Editor Artiacutestico
Soy un especialista en medios digitales que dis-
fruta trabajando como freelance en mar-keting de redes sociales y administracioacuten de sitios web Cuanto maacutes aprendo so-bre las posibilidades de ODROID maacutes me ilusiona probar cosas nuevas con eacutel Me traslade a San Diego desde el Medio Oeste de los EEUU Todaviacutea estoy bas-tante enamorado de muchos aspectos que la mayoriacutea de la gente de la Costa Oeste ya da por sentado Vivo con mi encantadora esposa y nuestro adorable conejo mascota el cual mantiene mis libros y material informaacutetico en con-stante peligro
INDICEAMstrAD - 6
DEsArrOLLO AnDrOiD - 16
GEnErADOr DE rUiDO BLAnCO - 20
DiEt pi - 25
JUEGOs AnDrOiD nUBsrsquo ADvEntUrE- 9
kErnEL LinUx - 8
JUEGOs AnDrOiD kUnG fUry - 15
JAvA GpiO - 19
MUsiCA ODrOiD - 21
pOpCOrn tiME - 30
COnOCiEnDO A Un ODrOiDiAn - 32
JUEGOs LinUx MiLLEniUM - 10
Su desarrollador principal es Francisco Gallego (frangal-legobr) un ingeniero informaacutetico desarrollador de videojuegos y profesor de la Universidad de Alicante en Espantildea Si quieres profundizar en este entorno de trabajo puedes consultar los enlaces que aparecen al final de este artiacuteculo
Instalando CPCteleraEn primer lugar necesitas descargar el coacutedigo fuente para
compilarlo en tu placa Para ello descarga la versioacuten estable como lo hice yo o si eres atrevido puedes utilizar la uacuteltima versioacuten de GitHub
$ wget httpbitly1MMdUMA ampamp
unzip -nq $(basename $_) ampamp
rm $(basename $_) ampamp
cd cpctelera-11
or use the last commit
$ git clone httpbitly1IPxMOf ampamp
cd $(basename $_)
Para los que no lo sepan el Amstrad CPC era un ordena-dor de 8 bits que fue muy popular entre 1984 y 1990 CPCtelera es un motor que ha sido publicado reciente-
mente en su primera versioacuten estable la cual facilita la creacioacuten de juegos para Amstrad usando coacutedigo ensamblador o C
Presentando CPCteleraCPCtelera es un entorno de desarrollo integrado que premite
crear contenido y juegos para Amstrad CPC y que incluye
bull Una libreriacutea de bajo nivel con soporte para graacuteficos au-dio teclado firmware cadenas de caracteres tratamiento de hardware de viacutedeo y gestioacuten de memoria
bull Una Api para desarrollar juegos y software en C y ensam-blador
bull Herramientas para la creacioacuten de contenido (edicioacuten de nivel graacuteficos y audio)
bull Multiplataforma funciona con los sistemas Operativos Windows Ubuntu Debian Arch y Manjaro
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
AMSTRAD
AMstrAD CpC es una de esas re-liquias de 8 bits que siempre ocu-paraacute un sitio en nuestros corazones
ODROID MAGAZINE 6
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
Ejecutandosetupsh tras resolver las dependencias
AMSTRAD
Dispones de muchos ejemplos para aprender scanlines junto a la mejor nostalgia iexclprepaacuterate para trepar
A continuacioacuten tenemos que instalar las dependencias que faltan algunas de las cuales ya pueden estar instaladas
$ sudo apt-get install -y build-essential libboost-
dev flex bison
Luego activa el script de instalacioacuten ejecutando el archivo setup
$ sudo setupsh
Se te advertiraacute de los paquetes necesarios y prepararaacute tu sistema para ejecutar el motor En un ODROID-C1 la compi-lacioacuten suele tardar unos 20 minutos
Iniciando el MotorSi navegamos por los directorios podemos ver algunas
carpetas interesantes como docs que contiene el manu-al de referencia o tools que se utiliza para hacer sprites componer bandas sonoras convertidores de formatos y mucho maacutes Algunas de estas herramientas solo estaacuten dis-ponibles para Windows
Para crear un nuevo proyecto Bash escribe lo siguiente
$ cpct_mkproject [folder_project]
Navega por el directorio y veraacute dos subdirectorios
bull src con el coacutedigo fuente (la primera vez soacutelo tenemos un mainc) puede crear archivos y directorios de tu juego aquiacute
bull cfg contiene los paraacutemetros necesarios para compilar el juego a traveacutes del archivo build_configmk
Tambieacuten hay ejemplos que puedes analizar Simplemente ve al directorio ejecuta make y se crearaacuten automaacuteticamente los archivos CDT y DSK iexclIncreible iquestno
Platform ClimberCPCtelera incluye un completo juego de ejemplo llamado
Platform Climber En primer lugar necesitas un emulador de Amstrad CPC No he encontrado ninguno que estuviese pre-compilado para ODROID asiacute que tuve que descargar y com-pilar uno por miacute mismo No te preocupes es faacutecil
iexclAmstrad BAsiC es hora de desempolvar unos cuantos manuales
ODROID MAGAZINE 7
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Queacute defendemosNos esmeramos en presentar una tecnologiacutea punta futura joven teacutecnica y para la sociedad de hoy
Nuestra filosofiacutea se basa en los desarrolladores Con-tinuamente nos esforzamos por mantener estrechas relaciones con eacutestos en todo el mundo
Por eso siempre podraacutes confiar en la calidad yexperiencia que representa la marca distintiva de nuestros productos
Ahora estamos enviando losdispositivos ODROID U3 a lospaiacuteses de la UE Ven y visita nuestra tienda online
Direccioacuten Max-Pollin-Straszlige 1 85104 Pfoumlrring Alemania
Teleacutefono amp Faxtelf +49 (0) 8403 920-920email servicepollinde
Nuestros productos ODROID se pueden encon-trar en httpbitly1tXPXwe
EDITORIAL
ODROID Magazine que se publica mensualmente en httpmagazineodroidcom es la fuente de todas las cosas ODROIDianas bull Hard Kernel Ltd bull 704 Anyang K-Center Gwanyang Dongan Anyang Gyeonggi South Korea 431-815 bull fabricantes de la familia ODROID de placas de desarrollo quad-core y la primera arquitectura ARM ldquobigLITTLErdquo del mundo basada en una uacutenica placa
Uacutenete a la comunidad ODROID con miembros en maacutes de 135 paiacuteses en httpforumodroidcom y explora las nuevas tecnologiacuteas que te ofrece Hardkernel en httpwwwhardkernelcom
Uno de los usos maacutes comunes de ODROID es emplearlo como centro multimedia y Popcorn Time es un software todo-en-uno que puede reproducir casi cualquier tipo de
peliacutecula o programa de televisioacuten Funciona muy bien en el U3 convirtieacutendolo en un dispositivo muy uacutetil y barato que puedes
colocar sobre el televisorComo siempre contamos con diver-tidos artiacuteculos sobre juegos para la plataforma ODROID coacutemo crear
tus propios videojuegos para un claacutesico ordenador Amstrad jugar al Millenia
Altered Destinies y disfrutar de Nubsrsquo Adventure y Kung Fury para Android Para los apasionados de Android Nanik continuacutea su se-
rie de Desarrollo Android con una guiacutea para compilar Android Studio un entorno de desarrollo interactivo de Java
Para los amantes al bricolaje Ivaacuten presenta su innovador Atril electroacutenico que utiliza como muacutesico profesional para acceder a sus partituras de muacutesica y tomar notas con una moderna interfaz con pantalla taacutectil Tambieacuten detallamos coacutemo acceder a los pines GPIO de un ODROID-C1 usando una libreriacutea Java llamada jOdro analizamos una liviana distribucioacuten llamada DietPi y aprenderemos coacutemo compilar un kernel Linux para ODROID usando scripts automatizados
PERSONAL
ODROIDMagazine
Rob Roy Editor Jefe
Soy un programa-dor informaacutetico
que vive y trabaja en San Francisco CA en
el disentildeo y desarrollo de aplicacio-nes web para clients locales sobre mi cluster ODROID Mis principales lenguajes son jQuery angular JS y HTML5CSS3 Tambieacuten desarrollo SO precompilados Kernels perso-nalizados y aplicaciones optimizadas para ODROID basadas en las ver-siones oficiales de Hardkernel por los cuales he ganado varios Premios Utilizo mi ODROIDs para diversos fines como centro multimedia ser-vidor web desarrollo de aplicaciones estacioacuten de trabajo y como plataforma de juegos Puedes echar un vistazo a mi coleccioacuten de 100 GB de software ODROID kernel precompilados e imaacutegenes en httpbitly1fsaXQs
Robert Cleere Editor
Soy un disentildeador de hardware y software
que actualmente vive en Huntsville Alabama
Aunque semi-retirado del disentildeo de los sistemas integrados incluyendo maacutes de una deacutecada trabajando en el programa del transbordador espacial continuacuteo disentildeando productos de software y hardware y me interesa la produccioacuten de audiovideo y las obras de arte Mis lenguajes de programacioacuten son Java C y C ++ y tengo experiencia con bas-tantes sistemas operativos integrados Actualmente mis proyectos principales son los sistemas navales de seguimiento y control monitoreo ambiental y la energiacutea solar Actualmente estoy tra-bajando con varios procesadores ARM Cortex pero mi ODROID-C1 es en gran medida el maacutes poderoso de todos
Bruno Doiche Editor Atistico Senior
Date prisa Bruno ten-emos que empaquetar la revista para enviaacuterselas a nuestros lectores Piensa en algo divertido podamos incluir aquiacute iexclraacutepidoiexclLo tengoldquoNo me considero una persona fea sino maacutes bien un mono muy guapordquoAdemaacutesldquoLa gente dice que el dinero no es la clave de la felicidad pero siempre penseacute si tienes suficiente dinero puede tener una marca claverdquo
Manuel Adamuz EditorEspantildeol
Tengo 31 antildeos y vivo en Sevilla Espantildea
y naciacute en Granada Estoy casado con una mujer maravillosa y tengo un hijo Hace unos antildeos trabajeacute como teacutecnico informaacutetico y programador pero mi trabajo actual estaacute relacionado con la gestioacuten de calidad y las tecnologiacuteas de la informacioacuten ISO 9001 ISO 27001 ISO 20000 Soy un apasionado de la informaacutetica especialmente de los microordenadores como el ODROID Raspberry Pi etc Me encanta experi-mentar con estos equipos y traducir ODROID Magazine Mi esposa dice que estoy loco porque soacutelo pienso en ODROID Mi otra aficioacuten es la bici-cleta de montantildea a veces participo en competiciones semiprofesionales
Nicole Scott Editor Artistico
Soy una experta en Produccioacuten Trans-
media y Estrategia Digital especializa en la optimizacioacuten online y estrategias de marketing administracioacuten de medios sociales y produccioacuten multimedia impresa web viacutedeo y cine Gestiono muacuteltiples cuentas con agencias y productores de cine desde Analytics y Adwords a la edicioacuten de viacutedeo y maquetacioacuten DVD Tengo un ODROID-U3 que utilizo para ejecutar un servidor web sandbox Vivo en el aacuterea de la Bahiacutea de California y disfruta haciendo senderismo acampada y tocando muacutesica Visita mi web en httpwwwnicolecscottcom
JamesLeFevour Editor Artiacutestico
Soy un especialista en medios digitales que dis-
fruta trabajando como freelance en mar-keting de redes sociales y administracioacuten de sitios web Cuanto maacutes aprendo so-bre las posibilidades de ODROID maacutes me ilusiona probar cosas nuevas con eacutel Me traslade a San Diego desde el Medio Oeste de los EEUU Todaviacutea estoy bas-tante enamorado de muchos aspectos que la mayoriacutea de la gente de la Costa Oeste ya da por sentado Vivo con mi encantadora esposa y nuestro adorable conejo mascota el cual mantiene mis libros y material informaacutetico en con-stante peligro
INDICEAMstrAD - 6
DEsArrOLLO AnDrOiD - 16
GEnErADOr DE rUiDO BLAnCO - 20
DiEt pi - 25
JUEGOs AnDrOiD nUBsrsquo ADvEntUrE- 9
kErnEL LinUx - 8
JUEGOs AnDrOiD kUnG fUry - 15
JAvA GpiO - 19
MUsiCA ODrOiD - 21
pOpCOrn tiME - 30
COnOCiEnDO A Un ODrOiDiAn - 32
JUEGOs LinUx MiLLEniUM - 10
Su desarrollador principal es Francisco Gallego (frangal-legobr) un ingeniero informaacutetico desarrollador de videojuegos y profesor de la Universidad de Alicante en Espantildea Si quieres profundizar en este entorno de trabajo puedes consultar los enlaces que aparecen al final de este artiacuteculo
Instalando CPCteleraEn primer lugar necesitas descargar el coacutedigo fuente para
compilarlo en tu placa Para ello descarga la versioacuten estable como lo hice yo o si eres atrevido puedes utilizar la uacuteltima versioacuten de GitHub
$ wget httpbitly1MMdUMA ampamp
unzip -nq $(basename $_) ampamp
rm $(basename $_) ampamp
cd cpctelera-11
or use the last commit
$ git clone httpbitly1IPxMOf ampamp
cd $(basename $_)
Para los que no lo sepan el Amstrad CPC era un ordena-dor de 8 bits que fue muy popular entre 1984 y 1990 CPCtelera es un motor que ha sido publicado reciente-
mente en su primera versioacuten estable la cual facilita la creacioacuten de juegos para Amstrad usando coacutedigo ensamblador o C
Presentando CPCteleraCPCtelera es un entorno de desarrollo integrado que premite
crear contenido y juegos para Amstrad CPC y que incluye
bull Una libreriacutea de bajo nivel con soporte para graacuteficos au-dio teclado firmware cadenas de caracteres tratamiento de hardware de viacutedeo y gestioacuten de memoria
bull Una Api para desarrollar juegos y software en C y ensam-blador
bull Herramientas para la creacioacuten de contenido (edicioacuten de nivel graacuteficos y audio)
bull Multiplataforma funciona con los sistemas Operativos Windows Ubuntu Debian Arch y Manjaro
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
AMSTRAD
AMstrAD CpC es una de esas re-liquias de 8 bits que siempre ocu-paraacute un sitio en nuestros corazones
ODROID MAGAZINE 6
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
Ejecutandosetupsh tras resolver las dependencias
AMSTRAD
Dispones de muchos ejemplos para aprender scanlines junto a la mejor nostalgia iexclprepaacuterate para trepar
A continuacioacuten tenemos que instalar las dependencias que faltan algunas de las cuales ya pueden estar instaladas
$ sudo apt-get install -y build-essential libboost-
dev flex bison
Luego activa el script de instalacioacuten ejecutando el archivo setup
$ sudo setupsh
Se te advertiraacute de los paquetes necesarios y prepararaacute tu sistema para ejecutar el motor En un ODROID-C1 la compi-lacioacuten suele tardar unos 20 minutos
Iniciando el MotorSi navegamos por los directorios podemos ver algunas
carpetas interesantes como docs que contiene el manu-al de referencia o tools que se utiliza para hacer sprites componer bandas sonoras convertidores de formatos y mucho maacutes Algunas de estas herramientas solo estaacuten dis-ponibles para Windows
Para crear un nuevo proyecto Bash escribe lo siguiente
$ cpct_mkproject [folder_project]
Navega por el directorio y veraacute dos subdirectorios
bull src con el coacutedigo fuente (la primera vez soacutelo tenemos un mainc) puede crear archivos y directorios de tu juego aquiacute
bull cfg contiene los paraacutemetros necesarios para compilar el juego a traveacutes del archivo build_configmk
Tambieacuten hay ejemplos que puedes analizar Simplemente ve al directorio ejecuta make y se crearaacuten automaacuteticamente los archivos CDT y DSK iexclIncreible iquestno
Platform ClimberCPCtelera incluye un completo juego de ejemplo llamado
Platform Climber En primer lugar necesitas un emulador de Amstrad CPC No he encontrado ninguno que estuviese pre-compilado para ODROID asiacute que tuve que descargar y com-pilar uno por miacute mismo No te preocupes es faacutecil
iexclAmstrad BAsiC es hora de desempolvar unos cuantos manuales
ODROID MAGAZINE 7
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
EDITORIAL
ODROID Magazine que se publica mensualmente en httpmagazineodroidcom es la fuente de todas las cosas ODROIDianas bull Hard Kernel Ltd bull 704 Anyang K-Center Gwanyang Dongan Anyang Gyeonggi South Korea 431-815 bull fabricantes de la familia ODROID de placas de desarrollo quad-core y la primera arquitectura ARM ldquobigLITTLErdquo del mundo basada en una uacutenica placa
Uacutenete a la comunidad ODROID con miembros en maacutes de 135 paiacuteses en httpforumodroidcom y explora las nuevas tecnologiacuteas que te ofrece Hardkernel en httpwwwhardkernelcom
Uno de los usos maacutes comunes de ODROID es emplearlo como centro multimedia y Popcorn Time es un software todo-en-uno que puede reproducir casi cualquier tipo de
peliacutecula o programa de televisioacuten Funciona muy bien en el U3 convirtieacutendolo en un dispositivo muy uacutetil y barato que puedes
colocar sobre el televisorComo siempre contamos con diver-tidos artiacuteculos sobre juegos para la plataforma ODROID coacutemo crear
tus propios videojuegos para un claacutesico ordenador Amstrad jugar al Millenia
Altered Destinies y disfrutar de Nubsrsquo Adventure y Kung Fury para Android Para los apasionados de Android Nanik continuacutea su se-
rie de Desarrollo Android con una guiacutea para compilar Android Studio un entorno de desarrollo interactivo de Java
Para los amantes al bricolaje Ivaacuten presenta su innovador Atril electroacutenico que utiliza como muacutesico profesional para acceder a sus partituras de muacutesica y tomar notas con una moderna interfaz con pantalla taacutectil Tambieacuten detallamos coacutemo acceder a los pines GPIO de un ODROID-C1 usando una libreriacutea Java llamada jOdro analizamos una liviana distribucioacuten llamada DietPi y aprenderemos coacutemo compilar un kernel Linux para ODROID usando scripts automatizados
PERSONAL
ODROIDMagazine
Rob Roy Editor Jefe
Soy un programa-dor informaacutetico
que vive y trabaja en San Francisco CA en
el disentildeo y desarrollo de aplicacio-nes web para clients locales sobre mi cluster ODROID Mis principales lenguajes son jQuery angular JS y HTML5CSS3 Tambieacuten desarrollo SO precompilados Kernels perso-nalizados y aplicaciones optimizadas para ODROID basadas en las ver-siones oficiales de Hardkernel por los cuales he ganado varios Premios Utilizo mi ODROIDs para diversos fines como centro multimedia ser-vidor web desarrollo de aplicaciones estacioacuten de trabajo y como plataforma de juegos Puedes echar un vistazo a mi coleccioacuten de 100 GB de software ODROID kernel precompilados e imaacutegenes en httpbitly1fsaXQs
Robert Cleere Editor
Soy un disentildeador de hardware y software
que actualmente vive en Huntsville Alabama
Aunque semi-retirado del disentildeo de los sistemas integrados incluyendo maacutes de una deacutecada trabajando en el programa del transbordador espacial continuacuteo disentildeando productos de software y hardware y me interesa la produccioacuten de audiovideo y las obras de arte Mis lenguajes de programacioacuten son Java C y C ++ y tengo experiencia con bas-tantes sistemas operativos integrados Actualmente mis proyectos principales son los sistemas navales de seguimiento y control monitoreo ambiental y la energiacutea solar Actualmente estoy tra-bajando con varios procesadores ARM Cortex pero mi ODROID-C1 es en gran medida el maacutes poderoso de todos
Bruno Doiche Editor Atistico Senior
Date prisa Bruno ten-emos que empaquetar la revista para enviaacuterselas a nuestros lectores Piensa en algo divertido podamos incluir aquiacute iexclraacutepidoiexclLo tengoldquoNo me considero una persona fea sino maacutes bien un mono muy guapordquoAdemaacutesldquoLa gente dice que el dinero no es la clave de la felicidad pero siempre penseacute si tienes suficiente dinero puede tener una marca claverdquo
Manuel Adamuz EditorEspantildeol
Tengo 31 antildeos y vivo en Sevilla Espantildea
y naciacute en Granada Estoy casado con una mujer maravillosa y tengo un hijo Hace unos antildeos trabajeacute como teacutecnico informaacutetico y programador pero mi trabajo actual estaacute relacionado con la gestioacuten de calidad y las tecnologiacuteas de la informacioacuten ISO 9001 ISO 27001 ISO 20000 Soy un apasionado de la informaacutetica especialmente de los microordenadores como el ODROID Raspberry Pi etc Me encanta experi-mentar con estos equipos y traducir ODROID Magazine Mi esposa dice que estoy loco porque soacutelo pienso en ODROID Mi otra aficioacuten es la bici-cleta de montantildea a veces participo en competiciones semiprofesionales
Nicole Scott Editor Artistico
Soy una experta en Produccioacuten Trans-
media y Estrategia Digital especializa en la optimizacioacuten online y estrategias de marketing administracioacuten de medios sociales y produccioacuten multimedia impresa web viacutedeo y cine Gestiono muacuteltiples cuentas con agencias y productores de cine desde Analytics y Adwords a la edicioacuten de viacutedeo y maquetacioacuten DVD Tengo un ODROID-U3 que utilizo para ejecutar un servidor web sandbox Vivo en el aacuterea de la Bahiacutea de California y disfruta haciendo senderismo acampada y tocando muacutesica Visita mi web en httpwwwnicolecscottcom
JamesLeFevour Editor Artiacutestico
Soy un especialista en medios digitales que dis-
fruta trabajando como freelance en mar-keting de redes sociales y administracioacuten de sitios web Cuanto maacutes aprendo so-bre las posibilidades de ODROID maacutes me ilusiona probar cosas nuevas con eacutel Me traslade a San Diego desde el Medio Oeste de los EEUU Todaviacutea estoy bas-tante enamorado de muchos aspectos que la mayoriacutea de la gente de la Costa Oeste ya da por sentado Vivo con mi encantadora esposa y nuestro adorable conejo mascota el cual mantiene mis libros y material informaacutetico en con-stante peligro
INDICEAMstrAD - 6
DEsArrOLLO AnDrOiD - 16
GEnErADOr DE rUiDO BLAnCO - 20
DiEt pi - 25
JUEGOs AnDrOiD nUBsrsquo ADvEntUrE- 9
kErnEL LinUx - 8
JUEGOs AnDrOiD kUnG fUry - 15
JAvA GpiO - 19
MUsiCA ODrOiD - 21
pOpCOrn tiME - 30
COnOCiEnDO A Un ODrOiDiAn - 32
JUEGOs LinUx MiLLEniUM - 10
Su desarrollador principal es Francisco Gallego (frangal-legobr) un ingeniero informaacutetico desarrollador de videojuegos y profesor de la Universidad de Alicante en Espantildea Si quieres profundizar en este entorno de trabajo puedes consultar los enlaces que aparecen al final de este artiacuteculo
Instalando CPCteleraEn primer lugar necesitas descargar el coacutedigo fuente para
compilarlo en tu placa Para ello descarga la versioacuten estable como lo hice yo o si eres atrevido puedes utilizar la uacuteltima versioacuten de GitHub
$ wget httpbitly1MMdUMA ampamp
unzip -nq $(basename $_) ampamp
rm $(basename $_) ampamp
cd cpctelera-11
or use the last commit
$ git clone httpbitly1IPxMOf ampamp
cd $(basename $_)
Para los que no lo sepan el Amstrad CPC era un ordena-dor de 8 bits que fue muy popular entre 1984 y 1990 CPCtelera es un motor que ha sido publicado reciente-
mente en su primera versioacuten estable la cual facilita la creacioacuten de juegos para Amstrad usando coacutedigo ensamblador o C
Presentando CPCteleraCPCtelera es un entorno de desarrollo integrado que premite
crear contenido y juegos para Amstrad CPC y que incluye
bull Una libreriacutea de bajo nivel con soporte para graacuteficos au-dio teclado firmware cadenas de caracteres tratamiento de hardware de viacutedeo y gestioacuten de memoria
bull Una Api para desarrollar juegos y software en C y ensam-blador
bull Herramientas para la creacioacuten de contenido (edicioacuten de nivel graacuteficos y audio)
bull Multiplataforma funciona con los sistemas Operativos Windows Ubuntu Debian Arch y Manjaro
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
AMSTRAD
AMstrAD CpC es una de esas re-liquias de 8 bits que siempre ocu-paraacute un sitio en nuestros corazones
ODROID MAGAZINE 6
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
Ejecutandosetupsh tras resolver las dependencias
AMSTRAD
Dispones de muchos ejemplos para aprender scanlines junto a la mejor nostalgia iexclprepaacuterate para trepar
A continuacioacuten tenemos que instalar las dependencias que faltan algunas de las cuales ya pueden estar instaladas
$ sudo apt-get install -y build-essential libboost-
dev flex bison
Luego activa el script de instalacioacuten ejecutando el archivo setup
$ sudo setupsh
Se te advertiraacute de los paquetes necesarios y prepararaacute tu sistema para ejecutar el motor En un ODROID-C1 la compi-lacioacuten suele tardar unos 20 minutos
Iniciando el MotorSi navegamos por los directorios podemos ver algunas
carpetas interesantes como docs que contiene el manu-al de referencia o tools que se utiliza para hacer sprites componer bandas sonoras convertidores de formatos y mucho maacutes Algunas de estas herramientas solo estaacuten dis-ponibles para Windows
Para crear un nuevo proyecto Bash escribe lo siguiente
$ cpct_mkproject [folder_project]
Navega por el directorio y veraacute dos subdirectorios
bull src con el coacutedigo fuente (la primera vez soacutelo tenemos un mainc) puede crear archivos y directorios de tu juego aquiacute
bull cfg contiene los paraacutemetros necesarios para compilar el juego a traveacutes del archivo build_configmk
Tambieacuten hay ejemplos que puedes analizar Simplemente ve al directorio ejecuta make y se crearaacuten automaacuteticamente los archivos CDT y DSK iexclIncreible iquestno
Platform ClimberCPCtelera incluye un completo juego de ejemplo llamado
Platform Climber En primer lugar necesitas un emulador de Amstrad CPC No he encontrado ninguno que estuviese pre-compilado para ODROID asiacute que tuve que descargar y com-pilar uno por miacute mismo No te preocupes es faacutecil
iexclAmstrad BAsiC es hora de desempolvar unos cuantos manuales
ODROID MAGAZINE 7
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
PERSONAL
ODROIDMagazine
Rob Roy Editor Jefe
Soy un programa-dor informaacutetico
que vive y trabaja en San Francisco CA en
el disentildeo y desarrollo de aplicacio-nes web para clients locales sobre mi cluster ODROID Mis principales lenguajes son jQuery angular JS y HTML5CSS3 Tambieacuten desarrollo SO precompilados Kernels perso-nalizados y aplicaciones optimizadas para ODROID basadas en las ver-siones oficiales de Hardkernel por los cuales he ganado varios Premios Utilizo mi ODROIDs para diversos fines como centro multimedia ser-vidor web desarrollo de aplicaciones estacioacuten de trabajo y como plataforma de juegos Puedes echar un vistazo a mi coleccioacuten de 100 GB de software ODROID kernel precompilados e imaacutegenes en httpbitly1fsaXQs
Robert Cleere Editor
Soy un disentildeador de hardware y software
que actualmente vive en Huntsville Alabama
Aunque semi-retirado del disentildeo de los sistemas integrados incluyendo maacutes de una deacutecada trabajando en el programa del transbordador espacial continuacuteo disentildeando productos de software y hardware y me interesa la produccioacuten de audiovideo y las obras de arte Mis lenguajes de programacioacuten son Java C y C ++ y tengo experiencia con bas-tantes sistemas operativos integrados Actualmente mis proyectos principales son los sistemas navales de seguimiento y control monitoreo ambiental y la energiacutea solar Actualmente estoy tra-bajando con varios procesadores ARM Cortex pero mi ODROID-C1 es en gran medida el maacutes poderoso de todos
Bruno Doiche Editor Atistico Senior
Date prisa Bruno ten-emos que empaquetar la revista para enviaacuterselas a nuestros lectores Piensa en algo divertido podamos incluir aquiacute iexclraacutepidoiexclLo tengoldquoNo me considero una persona fea sino maacutes bien un mono muy guapordquoAdemaacutesldquoLa gente dice que el dinero no es la clave de la felicidad pero siempre penseacute si tienes suficiente dinero puede tener una marca claverdquo
Manuel Adamuz EditorEspantildeol
Tengo 31 antildeos y vivo en Sevilla Espantildea
y naciacute en Granada Estoy casado con una mujer maravillosa y tengo un hijo Hace unos antildeos trabajeacute como teacutecnico informaacutetico y programador pero mi trabajo actual estaacute relacionado con la gestioacuten de calidad y las tecnologiacuteas de la informacioacuten ISO 9001 ISO 27001 ISO 20000 Soy un apasionado de la informaacutetica especialmente de los microordenadores como el ODROID Raspberry Pi etc Me encanta experi-mentar con estos equipos y traducir ODROID Magazine Mi esposa dice que estoy loco porque soacutelo pienso en ODROID Mi otra aficioacuten es la bici-cleta de montantildea a veces participo en competiciones semiprofesionales
Nicole Scott Editor Artistico
Soy una experta en Produccioacuten Trans-
media y Estrategia Digital especializa en la optimizacioacuten online y estrategias de marketing administracioacuten de medios sociales y produccioacuten multimedia impresa web viacutedeo y cine Gestiono muacuteltiples cuentas con agencias y productores de cine desde Analytics y Adwords a la edicioacuten de viacutedeo y maquetacioacuten DVD Tengo un ODROID-U3 que utilizo para ejecutar un servidor web sandbox Vivo en el aacuterea de la Bahiacutea de California y disfruta haciendo senderismo acampada y tocando muacutesica Visita mi web en httpwwwnicolecscottcom
JamesLeFevour Editor Artiacutestico
Soy un especialista en medios digitales que dis-
fruta trabajando como freelance en mar-keting de redes sociales y administracioacuten de sitios web Cuanto maacutes aprendo so-bre las posibilidades de ODROID maacutes me ilusiona probar cosas nuevas con eacutel Me traslade a San Diego desde el Medio Oeste de los EEUU Todaviacutea estoy bas-tante enamorado de muchos aspectos que la mayoriacutea de la gente de la Costa Oeste ya da por sentado Vivo con mi encantadora esposa y nuestro adorable conejo mascota el cual mantiene mis libros y material informaacutetico en con-stante peligro
INDICEAMstrAD - 6
DEsArrOLLO AnDrOiD - 16
GEnErADOr DE rUiDO BLAnCO - 20
DiEt pi - 25
JUEGOs AnDrOiD nUBsrsquo ADvEntUrE- 9
kErnEL LinUx - 8
JUEGOs AnDrOiD kUnG fUry - 15
JAvA GpiO - 19
MUsiCA ODrOiD - 21
pOpCOrn tiME - 30
COnOCiEnDO A Un ODrOiDiAn - 32
JUEGOs LinUx MiLLEniUM - 10
Su desarrollador principal es Francisco Gallego (frangal-legobr) un ingeniero informaacutetico desarrollador de videojuegos y profesor de la Universidad de Alicante en Espantildea Si quieres profundizar en este entorno de trabajo puedes consultar los enlaces que aparecen al final de este artiacuteculo
Instalando CPCteleraEn primer lugar necesitas descargar el coacutedigo fuente para
compilarlo en tu placa Para ello descarga la versioacuten estable como lo hice yo o si eres atrevido puedes utilizar la uacuteltima versioacuten de GitHub
$ wget httpbitly1MMdUMA ampamp
unzip -nq $(basename $_) ampamp
rm $(basename $_) ampamp
cd cpctelera-11
or use the last commit
$ git clone httpbitly1IPxMOf ampamp
cd $(basename $_)
Para los que no lo sepan el Amstrad CPC era un ordena-dor de 8 bits que fue muy popular entre 1984 y 1990 CPCtelera es un motor que ha sido publicado reciente-
mente en su primera versioacuten estable la cual facilita la creacioacuten de juegos para Amstrad usando coacutedigo ensamblador o C
Presentando CPCteleraCPCtelera es un entorno de desarrollo integrado que premite
crear contenido y juegos para Amstrad CPC y que incluye
bull Una libreriacutea de bajo nivel con soporte para graacuteficos au-dio teclado firmware cadenas de caracteres tratamiento de hardware de viacutedeo y gestioacuten de memoria
bull Una Api para desarrollar juegos y software en C y ensam-blador
bull Herramientas para la creacioacuten de contenido (edicioacuten de nivel graacuteficos y audio)
bull Multiplataforma funciona con los sistemas Operativos Windows Ubuntu Debian Arch y Manjaro
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
AMSTRAD
AMstrAD CpC es una de esas re-liquias de 8 bits que siempre ocu-paraacute un sitio en nuestros corazones
ODROID MAGAZINE 6
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
Ejecutandosetupsh tras resolver las dependencias
AMSTRAD
Dispones de muchos ejemplos para aprender scanlines junto a la mejor nostalgia iexclprepaacuterate para trepar
A continuacioacuten tenemos que instalar las dependencias que faltan algunas de las cuales ya pueden estar instaladas
$ sudo apt-get install -y build-essential libboost-
dev flex bison
Luego activa el script de instalacioacuten ejecutando el archivo setup
$ sudo setupsh
Se te advertiraacute de los paquetes necesarios y prepararaacute tu sistema para ejecutar el motor En un ODROID-C1 la compi-lacioacuten suele tardar unos 20 minutos
Iniciando el MotorSi navegamos por los directorios podemos ver algunas
carpetas interesantes como docs que contiene el manu-al de referencia o tools que se utiliza para hacer sprites componer bandas sonoras convertidores de formatos y mucho maacutes Algunas de estas herramientas solo estaacuten dis-ponibles para Windows
Para crear un nuevo proyecto Bash escribe lo siguiente
$ cpct_mkproject [folder_project]
Navega por el directorio y veraacute dos subdirectorios
bull src con el coacutedigo fuente (la primera vez soacutelo tenemos un mainc) puede crear archivos y directorios de tu juego aquiacute
bull cfg contiene los paraacutemetros necesarios para compilar el juego a traveacutes del archivo build_configmk
Tambieacuten hay ejemplos que puedes analizar Simplemente ve al directorio ejecuta make y se crearaacuten automaacuteticamente los archivos CDT y DSK iexclIncreible iquestno
Platform ClimberCPCtelera incluye un completo juego de ejemplo llamado
Platform Climber En primer lugar necesitas un emulador de Amstrad CPC No he encontrado ninguno que estuviese pre-compilado para ODROID asiacute que tuve que descargar y com-pilar uno por miacute mismo No te preocupes es faacutecil
iexclAmstrad BAsiC es hora de desempolvar unos cuantos manuales
ODROID MAGAZINE 7
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
INDICEAMstrAD - 6
DEsArrOLLO AnDrOiD - 16
GEnErADOr DE rUiDO BLAnCO - 20
DiEt pi - 25
JUEGOs AnDrOiD nUBsrsquo ADvEntUrE- 9
kErnEL LinUx - 8
JUEGOs AnDrOiD kUnG fUry - 15
JAvA GpiO - 19
MUsiCA ODrOiD - 21
pOpCOrn tiME - 30
COnOCiEnDO A Un ODrOiDiAn - 32
JUEGOs LinUx MiLLEniUM - 10
Su desarrollador principal es Francisco Gallego (frangal-legobr) un ingeniero informaacutetico desarrollador de videojuegos y profesor de la Universidad de Alicante en Espantildea Si quieres profundizar en este entorno de trabajo puedes consultar los enlaces que aparecen al final de este artiacuteculo
Instalando CPCteleraEn primer lugar necesitas descargar el coacutedigo fuente para
compilarlo en tu placa Para ello descarga la versioacuten estable como lo hice yo o si eres atrevido puedes utilizar la uacuteltima versioacuten de GitHub
$ wget httpbitly1MMdUMA ampamp
unzip -nq $(basename $_) ampamp
rm $(basename $_) ampamp
cd cpctelera-11
or use the last commit
$ git clone httpbitly1IPxMOf ampamp
cd $(basename $_)
Para los que no lo sepan el Amstrad CPC era un ordena-dor de 8 bits que fue muy popular entre 1984 y 1990 CPCtelera es un motor que ha sido publicado reciente-
mente en su primera versioacuten estable la cual facilita la creacioacuten de juegos para Amstrad usando coacutedigo ensamblador o C
Presentando CPCteleraCPCtelera es un entorno de desarrollo integrado que premite
crear contenido y juegos para Amstrad CPC y que incluye
bull Una libreriacutea de bajo nivel con soporte para graacuteficos au-dio teclado firmware cadenas de caracteres tratamiento de hardware de viacutedeo y gestioacuten de memoria
bull Una Api para desarrollar juegos y software en C y ensam-blador
bull Herramientas para la creacioacuten de contenido (edicioacuten de nivel graacuteficos y audio)
bull Multiplataforma funciona con los sistemas Operativos Windows Ubuntu Debian Arch y Manjaro
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
AMSTRAD
AMstrAD CpC es una de esas re-liquias de 8 bits que siempre ocu-paraacute un sitio en nuestros corazones
ODROID MAGAZINE 6
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
Ejecutandosetupsh tras resolver las dependencias
AMSTRAD
Dispones de muchos ejemplos para aprender scanlines junto a la mejor nostalgia iexclprepaacuterate para trepar
A continuacioacuten tenemos que instalar las dependencias que faltan algunas de las cuales ya pueden estar instaladas
$ sudo apt-get install -y build-essential libboost-
dev flex bison
Luego activa el script de instalacioacuten ejecutando el archivo setup
$ sudo setupsh
Se te advertiraacute de los paquetes necesarios y prepararaacute tu sistema para ejecutar el motor En un ODROID-C1 la compi-lacioacuten suele tardar unos 20 minutos
Iniciando el MotorSi navegamos por los directorios podemos ver algunas
carpetas interesantes como docs que contiene el manu-al de referencia o tools que se utiliza para hacer sprites componer bandas sonoras convertidores de formatos y mucho maacutes Algunas de estas herramientas solo estaacuten dis-ponibles para Windows
Para crear un nuevo proyecto Bash escribe lo siguiente
$ cpct_mkproject [folder_project]
Navega por el directorio y veraacute dos subdirectorios
bull src con el coacutedigo fuente (la primera vez soacutelo tenemos un mainc) puede crear archivos y directorios de tu juego aquiacute
bull cfg contiene los paraacutemetros necesarios para compilar el juego a traveacutes del archivo build_configmk
Tambieacuten hay ejemplos que puedes analizar Simplemente ve al directorio ejecuta make y se crearaacuten automaacuteticamente los archivos CDT y DSK iexclIncreible iquestno
Platform ClimberCPCtelera incluye un completo juego de ejemplo llamado
Platform Climber En primer lugar necesitas un emulador de Amstrad CPC No he encontrado ninguno que estuviese pre-compilado para ODROID asiacute que tuve que descargar y com-pilar uno por miacute mismo No te preocupes es faacutecil
iexclAmstrad BAsiC es hora de desempolvar unos cuantos manuales
ODROID MAGAZINE 7
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Su desarrollador principal es Francisco Gallego (frangal-legobr) un ingeniero informaacutetico desarrollador de videojuegos y profesor de la Universidad de Alicante en Espantildea Si quieres profundizar en este entorno de trabajo puedes consultar los enlaces que aparecen al final de este artiacuteculo
Instalando CPCteleraEn primer lugar necesitas descargar el coacutedigo fuente para
compilarlo en tu placa Para ello descarga la versioacuten estable como lo hice yo o si eres atrevido puedes utilizar la uacuteltima versioacuten de GitHub
$ wget httpbitly1MMdUMA ampamp
unzip -nq $(basename $_) ampamp
rm $(basename $_) ampamp
cd cpctelera-11
or use the last commit
$ git clone httpbitly1IPxMOf ampamp
cd $(basename $_)
Para los que no lo sepan el Amstrad CPC era un ordena-dor de 8 bits que fue muy popular entre 1984 y 1990 CPCtelera es un motor que ha sido publicado reciente-
mente en su primera versioacuten estable la cual facilita la creacioacuten de juegos para Amstrad usando coacutedigo ensamblador o C
Presentando CPCteleraCPCtelera es un entorno de desarrollo integrado que premite
crear contenido y juegos para Amstrad CPC y que incluye
bull Una libreriacutea de bajo nivel con soporte para graacuteficos au-dio teclado firmware cadenas de caracteres tratamiento de hardware de viacutedeo y gestioacuten de memoria
bull Una Api para desarrollar juegos y software en C y ensam-blador
bull Herramientas para la creacioacuten de contenido (edicioacuten de nivel graacuteficos y audio)
bull Multiplataforma funciona con los sistemas Operativos Windows Ubuntu Debian Arch y Manjaro
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
AMSTRAD
AMstrAD CpC es una de esas re-liquias de 8 bits que siempre ocu-paraacute un sitio en nuestros corazones
ODROID MAGAZINE 6
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
Ejecutandosetupsh tras resolver las dependencias
AMSTRAD
Dispones de muchos ejemplos para aprender scanlines junto a la mejor nostalgia iexclprepaacuterate para trepar
A continuacioacuten tenemos que instalar las dependencias que faltan algunas de las cuales ya pueden estar instaladas
$ sudo apt-get install -y build-essential libboost-
dev flex bison
Luego activa el script de instalacioacuten ejecutando el archivo setup
$ sudo setupsh
Se te advertiraacute de los paquetes necesarios y prepararaacute tu sistema para ejecutar el motor En un ODROID-C1 la compi-lacioacuten suele tardar unos 20 minutos
Iniciando el MotorSi navegamos por los directorios podemos ver algunas
carpetas interesantes como docs que contiene el manu-al de referencia o tools que se utiliza para hacer sprites componer bandas sonoras convertidores de formatos y mucho maacutes Algunas de estas herramientas solo estaacuten dis-ponibles para Windows
Para crear un nuevo proyecto Bash escribe lo siguiente
$ cpct_mkproject [folder_project]
Navega por el directorio y veraacute dos subdirectorios
bull src con el coacutedigo fuente (la primera vez soacutelo tenemos un mainc) puede crear archivos y directorios de tu juego aquiacute
bull cfg contiene los paraacutemetros necesarios para compilar el juego a traveacutes del archivo build_configmk
Tambieacuten hay ejemplos que puedes analizar Simplemente ve al directorio ejecuta make y se crearaacuten automaacuteticamente los archivos CDT y DSK iexclIncreible iquestno
Platform ClimberCPCtelera incluye un completo juego de ejemplo llamado
Platform Climber En primer lugar necesitas un emulador de Amstrad CPC No he encontrado ninguno que estuviese pre-compilado para ODROID asiacute que tuve que descargar y com-pilar uno por miacute mismo No te preocupes es faacutecil
iexclAmstrad BAsiC es hora de desempolvar unos cuantos manuales
ODROID MAGAZINE 7
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
DESARROLLAR vIDEOjuEGOS pARA AMSTRAD CpCDISfRuTA DE ESTE pEQuENtildeO vIAjE AL pASADOpor Jose Cerrejon
Ejecutandosetupsh tras resolver las dependencias
AMSTRAD
Dispones de muchos ejemplos para aprender scanlines junto a la mejor nostalgia iexclprepaacuterate para trepar
A continuacioacuten tenemos que instalar las dependencias que faltan algunas de las cuales ya pueden estar instaladas
$ sudo apt-get install -y build-essential libboost-
dev flex bison
Luego activa el script de instalacioacuten ejecutando el archivo setup
$ sudo setupsh
Se te advertiraacute de los paquetes necesarios y prepararaacute tu sistema para ejecutar el motor En un ODROID-C1 la compi-lacioacuten suele tardar unos 20 minutos
Iniciando el MotorSi navegamos por los directorios podemos ver algunas
carpetas interesantes como docs que contiene el manu-al de referencia o tools que se utiliza para hacer sprites componer bandas sonoras convertidores de formatos y mucho maacutes Algunas de estas herramientas solo estaacuten dis-ponibles para Windows
Para crear un nuevo proyecto Bash escribe lo siguiente
$ cpct_mkproject [folder_project]
Navega por el directorio y veraacute dos subdirectorios
bull src con el coacutedigo fuente (la primera vez soacutelo tenemos un mainc) puede crear archivos y directorios de tu juego aquiacute
bull cfg contiene los paraacutemetros necesarios para compilar el juego a traveacutes del archivo build_configmk
Tambieacuten hay ejemplos que puedes analizar Simplemente ve al directorio ejecuta make y se crearaacuten automaacuteticamente los archivos CDT y DSK iexclIncreible iquestno
Platform ClimberCPCtelera incluye un completo juego de ejemplo llamado
Platform Climber En primer lugar necesitas un emulador de Amstrad CPC No he encontrado ninguno que estuviese pre-compilado para ODROID asiacute que tuve que descargar y com-pilar uno por miacute mismo No te preocupes es faacutecil
iexclAmstrad BAsiC es hora de desempolvar unos cuantos manuales
ODROID MAGAZINE 7
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
$ wget httpbitly1U2RrjZ
$ unzip caprice
$ make -f makefileunix
RELEASE=TRUE
En un minuto conseguiraacutes un bi-nario llamado cap32 El uso es muy sencillo utilizando cualquier archivo BAS o DSK Para cargar el juego Platform Climber ejecuta el emulador seguido de la ruta del archivo DSK
$ cap32 cpctelera-11
examplesgamesplatformClimber
pclimberdsk
iexclAhora ya estaacute dentro de AM-STRAD iquestSientes la magia Escribe cat para ver los archivos del disco montado previamente Luego ejecuta el juego
cat
runrdquogame_nameextension
Observa que las comillas no se cier-ran Por ejemplo para ejecutar Plat-form Climber escribe lo siguiente
runrdquopclimberbin
ConclusioacutenAhora es tu turno Te recomiendo
que empieces a estudiar los ejemplos de exampleseasysrc luego modifiacute-calos y compiacutelalos Debajo tienes un enlace al manual de referencia con toda la informacioacuten que necesitas so-bre funciones y meacutetodos disponibles Si sabes algo de SDL todo te seraacute un poco maacutes faacutecil
iexclFeliz codificacioacuten
Maacutes Referenciashttpbitly1IPxMOf
httpbitly1IpjQvV
httpbitly1FMAkrQ
httpbitly1IILeAT
AMSTRAD KERNEL LINUX
Para hacer que la compilacioacuten del kernel Linux sea maacutes sencilla he escrito un conjunto de scripts
BASH que permiten descargar la uacuteltima versioacuten de cualquier kernel almacenado en la seccioacuten GitHub de Hardkernel compilar el coacutedigo fuente y empaquetar el kernel terminado en un paquete que pueda distribuirse Los scripts guardan el kernel original en la maacutequina de com-pilacioacuten de forma que el kernel para un dispositivo ODROID se puede compi-lar en un ODROID distinto
El paquete resultante incluye un script de instalacioacuten de un solo clic pu-ede ser compartido con otros instalarlo en cualquier ODROID compatible o antildeadirlo a un repositorio para su distri-bucioacuten viacutea apt-get Los scripts dan indi-caciones a lo largo del proceso lo cual es ideal para usuarios que no tienen ex-periencia en la compilacioacuten de kernels
Informacioacuten generalLos scripts se encuentran en http
bitly1U6kQcU y se puenden descargar usando wget desde la liacutenea de comandos o desde cu-alquier navegador web Descomprime el paquete tras navegar a la carpeta de descargas
$ wget
httpbitly1U6kQcU
$ tar -xvzf buildtgz
La carpeta ldquobuildrdquo resultante contiene los siguientes scripts
downloadsh es usado para descargar una seccioacuten concreta del repositorio de Hardkernel
buildsh se utiliza para poner en mar-cha el proceso de compilacioacuten del kernel
installsh se copia en el paquete de instalacioacuten del kernel resultante para poder instalar el kernel en cualquier dis-positivo ODROID
Script DownloadEl script ldquodownloadshrdquo se puede
utilizar para descargar cualquier moacutedu-lo disponible del repositorio GitHub de Hardkernel especificaacutendolo como primer argumento Por ejemplo para descargar la versioacuten maacutes reciente de la seccioacuten ODROID-310y navega a la carpeta ldquobuildrdquo y escribe lo siguiente
$ sh downloadsh odroidc-310y
Para obtener una lista completa de todas las secciones visita httpbit
ly1NvVQa1 y abre el menuacute desplegable ldquobranchrdquo como muestra la imagen
Tras completarse el script download los archivos ldquodownloadshrdquo y ldquoinstallshrdquo se copiaraacuten automaacuteticamente al directo-
SCRIpTS pARA EL KERnEL DE LInux RETOCA Tu SISTEMApor rob roy
El lugar donde obtener el kernel maacutes actualizado es el menuacute desplegable de la seccioacuten correspondiente dentro del repositorio GitHub de Hardkernel
ODROID MAGAZINE 8
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
KERNEL LINUX
rio de la seccioacuten descargada Ahora pasa-mos al siguiente paso
Script BuildUna vez descargado la seccioacuten ve al
directorio en cuestioacuten y busca el archivo en el directorio archarmconfigs cor-respondiente a la plataforma ODROID que utilizaraacute el kernel
$ cd odroidc-310y
$ ls archarmconfigsodroid
Por ejemplo si seleccionas la sec-cioacuten odroid-310y los archivos de configuracioacuten estaacuten disponibles para usarse con ODROID-Q ODROID-Q2 ODROID-X ODROID-X2 y ODROID-U2 como muestra la imagen anterior Otras secciones pueden incluir archivos de configuracioacuten para otros dis-positivos ODROID tales como el XU y XU3 Si compilas un kernel para el ODROID-U2U3 usando odroid-310y el archivo de configuracioacuten de destino deberiacutea ser odroidu2_ubuntu_mali_ def-config que es incluido como argumento principal en el script ldquobuildshrdquo Cualquier cambio en el archivo de configuracioacuten se debe hacer antes de lanzar el script build Yo prefiero editar el archivo con un edi-tor de texto pero tambieacuten se puede usar ldquomake menuconfigrdquo
El siguiente comando inicia el pro-ceso de compilacioacuten usando el archivo de configuracioacuten seleccionado Requi-ere privilegios de superusuario ya que necesita tener acceso a ciertos directorios del sistema para poder empaquetar los archivos del kernel Aseguacuterate de reem-plazar el nombre del archivo de configu-racioacuten de destino por el argumento
$ sudo sh
buildsh
odroidc_ubun-
tu_mali_def-
config
La compilacioacuten puede tardar de 10 a 30 minutos el resultado es una es-tructura de carpeta con los recursos de instalacioacuten del ker-nel Esta estructura
estaacute incluida en una subcarpeta bajo la nueva ldquoversioacutenrdquo usando el nombre del archivo de configuracioacuten El proceso de compilacioacuten no instala el kernel en lo-cal sino que crea un paquete portaacutetil que despueacutes se puede ejecutar en el disposi-tivo ODROID que elijas
Para instalar el kernel en un equipo copia la nueva estructura de directorios al ODROID Luego ve al subdirectorio que lleva el nombre del archivo de con-figuracioacuten seleccionado En este ejemplo el script de instalacioacuten se puede ejecutar escribiendo los siguientes comandos
$ cd release
odroidc_ubuntu_mali_defconfig
$ sudo sh installsh
Este proceso puede tardar de 3 a 10 minutos tras lo cual el nuevo kernel es-taraacute listo Reinicia el equipo para usar el kernel actualizado Una backup del ker-nel original se guarda tal y como se indica en el resultado del script de instalacioacuten de modo que la actualizacioacuten del kernel se puede invertir si fuera necesario
Si tiene preguntas comentarios o su-gerencias sobre los scripts por favor crea un nuevo hilo en los foros ODROID en httpforumodroidcom
Divisionesodroid-30y Q U2 U3 X X2odroid-38y U2 U3 X X2odroid-313y XUodroidx-310y C1 C1+odroidw-312y Wodroidxu3-310y XU3odroidxu-34y XUodroidxu4-v42-rc1 XU3 XU4
selecciona tus archivos de configuracioacuten para la mejor compilacioacuten
LINUX GAMINGJUEGOS ANDROID
nubSrsquo ADvEnTuREDESAfIAnTE juEGO DE pLATAfORMAS 2Dpor Bruno Doiche
Lo que no echamos en fal-ta en ODROID
Magazine son los juegos de plataformas en 2D con los que disfrutamos bastante Despueacutes de todo emulamos todo tipo de consolas de 8 y 16 bits Pero a menu-do me pongo con una distro Android en mi U3 conectado a mi lapdock en busca de una nueva experiencia Y para mi agrado me las ingenieacute para dar con Nubsrsquo Adventure un juego de platafor-mas muy ameno que me trasladoacute a in-creiacutebles mundos de la mejor versioacuten de lsquoMetroidvaniarsquo Gran disentildeo de niveles jefes desafiantes y excelentes puzles para mantenerte con ganas de jugar maacutes de lo que esperas inicialmente iexclDisfruta
httpsplaygooglecomstore
appsdetailsid=nubsadventure
ODROID MAGAZINE 9
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
laxia Echelon asiacute como ayudarles a pros-perar hasta que sean lo suficientemente fuertes como para defenderse de los Mi-croids y por lo tanto salvar la galaxia Esto ademaacutes te interesa no soacutelo porque no quieres que ataquen nuestra galaxia sino porque en el momento en que em-piezas en la galaxia Echelon 10000 antildeos atraacutes en el pasado la tecnologiacutea necesaria para traerte de vuelta ya no existe ya que fue creada por las cuatro especies que se supone que vas ayudas a desarrollar Asiacute que lo que tienes que hacer es volver a tu propia eacutepoca y galaxia para ayudar a desarrollar las cuatro especies hasta que sean capaces de construir las partes que faltan de tu nave y ayudarles a defen-derse de los Microids
El juego tiene aspectos muy buenos como el uso de voz a traveacutes de tu orde-nador y AI Agnis diferentes escenas de peliacutecula accioacuten de combate espacial y mucho maacutes Por lo que yo seacute este juego no es muy conocido realmente es muy inusual por su estilo uacutenico y jugabilidad Definitivamente vale la pena probarlo y sin duda deberiacuteas darle una oportunidad
Instalacioacuten y puesta en marcha
Dado que eacuteste es un juego para DOS y no estaacute hecho para Linux no puedes simplemente descargarlo y ejecutarlo Useacute DOSBox para iniciar el juego y con-figureacute algunas opciones para que fun-
Quisiera presentar algunos de mis juegos favoritos que probable-mente no todo el mundo conoz-
ca pero que son muy interesantes y di-vertidos Espero que disfruteacuteis con los que elegido y os animo a que probeacuteis y jugueacuteis a algunos de los juegos maacutes raros e inusuales de la historia de los juegos
Millennia ndash Altered Destinies
Este juego es muy singular Eres el pi-loto de un carguero en su viaje de 6 me-ses a la Tierra desde Juacutepiter Al tiempo que te das cuenta de que podriacutea ser una mala idea hablar en voz alta en tu primer diacutea de viaje eres de repente ldquosecuestra-dordquo por una especie alieniacutegena Te expli-can que estaacutes en una especie de estasis temporal y que son una especie llamada Hood Son guardianes del tiempo que necesitan tu ayuda en su eacutepoca y galaxia
Una galaxia llamada Echelon que estaacute actualmente invadida por una especie llamada Microids Esta especie es muy agresiva y la galaxia de los guardianes de tiempo estaacute a punto de ser invadida y la proacutexima seraacute ldquonuestrardquo galaxia es por eso que se supone que debemos solucionar este conflicto Te ofrecen una nueva nave espacial que no soacutelo puede viajar en el es-pacio sino tambieacuten en el tiempo y eres enviado de vuelta a 10000 antildeos atraacutes a la galaxia Echelon donde el sistema este-lar soacutelo estaacute ocupado por Microids
El objetivo es establecer las cuatro especies originales que vivieron en la ga-
juEGOSLInux LAS jOyAS DE LOS juEGOS RAROS pARTE 1por tobias schaaf
JUEGOS LINUX
cionase correctamente En primer lugar necesitas el CD o un rip del mismo aunque te aconsejo utilizar la versioacuten del CD para una mejor experiencia
Aquiacute tienes una pequentildea guiacutea de coacutemo instalar e iniciar el juego basada en mi imagen ODROID GameStation Tur-bo aunque deberiacutea funcionar con la im-agen de Ubuntu de HardKernel si tienes activadas mis listas de paquetes alltest-ing y allmain Escribe lo siguiente para instalar los requisitos para DOSBox
$ sudo apt-get install dosbox-
odroid libgl-odroid
Configurar DOSBoxInicia DOSBox para crear el archivo
de configuracioacuten por defecto luego salte de inmediato Abre homeodroiddosboxdosbox-SVNconf con un editor de texto y cambia las siguientes liacuteneas
[sdl]
fullscreen=true
fullresolution=1920x1080
output=opengl
[render]
frameskip=3
[cpu]
core=dynamic
cputype=pentium_slow
cycles=5000
Esta es la versioacuten orginal en CD-rOM de Millenia - Altered Destinies
ODROID MAGAZINE 10
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
lo cual te ayudaraacute a entenderlo mejorTienes que utilizar las capacidades de
tu nave para viajar en el tiempo y en el espacio y asiacute poder solucionar los pro-blemas de las cuatro especies que debes proteger y ayudarles a evolucionar ha-cia una civilizacioacuten avanzada que pueda ayudarte a salir de la galaxia asiacute como defenderse de los Microids Para ello tienes que entender y controlar tu nave para completar todas las tareas que tienes por delante
La naveDentro de tu nave puedes ver Agnis
el ordenador de la nave y IA que te ayudara en tu tarea Actuacutea de traductor cuando hablas con las diferentes espe-cies Puede darte consejos y hacer co-mentarios sobre tus acciones De hecho su ldquoyo estoy a tu servicio humanordquo fue el sonido de inicio de mi maacutequina Win-dows durante mucho tiempo
La mayoriacutea de las pantallas de la nave se asemejan Tienes un panel de nave-gacioacuten en el lado izquierdo que se pue-de controlar pulsando y manteniendo el botoacuten derecho del ratoacuten y movieacutendote sobre los diferentes botones Un clic con el botoacuten izquierdo selecciona el sistema que quieres visitar una especie de ascen-sor que llega a tu cabina te lleva a la es-tacioacuten seleccionada A la derecha tienes los botones de accioacuten de su estacioacuten ac-tual Simplemente mueve el ratoacuten hacia el botoacuten deseado y pulsa el botoacuten izqui-erdo del ratoacuten para activar la accioacuten
En la vista principal puedes ver in-formacioacuten sobre el planeta actual que estaacute visitando El nombre del planeta y el
JUEGOS LINUX
antildeo se muestra sobre la cruz del escaacutener En el lado derecho puedes encontrar in-formacioacuten sobre el planeta y sus habitan-tes Aquiacute podemos ver la especie (Rap-toids) su calificacioacuten IQ actual (80) y un siacutembolo del evento actual (war) En la parte superior de la pantalla vemos de nuevo un pequentildeo panel de informacioacuten con el nombre del planeta la especie y un reloj El antildeo 1600 es el siglo actual y el siacutembolo 11713 es en realidad un reloj del tiempo de juego que tiene un for-mato muy extrantildeo Cuenta en segundos pero llega a 100 antes de que el nuacutemero anterior a los decimales cambie
La vista principal soacutelo permite iniciar un viaje al siguiente siglo o a un lugar diferente en la galaxia Soacutelo puedes ini-ciar los motores desde esta pantalla Otra cosa que soacutelo puedes hacer desde la pan-talla principal es el combate espacial De vez en cuando tienes que defenderte y defender a los habitantes del planeta frente a los enemigos invasores Dado que este juego gira en torno al tiempo esto en alguacuten momento puede llegar a ser algo confuso ya que en realidad po-driacuteas terminar luchando contra tu otro yo en una liacutenea temporal diferente pero tambieacuten podriacuteas luchar contra Microids que tratan de invadir el espacio donde se asienta tu raza Los Hoods a menudo tratan de atacar la raza que creaste desde una liacutenea de tiempo diferente y una de las otras razas incluso podriacutea tratar de invadir el planeta mientras trata de ex-pandir su territorio Por eso tu nave estaacute equipada con algunas armas e incluso se puede modificar con algunos de los in-ventos que obtienes a partir de las razas que has creado
vista principal de tu nave espacial des-de donde comienzas tu trabajo
figura 2 - Luchando contra tu otro yo en Milenios
cycleup=200
cycledown=200
En primer lugar he creado una car-peta donde quiero colocar mis juegos
$ mkdir DOS
Tambieacuten he copiado la ISO que he creado desde mi juego Millennia ndash Al-tered Destinies y la coloqueacute en una carpeta llamada CDs en mi ODROID Para facilitar las cosas he antildeadido las siguientes liacuteneas al final del archivo de configuracioacuten de DOSBox asiacute no necesito escribirlas cada vez que quiera ejecutar el juego
[autoexec]
mount c homeodroidDOS
c
imgmount d homeodroidCDs
Miliso -t iso
Ahora el sistema estaacute preparado para lanzar el emulador La carpeta DOS se monta automaacuteticamente como mi uni-dad C y el CD seraacute montado como D como una unidad de CD-ROM In-stala el juego como siempre bajo DOS e iniciarlo La introduccioacuten puede ser un poco lenta pero en general con los ajustes mencionados deberiacuteas ser capaz de ejecutar el juego a toda velocidad
Para ejecutar el juego lanza DOS-Box de nuevo con el siguiente comando para que DOSbox utilice glshim (libglo-droid) y asiacute poder activar la aceleracioacuten OpenGL
$ LD_LIBRARY_PATH=usrlocallib
dosbox
Los inicios del juegoTras la introduccioacuten te encontraraacutes
en una galaxia muy muy lejana (te suena familiar iquestno) El juego no viene con un tutorial lo que significa que tendraacutes mucha accioacuten sin saber lo que debes o puedes hacer Por eso voy a intentar ex-plicarte las cuestiones baacutesicas del juego
ODROID MAGAZINE 11
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
gran plan Sabe que puedes alterar los acontecimientos en el tiempo y es por ello que puede ver lo que sucederaacute en el futuro Auacuten asiacute el Agent es parte de la raza que estaacutes desarrollando y tendraacute creencias y necesidades similares lo que los hace a veces difiacutecil de tratar y cada uno requiere de una forma de persuasioacuten distinta
Si haces clic en el botoacuten que mira ha-cia el oeste en la barra de navegacioacuten su-perior te llevaraacute al centro de comunica-ciones Aquiacute puedes ponerse en contacto con tus agentes e intentar solventar sus problemas Agnis te ayudaraacute a traducir lo que tus agentes te esteacuten diciendo Pue-des ver las pequentildeas peliacuteculas de viacutedeo de los agentes cuando hablan contigo haciendo que parezca una transmisioacuten de viacutedeo Con la ayuda de Agnis inten-tas resolver sus problemas Esto incluye temas como la poliacutetica donde tienes que elegir quieacuten debe ser el liacuteder de una raza planificar asesinatos de liacutederes rebeldes con el fin de evitar levantamientos o de-cidir si ayudas a los rebeldes con el fin de matar a un emperador tirano
Por otro lado tambieacuten tienes que dar consejos sobre coacutemo protegerse ante un duro invierno coacutemo evitar que to-men decisiones equivocadas que lue-go puedan conducirles a cataacutestrofes o
antildeos atraacutes en el pasado soacutelo existe un planeta habitado con Microids ninguacuten otro con otra especie Tienes que elegir un planeta en el que quieres desarrollar las cuatro razas diferentes Cada una re-quiere de un haacutebitat distinto
Desde aquiacute puedes fijar una ruta a traveacutes del espacio y el tiempo con el fin de ayudar a las especies en su desar-rollo Sugerencia Viajar en el tiempo y el espacio consume combustible y soacutelo pue-des recargar combustible en los gi-
gantes gaseosos Por lo que es buena idea que crees tu raza en un planeta que se encuentre cerca de un gigante gaseoso Hay un botoacuten que activa o desactiva los planetas que no tienen gigantes gaseosos
En la esquina inferior derecha de esta pantalla puedes ver el botoacuten del histo-grama tu mejor amigo En el histograma ves todos los eventos que tienen lugar y cada paso representa 100 antildeos de desar-rollo Los nuevos inventos estaacuten marca-dos con un borde verde los bordes rojos indica crisis
Aquiacute es donde el juego se complica Tienes que ayudar a la raza a pasar las crisis o incluso prevenir que las crisis lleguen a producirse A menudo hay diferentes soluciones a un problema con diferentes resultados y aquiacute es donde el juego tambieacuten se vuelve interesante
Tienes diferentes formas de interac-cioacuten para desarrollar una raza y la forma maacutes comuacuten es la de comunicarte con un representante de la especie Este repre-sentante es conocido como Agent que es un ser modificado de las especies que ayudas Soacutelo eacutel sabe de tu existencia y del
Para luchar contra los enemigos manteacuten pulsado el botoacuten derecho del ratoacuten y mueacutevelo en la direccioacuten que desees Un pequentildeo punto rojo indica la ubicacioacuten del enemigo maacutes cercano Pulsa el botoacuten izquierdo para disparar a tu enemigo
La lucha contra tu otro yo es bas-tante faacutecil y normalmente escapas tras un par de golpes El combate contra los otros enemigos es algo maacutes difiacutecil ya que a menudo son maacutes numerosos y mien-tras luchas contra uno otro puede venir por detraacutes y atacarte El panel de infor-macioacuten de color rojo en la parte superior se convierte en un ldquoespejo retrovisorrdquo que muestra los enemigos que te atacan por detraacutes Ademaacutes tu nave puede da-ntildearse y si la averiacutea es demasiado grande huiraacutes automaacuteticamente de la escena y te dirigiraacutes al centro del universo al uacutenico planeta donde no se puede crear ninguna especie Asiacute que en realidad nunca pu-edes morir
A la vista principal se puede llegar a traveacutes del botoacuten que apunta hacia el norte en la parte superior izquierda de la barra de navegacioacuten La navegacioacuten es probablemente el sistema maacutes impor-tante que tienes Si hace clic en el botoacuten
que mira hacia el este en el panel de navegacioacuten superior se puedes ir al mapa de la galaxia y al sistema de navegacioacuten
En el sistema de navegacioacuten recopi-las toda la informacioacuten que necesitas para planificar tu proacuteximo paso El mapa de galaxia te muestra lo que se ve en la galaxia y coacutemo se distribuyen las diferen-tes especies Puesto que empiezas 10000
Mapa de la galaxia del sistema de nave-gacioacuten no soacutelo para moverte en el espacio sino tambieacuten para viajar en el tiempo
El histograma que muestra todos los even-tos importantes del desarrollo de las razas es una herramienta muy importante
Dos de las diferentes especies con las que tienes que lidiar en el juego los in-sectos Entomon y los reptiles reptoides
JUEGOS LINUX
ODROID MAGAZINE 12
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
to de nuevos inventos que se remontan a cientos de antildeos por lo que se necesita menos tiempo para desarrollar la especie Esto puede ser crucial ya que cuando llegan a un IQ de 300 puedes darles los planos de las partes que le faltan a tu nave que tardariacutean miles de antildeos en construir Y tienen que hacerlo antes de que sean atacados por los Microids Por lo tanto acelerar el desarrollo es a menu-do crucial para alcanzar tus objetivos
Sugerencia Si un invento da a tu gente un IQ de 100 puede extraer el in-vento desde su liacutenea temporal y puedes volver a donde teniacutean un IQ de 80 y dar-les el invento unos cientos de antildeos antes para acelerar su desarrollo En ocasiones hablar no es suficiente para resolver un problema en un planeta y no puedes detener una disputa entre los diferentes liacutederes utilizando un simple invento Asiacute que de vez en cuando tienes que tomar medidas maacutes draacutesticas para que dejen de matarse entre ellos o simplemente para ver coacutemo estaacute la situacioacuten incluso si esto significa que tienes que bajar al planeta y volar un edificio con el liacuteder de un bando enemigo dentro Por ello cuentas con una pequentildea nave que es capaz de bajar a la superficie del planeta donde se puede atacar un edificio y hacerlo estallar con
Si tienes eacutexito una tormenta tem-poral sacudiraacute tu nave y la historia de la especie cambiaraacute Luego puedes volver al sistema de navegacioacuten y comprobar el histograma para ver coacutemo ha cambiado el desarrollo de la especie Sugerencia Dado que algunos cambios pueden te-ner consecuencias mil antildeos maacutes tarde lo mejor es guardar la partida antes de cada interaccioacuten con una especie y asiacute poder deshacer lo que has hecho
Otra forma de interactuar con la es-pecie es utilizar el transportador de tu nave Al igual que en Star Trek puedes utilizar el transportador para llevar ob-jetos a tu nave y devolverlos al planeta Se puede acceder al transportador con botoacuten que mira al sur en la barra de navegacioacuten superior izquierda
En primer lugar haz clic en el botoacuten
scan y veraacutes una animacioacuten de coacutemo el ordenador busca un templo Este templo interactuacutea contigo Los nuevos inventos son colocados alliacute para que puedas coger-los o si estaacute vaciacuteo puedes colocar uno
El transporte de inventos puede ser uacutetil de diferentes formas A veces un invento que pareciacutea ser una buena idea como son los perforadores soacutenicos para recursos mineros puede causar cataacutestro-fes maacutes adelante como terremotos Pero tambieacuten puede acelerar el descubrimien-
ayudarles a desarrollar nuevos inventos que les permitan defenderse de los ene-migos Hay muchos temas diferentes a los que necesitas hacer frente y esto es lo que realmente hace interesante al juego Las decisiones que tomes pueden tener pequentildeas repercusiones al principio pero tambieacuten pueden suponer un gran impacto mil antildeos despueacutes en el futuro
iquestDeberiacutea ser radicada una mutacioacuten antes de que contamine una sociedad ldquopurardquo deberiacutea ignorarse y posteri-ormente ser curada o esta mutacioacuten menor podriacutea ser vital en el futuro iquestDe-beriacuteas elegir un liacuteder fuerte un dictador que lleve a las personas a la guerra y a la dominacioacuten o deberiacuteas elegir un paci-fista que desee la paz y la cooperacioacuten con el resto iquestFrenara el dictador el creci-miento una vez que esteacute satisfecho y no veraacute lugar para maacutes cambios o la paz de mil antildeos con un pacifista daraacute como re-sultado una raza deacutebil que simplemente no quiera aventurarse en el espacio para conquistar nuevos mundos iquestCoacutemo pue-des prevenir una guerra entre dos razas iquestO deberiacuteas maacutes bien acelerar el desar-rollo aunque sea haciendo uso de ar-mamento militar iquestEs mejor combatir el cambio climaacutetico con grandes fuegos en todo el planeta que mantengan un cierto nivel de calor o esto contaminaraacute cons-tantemente el medio ambiente iquestO de-briacuteas hacer pequentildeos incendios y reunir a muchas gente en un mismo espacio a pesar de que esto podriacutea conducir a la escasez de alimentos el canibalismo o simplemente a la falsas creencias A veces incluso hay que resolver ciertos asuntos religiosos para que las especies vayan por la direccioacuten correcta
Hay muchas maacutes cosas que tienes que decidir pero tambieacuten tienes que hacer frente a las diferentes creencias y personalidades de tus agentes Algunos pueden ser de gran ayuda e intentan hacer lo que dices y otros necesitan que sean maacutes convincente con explicaciones loacutegicas realizando debates o usando sus propias creencias contra ellos A algunos incluso podriacuteas tratar de engantildear
primero entra en oacuterbita luego busca el templo
Asiacute es como transportar un invento a tu nave
Mira esto ahora tenemos arco y flechas
JUEGOS LINUX
ODROID MAGAZINE 13
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
partida continuamente y en diferen-tes ranuras en caso de que algo salga mal puedes volver atraacutes e intentarlo de nuevo Me he dado cuenta que lo mejor es sembrar una especie y cen-trarse en terminar su desarrollo antes de parar a la siguiente Aunque apa-rentemente podriacuteas ir maacutes raacutepido te-niendo varias especies a la vez soacutelo conseguiraacute viajar continuamente en el tiempo y el espacio intentando solu-cionar sus problemas Es mucho maacutes faacutecil centrarse en una sola especie ya que las especies son muy diferentes en cultura y te puede resultar muy difiacutecil intentar cambiar la forma de pensar de una mente paciacutefica que soacutelo piensa en la evolucioacuten de la especie en una raza guerrera que soacutelo se nutre de los con-tinuos conflictos y del peligro de llegar a extinguirse
Trata de identificarte con las cre-encias de una especie Una especie agresiva podriacutea no seguir tus oacuterdenes si le pides de forma agradable que haga lo que tuacute quieres pero si los amenazas con matarlos a todos si no te obede-cen podriacutean convencerlos Con una especie maacutes bien religiosa puede que tengas que pensar en coacutemo orientar sus creencias para alcanzar tus metas o simplemente recordaacutendoles por queacute
el botoacuten que apunta hacia el norte en el panel inferior del lado izquierdo Viajar en el tiempo y el espacio con-sume combustible y hay que recargar en un gigante gaseoso Para ello debes sobrevolar el gigante gaseoso y reco-ger el combustible El combustible no solo se utiliza para viajar en el tiempo y el espacio sino tambieacuten para reparar la nave si es dantildeada en combate Hay diferentes tamantildeos de gigantes gaseo-sos que permiten recoger diferentes cantidades de combustible cuando se sobrevuelan Incluso podriacuteas exceder la capacidad maacutexima de combustible que puedes llevar pudiendo dantildear la nave si recoger maacutes de lo que puedes car-gar Ademaacutes volar cerca de un gigante gaseoso dantildea tus escudos de calor y en funcioacuten del tamantildeo del gigante gas-eoso esto seraacute maacutes o menos peligroso
Sugerencia Es muy praacutectico es-tablecer tu especie en un planeta que tenga su propio gigante gaseoso En el mapa de galaxia puede elegir ver uacuteni-camente los planetas que tienen gigan-tes gaseosos De esta forma no tiene que volar a otro sistema cuando tengas que reabastecerte o reparar tu nave
Consejo estrateacutegicoLo maacutes importante es guardar la
las armas que incorpora Esto puede ser necesario para matar
a un liacuteder enemigo que es inalcanzable para tu agente o matar al agresor de una especie diferente que vive en el planeta y amenaza con matar a tu
gente A veces incluso es necesario tan-tear el terreno para que tu agente real-mente haga lo que le pides
Sugerencia Atacar el planeta con la nave es poco comuacuten Si atacas cual-quier edificio sin ldquoser necesariordquo corres el riesgo de matar a toda la especie no importa lo insignificante que sea el edi-ficio Al instante sabraacutes si atacar el pla-neta es lo que hay que hacer o si tienes que buscar una solucioacuten diferente La nave se pone en marcha desde el botoacuten de enfrente que mira hacia el este en el panel inferior izquierda de la nave
El uacuteltimo sistema de tu nave es la estacioacuten de recarga y reparacioacuten de da-ntildeos a la que se puede llegar utilizando
El descenso de la nave a la superficie del planeta es uno de los videos del juego y va cambiando dependiendo del planeta que visitas
Una tarea muy importante es recargar tu nave en un gigante gaseoso el liacutequido burbu-jeante representa la cantidad de combustible de tus tanques
JUEGOS LINUX
ODROID MAGAZINE 14
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
los enviaste a ese planetaSi es posible extrae inventos y colocarlos al inicio de la
liacutenea temporal para que las especies se desarrollen maacutes raacute-pido Mueve un puntildeado de inventos uno o dos siglos antes cada vez que gestiones mil antildeos de desarrollo que podriacutea ser los mil antildeos que necesitas para terminar el dispositivo que te permita salir de la galaxia antes de que los Microids intenten atacar la especie
Echa un vistazo a todos los eventos del histograma ya que no todos los eventos o inventos pueden ser importantes o tiene alguna influencia pero maacutes tarde puede causar se-rios problemas Intenta sembrar las diferentes especies tan alejadas como te sea posible de los Microids pero tambieacuten alejadas entre ellas Una especie podriacutea desarrollar naves es-paciales antes que otra raza y cuando empiecen a expandir su territorio podriacutean atacar a las especies que actualmente estaacuten en desarrollo y te veraacutes obligado a luchar contra tu propia creacioacuten Por lo tanto aseguacuterate de que no se ldquoen-cuentrenrdquo unos a otros demasiado pronto
ConclusionMe gusta mucho este juego y ha sido uno de mis favori-
tos desde siempre aunque no es muy conocido y es por eso que lo considero una joya de los juegos raros El juego es fascinante tienes que asimilar decisiones poliacuteticas asiacute como hacer frente a creencias religiosas y otros aspectos de una sociedad Las diferentes especies son uacutenicas y el modo con el que trabajes con una especie puede no funcionar con otra El juego es rico en variedad a menudo me absorbe durante horas tratando de conseguir que una determinada especie esteacute justamente donde yo quiero
Las escenas de viacutedeo son muy buenas para su eacutepoca y siento un poco de pena por la persona que teniacutea que llevar el vestuario de cada una de las especies pero asiacute realmente lo incluiacutea la configuracioacuten Si no has jugado a este juego to-daviacutea deberiacuteas dedicarle algo de tiempo y si ya has jugado iquestPor queacute no echas otra partida con ayuda de tu ODROID en la gigante TV de tu saloacuten
iexclCuando completes est juego echaraacutes de menos tanto tu nave que empezaraacutes a jugar de nuevo
JUEGOS LINUX
KunG fuRy STREET RAGE LA pEOR pELICuLA jAMAS HECHA En yOuTubE ES AHORA EL pEOR juEGO jAMAS CREADOpor Bruno Doiche
Si consiguieras enca-llar en una isla sin tu ODROID y sin acceso
a Youtube podriacuteas haberte perdido el fenoacutemeno basura que fue Kung Fury Si todaviacutea no sabes de lo que estoy hablando ve a httpswwwyoutube
comwatchv=bS5P_LAqiVg Espera a ver y continua leyendo iexclLo seacute Impresionante iquestverdad Imagiacutenate si hubiese un juego de esta peliacutecula iexclBueno aquiacute estaacute Ve a por eacutel
httpsplaygooglecomstoreappsdetailsid=se
hellotherekungfurygameamphl=en
JUEGOS ANDROID
ODROID MAGAZINE 15
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Como programadores y desarrolla-dores generalmente usamos dife-rentes herramientas para crear
aplicaciones y no es muy distinto con Android Necesitamos herramientas que nos permitan acelerar el coacutedigo la depu-racioacuten y las pruebas iexclal tiempo que no nos volvamos locos con la depuracioacuten Desde comienzos de antildeo he cambiado a Android Studio para continuar desa-rrollando con Android ya que Google ha dejado de mantener ADT (Android De-velopment Toolkit) para Eclipse ADT era un plugin para Eclipse aportado por Google para desarrolladores como lo era el IDE de facto (Entorno de Desarrollo Interactivo) para el desarrollo de Java Ahora cualquier persona que quiera de-sarrollar en Android tendraacute que utilizar Studio como herramienta principal
Al igual que cualquier otro software Estudio a veces contiene errores que se van depurando en versiones posteriores Puesto que es un proyecto de coacutedigo a-bierto los desarrolladores no tienen que esperar mucho tiempo para la siguiente versioacuten ya que tan pronto como se agregan parches o nuevas caracteriacutesticas al repositorio de coacutedigo fuente simple-mente tenemos que descargarlo y com-pilarlo en local para empezar a usarlo En este artiacuteculo voy a explicar el pro-ceso de compilacioacuten de Estudio desde el coacutedigo fuente bajo Linux y asiacute podraacutes utilizarlo como tu IDE diario Para ello voy a usar Ubuntu 1404 de 64 bits sin embargo se puede utilizar cualquier distribucioacuten de Linux o Mac OS
Requisitos previosNecesitas tener instalado JDK de O-
DESARROLLO AnDROID COMpILAnDO AnDROID STuDIOpor nanik tolaram
DESARROLLO ANDROID
racle que puedes descargar desde httpbitly196ebsY Utiliza el siguiente co-mando para crear los enlaces simboacutelicos correspondientes que apunten a java javac y otras herramientas para la cor-recta ubicacioacuten de JDK
$ sudo update-alternatives --in-
stall ldquousrbinjavardquo ldquojavardquo
ldquohomenanikDownloads
jdk170_79binjavardquo 1071
$ sudo update-alternatives
--install ldquousrbinjavacrdquo
ldquojavacrdquo
ldquohomenanikDownloads
jdk170_79binjavacrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavawsrdquo
ldquojavawsrdquo
ldquohomenanikDownloads
jdk170_79binjavawsrdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavaprdquo
ldquojavaprdquo
ldquohomenanikDownloads
jdk170_79binjavaprdquo 1071
$ sudo update-alternatives
--install ldquousrbinjavadocrdquo
ldquojavadocrdquo
ldquohomenanikDownloads
jdk170_79binjavadocrdquo 1071
Tambieacuten debes instalar las siguientes herramientas Tras la descarga extrae el Apache Ant y colocarlo en cualquier car-peta local
bull gitbull Apache Ant (descargado desde
antapacheorg)
Verificar la fuenteEl coacutedigo fuente de Studio se en-
cuentra alojado en el mismo lugar que el coacutedigo de Android en httpbitly1GWeQwC El paso para la verifi-cacioacuten del coacutedigo es el mismo que An-droid usando la herramienta repo que se puede descargar usando el comando
$ curl httpsstorage
googleapiscomgit-repo-
downloadsrepo gt
~binrepo
$ chmod 777 ~binrepo
A continuacioacuten utiliza los siguientes comandos para verificar el coacutedigo
$ mkdir studio-14-dev
$ cd studio-14-dev
ODROID MAGAZINE 16
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
DESARROLLO ANDROID
figura 1 pack de Android studio para 3 plataformas
Cambia al directorio studio-14-devtoolsideas y aseguacuterate de que el directorio bin del Apache Ant estaacute incluido en la variable PATH Por ejemplo el miacuteo se encuentra en homenanikapache-ant-19bin Una vez dentro del directorio inicia el proceso de compilacioacuten ejecutando el comando ant
$ ant
Veraacutes un registro log similar al de abajo cuando se completa el proceso de construccioacuten
Buildfile homenanikstudio-14toolsideabuildxml
cleanup
init
[mkdir] Created dir homenanikstudio-14
toolsideaout
[mkdir] Created dir homenanikstudio-14
toolsideaouttmp
build
[java] Buildfile homenanikstudio-14tools
ideabuildgantxml
[java]
[java] doGant
[java] lsquohomersquo is not defined Defaulting to lsquo
homenanikstudio-14toolsidearsquo
[java] default
[java] compile
hellip
hellip
[java] Build log (info) will be written to
homenanikstudio-14toolsideaouttmpsystem
build-logbuildlog
[java] Loaded project homenanikstudio-14
toolsidea 264 modules 80 libraries
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistwince
$ repo init -u httpsandroidgooglesourcecomplat-
formmanifest
-b studio-14-dev
$ repo sync -j4 --no-clone-bundle
CompilacioacutenCompilar Studio es sencillo ya que utiliza Ant como proceso
de compilacioacuten los extractos de buildxml se muestran debajo El archivo buildxml se puede encontrar dentro del directorio studio-14-devtoolsidea
lt--
This build script compiles IntelliJ IDEA Options
include
-Dout=pathtooutdir defaults to $basedir
out
-Dbuild=123 defaults to SNAPSHOT
-Dtestpatterns=comfoo defaults to empty
string
-Dproduct=foo defaults to studio
--gt
ltproject name=rdquoIntelliJ IDEA Community Editionrdquo
default=rdquoallrdquogt
ltproperty name=rdquoprojecthomerdquo value=rdquo$basedirrdquogt
ltcondition property=rdquooutdirrdquo value=rdquo$outrdquo
else=rdquo$projecthomeoutrdquogt
ltisset property=rdquooutrdquo gt
ltconditiongt
ltcondition property=rdquobuildnumberrdquo value=rdquo$buildrdquo
else=rdquoSNAPSHOTrdquogt
ltisset property=rdquobuildrdquo gt
ltconditiongt
ltcondition property=rdquotestpatternsrdquo
value=rdquo$testpatternsrdquo
else=rdquoorgjetbrainsandroidcom
androidtoolsideacomgooglegctcomintellij
androidrdquogt
ltisset property=rdquotestpatternsrdquo gt
ltconditiongt
hellip
hellip
hellip
lttarget name=rdquoallrdquo depends=rdquocleanupbuildfullupda
terrdquogt
ltprojectgt
ODROID MAGAZINE 17
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
lar a la Figura 4 Todo lo que tienes que hacer es seguir las instrucciones para localizar tu JDK y SDK cuando se te soli-citen Completa la pantalla que se muestra en la Figura 5 con la ubicacioacuten correcta
Habilitar por ti mismo el IDE te permitiraacute mantenerte siempre al diacutea de los uacuteltimos cambios lo cual te proporciona un extra que te ayudaraacute a desarrollar tu aplicaciones mucho maacutes raacutepido
[java] [mkdir] Created dir homenanikstu-
dio-14toolsideaoutdistallce
hellip
hellip
hellip
[java] [tar] Building tar homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
[java] [gzip] Building homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtargz
[java] [delete] Deleting homenanik
studio-14toolsideaoutartifactsandroid-studio-
SNAPSHOTtar
hellip
hellip
[java] [jar] Building jar homenanik
studio-14toolsideaout___tmp____0updaterjar
[java] [copy] Copying 1 file to homenanik
studio-14toolsideaout
[java] ------ default
[java]
[java] BUILD SUCCESSFUL
EjecucioacutenSi la compilacioacuten se realiza correctamente obtendraacutes Studio
empaquetado dentro de studio-14toolsideaoutartifacts para 3 plataformas diferentes Windows Mac y Linux como se muestra en la Figura 1
Puesto que uso Linux extraje el archivo android-studio- SNAPSHOTtargz cuyo contenido se muestran en la Figura 2 Para iniciar Studio basta con ejecutar el studiosh dentro del directorio bin
Si tienes el SDK instalado seraacute detectado automaacuteticamente por Studio De lo contrario veraacutes una pantalla que te indica que tienes que descargar el SDK tal y como se muestra en la Figura 3
Una vez finalizada la descarga apareceraacute una pantalla simi-
Contenido de android-studio-snApsHOttargz
Descargar sDkConfigurar sDk
Configuracioacuten de la ubicacioacuten correcta del sDk y JDk
Listo para crear tu impresionante aplicacioacuten Android
DESARROLLO ANDROID
ODROID MAGAZINE 18
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Constructor without default
state (set to LOW)
public GPIOPin(OdroPin pin
PinMode mode)
jODROLIbRERIA jAvA pARA COnTROLAR LOS pInES GpIO DEL ODROID-C1por ChromoDeveditado por rob roy
figura 1 ndash Distribucioacuten GpiO
ledshutdown()
inshutdown()
))
while(true)
ledtoggle()
Systemout
println(inread())
try
Thread
sleep(delay)
catch
(InterruptedException ex)
Logger
getLogger(MainclassgetName())
log(LevelSEVERE null ex)
En primer lugar tienes que definir un pin GPIO que es una representacioacuten software de un pin hardware Para este pin tienes que definir queacute pin hardware quieres seleccionar por ejemplo (Odro-PinGPIO_24) en queacute direccioacuten de-beriacutea funcionar el pin (pinModeOUT) y opcionalmente el valor por defecto (como PinState LOW) Despues puedes manipular o leer el pin conforme a la figura 1
Al final del programa tienes que ce-rrar los pines que se restablecen por de-fecto (bajo y entrada) y sin exportarlos
Clase GPIOPinLa clase GPIOPin representa el pin
hardware en el coacutedigo
Empeceacute a escribir esta libreriacutea porque no lograba encontrar una libreriacutea Java como Pi4j para
ODROID-C1 Este proyecto se encuen-tra en desarrollo si tienes alguna idea para mejorarlo o incluir nuevas funcio-nes ponte en contacto conmigo a traveacutes del enlace incluido al final del artiacuteculo
InstalacioacutenDescarga el proyecto desde http
bitly1RROajs y agrega jOdrojar desde la carpeta dist a tu proyecto Ejecuta el siguiente comando en tu Odroid para dar a la libreriacutea los permisos necesarios
$ sudo chmod 222 sysclassgpio
export sysclassgpiounexport
UsoDe momento puedes ajustar y leer un
pin Aquiacute tienes un proyecto de ejemplo para que empieces a usar jOdro
public class Tester
private static final int delay
= 500
GPIOPin led
GPIOPin in
public void startTest()
led = new
GPIOPin(OdroPinGPIO_24 PinMode
OUT PinStateLOW)
in = new GPIOPin(OdroPin
GPIO_23 PinModeIN)
RuntimegetRuntime()
addShutdownHook(new Thread(() -gt
JAVA GPIO
ODROID MAGAZINE 19
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
JAVA GPIO
public string toString()
PinModeLa clase pinMode representa el modo
del pin en el coacutedigo
Constant for input
PinStateIN
Constant for output
PinStateOUT
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the mode state as a
boolean
public boolean toBool()
Returns the mode as a int
public int toInt()
Returns the mode as a String
public String toString()
OdroPinLa clase OdroPin representa la direc-
cioacuten del pin en el coacutedigo
Returns the value which is
used to control the GPIOs
public int getOdroidCode()
Returns the function of a
pin If there is no function it
returns the number
public string getLabel()
Returns the GPIO number in the
WiringPi Protokol
public int getWiringPin()
Para preguntas comentarios o sug-erencias por favor visita el reposito-rio jOdro de GitHub en httpbitly1HweC2B
Constructor with default State
public GPIOPin(OdroPin pin
PinMode mode PinState state)
Sets the state of the pin to
low
public void low()
Sets the state of the pin to
high
public void high()
Reverses the state of the pin
public void toggle()
Reads the state of the pin
public PinState read()
Shuts down the pin
public void shutdown()
Returns the constant for the
pin
public OdroPin getPin()
Returns the mode of the pin
public PinMode getMode()
PinStateLa clase PinState representa el valor
del pin en el coacutedigo
Constant for a low value
PinStateLOW
Constant for a high value
PinStateHIGH
Returns the value which is
used to control the GPIOs
public string getCode()
Returns the state state as a
boolean
public boolean toBool()
Returns the state as an
integer
public int toInt()
Returns the state as a string
SEnSACIOn DE pAzGEnERADOR DE RuIDO bLAnCOpor Bruno Doiche
T iene compantildeeros de trabajo in-sensibles que piensan que los teclados ruidosos estaacuten de moda
en el 2015 Un robot Roomba limpia tu piso de forma automaacutetica mientras que tuacute intentas gestionar un par de ho-jas de caacutelculo iexclSi este es tu caso pillate un generador de ruido blanco
$ sudo apt-get install sox
Ruido blanco
$ play -n synth 6000 whitenoise
Ruido marroacuten
$ play -n synth 6000 brownnoise
Ruido rosa
$ play -n synth 6000 pinknoise
Disfruta de tu propio espacio personal durante toda una hora Si te gusta y quiere mantenerlo indefinidamente soacutelo tienes que usar el temporizador de 60 minutos aunque los tiacutempanos pueden molestarte de vez en cuando
TRUCOS Y CONSEJOS
ODROID MAGAZINE 20
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
ATRIL COn ODROID-C1SESIOn DE MuSICA COn ESTILOpor ivan reede
A l formar parte de unas cuantas bandas de muacutesica y una orquesta tengo que llevar muchos cuadernos con partituras Me resulta muy incomodo transpor-
tar tantos cuadernos averiguar queacute partituras necesitaba en cada caso y no olvidar los cuadernos especiacuteficos que necesito para practicar en cada banda en concreto Para miacute el papel es un medio muy primitivo a la hora de transpor-tar partituras que tiene varias dificultades antildeadidas Como soy ingeniero y muacutesico decidiacute crear un atril electroacutenico
Primero intenteacute usar una tablet de 10rdquo para reemplazar las hojas de papel pero la pantalla era demasiado pequentildea Teniacutea una buena aplicacioacuten en la tablet que era perfecta para reproducir la muacutesica pero la imagen auacuten no era lo suficientemente grande Queriacutea algo que me permitiera mostrar dos paacuteginas de lado a lado como mi atril Al tocar el saxofoacuten ambas manos las tengo ocupadas y utilizar una pantalla taacutectil para pasar las hojas me representa un pro-blema Intente usar un pedal de pie pero eso soacutelo suponiacutea tener que acarrear con otra cosa maacutes
Mi aventura con la tablet llegoacute a su fin cuando mi fraacutegil atril se balanceo y la tablet se cayoacute al suelo agrietaacutendose la pantalla Definitivamente necesitaba algo mejor Empeceacute escribiendo las especificaciones del nuevo atril Me ima-ginaba utilizando un soporte estaacutendar un monitor un or-denador y unas bateriacuteas recargables todo mecaacutenicamente acoplado en una sola unidad funcional
Especificaciones SoportePlaca posterior Placa de 135rdquo x 19rdquo con una balda de
2rdquo con bordes redondos Orificios para sujetar el soporte del microacutefono Tiradores de inclinacioacuten para adaptar los aacutengulos de visioacuten
Sistema de ajuste a media altura botoacuten de bloqueo ajustable en altura desde 24rdquo (sentado) a 45rdquo (de pie)
Base triacutepode robusto con patas de goma antideslizantes y brazo extensible que se pliega faacutecilmente para los viajes
Especificaciones MonitorQueriacutea que fuese capaz de mostrar al menos 2 paacuteginas
de muacutesica al mismo tiempo con un tamantildeo aproximado de 85rdquo x 11rdquo El monitor teniacutea que encajar muy bien en la plataforma y ser montado con firmeza Necesitaba una pantalla anti-reflejos para evitar los reflejos del sistema de iluminacioacuten del escenario y de la luz de sol La imagen teniacutea que ser visible fuera a plena luz del diacutea y el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas hasta tener que volver a recargarlas
Especificaciones OrdenadorEl equipo teniacutea que ser pequentildeo y ligero con suficiente
espacio de almacenamiento para guardar una gran cantidad de muacutesica con una salida HDMI para conectar al monitor y puertos USB que permitiesen la faacutecil transferencia de
MUSICA ODROID
ODROID MAGAZINE 21
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
datos capaz de soportar WiFi y perifeacutericos Bluetooth Al igual que el monitor teniacutea que ser capaz de funcionar con bateriacuteas durante al menos 6 horas
He encontrado un monitor HMDI de 22 pulgadas con una fuente de alimentacioacuten externa de 20V que tiene aproximadamente la misma anchura que la parte poste-rior del atril Para asegurar el monitor le quiteacute su pedestal y todas sus piezas de plaacutestico manteniendo el marco de metal interior Lo comprobeacute y me asegureacute de que el moni-tor se podiacutea sujetar fuertemente al pedestal sin las piezas de plaacutestico Con un poco de paciencia perforeacute la placa posterior del atril para acoplar la base del monitor Esto fue bastante faacutecil ya que el pedestal utiliza tornillos para sujetar el plaacutestico que normalmente se usan para un atril con pantalla LCD
El sistema operativo de la tablet era en la praacutectica un impedimento Los sistemas operativos de las Tablet estaacuten orientados hacia el consumo de informacioacuten en lugar de la produccioacuten de informacioacuten Por lo tanto me puse a buscar
un sustituto apropiado Linux pareciacutea ser un SO interesante el cual llevo usando desde hace muchos antildeos En su mayor parte es de coacutedigo abierto y dedicaacutendole algo de tiempo puedes hacer que haga lo que tuacute quieras en lugar de lo que quiere la mayoriacutea
Al principio intente usar una Raspberry Pi que no llego a funcionar muy bien Se quedoacute sin memoria bas-tante raacutepido y tras cargar unas diez piezas musicales se volviacutea muy lenta Me llevariacutea unos 20 minutos cargar las hojas de muacutesica que necesitaba para un concierto y el cambio de paacutegi-na llegaba a tardar hasta 30 segundos
Era suficiente para practicar en casa pero seguramente no lo utilizariacutea en una sala de conciertos Auacuten asiacute lo probeacute con mis compantildeeros muacutesicos que se reiacutean de miacute lento ar-tilugio con toneladas de cables fuentes de alimentacioacuten y un ordenador realmente lento Se preguntaban coacutemo po-driacutea llegar alguna vez a sustituir las hojas en papel
Luego aparecioacute un nuevo candidato el ODROID-C1 Teniacutea el doble de memoria cuatro nuacutecleos de CPU apro-ximadamente el doble de velocidad de reloj y una bonita carcasa rectangular asiacute que compreacute tres y les di una opor-tunidad De repente mi atril electroacutenico se convirtioacute en algo mucho maacutes viable Los 20 minutos que necesita para cargar mis piezas musicales para un concierto se reduje-ron a 45 segundos lo cual fue genial Finalmente el atril comenzaba a tener un sentido praacutectico Realmente podiacutea asumir los 45 segundos de tiempo de configuracioacuten en un espectaacuteculo El cambio de paacuteginas era bastante raacutepido pero no lo suficiente todaviacutea
Tras varios intentos finalmente encontreacute un buen visor PDF raacutepido y simple Tan soacutelo teniacutea que poner toda mi
muacutesica en una carpeta abrirla y elegir el archivo en cuestioacuten con un simple doble clic Luego antildeadiacute un icono en el escritorio por concierto Cambie los nombres de los archivo por un nuacutemero de 2 diacutegitos (00 01 02) para que mi muacutesica apareciese por orden de reproduccioacuten estaba empezando a ser divertido El ratoacuten en cambio ha resultado ser un problema en los con-ciertos
Todaviacutea teniacutea un problema de mo-vilidad el hecho de coacutemo alimentar la unidad Teniacutea que cargar con las fuen-tes de alimentacioacuten cables y demaacutes
MUSICA ODROID
para el control ivaacuten ha elegido un impresionante teclado con rueda de desplazamiento
ivaacuten sin duda hizo un gran montaje y puede gestionar la fuente de alimentacioacuten
ODROID MAGAZINE 22
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Corriendo en cada concierto en busca de un enchufe alar-gaderas cinta adhesiva para fijar los cables al suelo y asiacute evitar que la gente tropezara Teniacutea que buscar una solu-cioacuten mejor asiacute que compreacute un pack de bateriacuteas USB de potencia de 10Ah y 21 amperios Las pruebas mostraron que el ODROID-C1 podiacutea aguantar 19 horas encendido iexclExcelente Ahora pasariamos al monitor que resultoacute ser un gran reto
El monitor necesita 20 voltios asiacute que penseacute en uti-lizar cuatro bateriacuteas USB de 5 voltios en serie pero me equivoqueacute El monitor tira de una impresionante cantidad de energiacutea cuando se enciende cuando se ilumina y cu-ando se pasa la paacutegina Sin embargo cuando la imagen estaacute fija y no cambia nada el consumo de energiacutea se reduce al miacutenimo Las fuentes de alimentacioacuten se apagaban de forma aleatoria mientras estaba reproduciendo una partitura aun cuando nada cambiaba en pantalla
MUSICA ODROID
El resultado final era que las fuentes de alimentacioacuten se apagaban mientras estaba tocando o cuando pasaba las paacuteginas Descubriacute que podriacutea deberse a que no recibiacutean carga o se produciacutea una sobrecarga
La solucioacuten fue retirar por comple-to la regulacioacuten electroacutenica de las ba-teriacuteas USB Asiacute que destroce las fuen-tes de alimentacioacuten USB y quiteacute las bateriacuteas de Li-ion Coloque las ceacutelulas en paralelo para crear una bateriacutea con la capacidad necesaria amperios-hora Conectando 5 de estas bateriacuteas al-canzaba 21 voltios con carga completa
y 17 voltios cuando se descargaba El regulador interno del monitor puede trabajar con eso Por uacuteltimo fabrique una carcasa para las bateriacuteas y la fije a la parte trasera del atril Este sistema funcional me permitiacutea disponer de 6 horas de autonomiacutea y no tener cables de alimentacioacuten molestos de por medio Lo que es mejor auacuten la mayoriacutea de las cone-xiones seguiacutean en su lugar por lo que la configuracioacuten del atril era muy similar a la de un atril para papel normal
Como sistema de emergencia amplieacute la balda inferior con un clip de modo que ahora si quiero puedo poner las hojas de papel en el soporte Tambieacuten es muy uacutetil para colocar mi teclado Mis compantildeeros muacutesicos estaacuten empe-zando a ver este sistema bastante uacutetil Mejor auacuten con un dongle WiFi conectado al puerto USB y mi teleacutefono como punto de acceso puedo coger cualquier pieza de muacutesica que necesite desde mi servidor personal El C1 puede al-macenar toda la coleccioacuten de muacutesica de la banda sin tener que necesitar impresoras y sin papeles que salen volando en las actuaciones al aire libre iexclRealmente es genial
Antildeadiendo las aplicaciones Lilypond y Frescobaldi puedo escribir muacutesica y hacer correcciones sobre la mar-cha El atril puede reproducir muacutesica y grabar tanto las ac-tuaciones como las praacutecticas permitieacutendome escucharlas maacutes tarde y asiacute estudiar donde puedo mejorar Tambieacuten puede ayudarme a afinar los instrumentos
Con todo esto quisiera dar las gracias a Hardkernel por esta pequentildea maravilla teacutecnica Habeacuteis hecho que mi atril se haga realidad Estaacute listo para acompantildearme a los conci-ertos como si fuese un atril electroacutenico comercial a tamantildeo real Con mi uacuteltimo experimento usando VNC un ayu-dante podiacutea mostrar hojas partituras musicales y mensajes directamente en mi pantalla Lo cual me permitiacutea concen-trarme en la reproduccioacuten de muacutesica en lugar de pasar las paacuteginas El siguiente paso es antildeadir el software necesario que me permita tener una red inalaacutembrica de atriles para bandas y orquestas
todas sus partituras al alcance de sus manos en formato pdf
Los puertos de carga iluminados son una gran ventaja
ODROID MAGAZINE 23
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
iquestQueacute es DietPiEn esencia DietPi es una ldquoimagenrdquo con una instalacioacuten miacutenima de Ubuntu Hemos desmontado la imagen oficial de Hardkernel eliminando praacutecticamente
todo para ofrecer una imagen baacutesica a la que hemos llamado DietPi-CoreCon Ramlog un servidor SSH Dropbear y ajustes para reducir el uso de memo-
riaCPU la imagen DietPi viene pre-optimizada y lista para ejecutarse
Estadisticas baacutesicasExpansioacuten automaacutetica del sistema de archivos
DietPi ampliaraacute automaacuteticamente tus sistemas de ficheros en el primer reinicio Esto garantiza que podraacutes acceder a toda tu tarjeta MicroSD
ramlogReduce el ES del Sistema de Archivos y ahorra el tener que escribir en la tarjeta
SD al mover varlog a la RAM
DropbearLiviano servidor SSH instalado por defecto Se puede cam-
biar por OpenSSH-Server usando DietPi-Software si necesitas SFTPSCP
soporte Wifi Usando DietPi-Config puedes conectarte con rapidez y con
facilidad a tu red Wifi
Bajo consumo de memoria Ubuntult 98 MB de RAM en el arranque
Bajos recursosUn total de 11 procesos en el arranque
swapfile100mb con swapiness ajustado en 1 (para evitar errores por falta de memoria)
Unidad dedicada UsB opcionalSi tienes previsto usar una unidad USB con tu instalacioacuten DietPi pondraacute en mar-
SO DESTACADODIETpI pARA ODROID-C1por Daniel knight
DIET PI
97 Megabytes usados 12 procesos con HtOp esta es una su-per imagen slim
ODROID MAGAZINE 24
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Dietpi tiene su propia libreriacutea de software optimizado
cha tu unidad USB y configuraraacute automaacuteticamente todo el software que se instale en un futuro con DietPi-Software para que use tu dispositivo USB en lugar de la SD
PosibilidadesCompilado desde cero DietPi-Software permite instalar aplicaciones opcionales
las cuales estaacuten pre-configuradas y ldquolisto para ejecutarserdquo con todas las optimizaciones y configuraciones ya realizadas
Si estaacutes buscando un servidor web LAacuteMP (Nginx MySql Php) o la combi-nacioacuten Kodi y servidor BitTorrent DietPi-Software los instala configura y optimiza Las optimizaciones aplicadas incluyen tamantildeo del cache php tamantildeo de cacheacute del servidor bittorrent cantidad de subprocesos Nginxphp5-fpm y muchos maacutes
Con la optimizaciones especificas que se aplican automaacuteticamente a tu hardware DietPi te asegura el maacuteximo rendimiento de tu dispositivo ODROID y del software que decidas instalar
La lista completa de opciones de DietPi la puedes encontrar online por favor visita httpfuzoncoukphpbbviewtopicphpf=8ampt=11p11
ConfiguracioacutenDentro de DietPi-Config puedes cambiar faacutecilmente las opciones de visualizacioacuten
conectar a un red wifi configurar una direccioacuten IP estaacutetica modificar los paraacuteme-tros de la CPU entre otras opciones Con la integracioacuten del cliente Samba NoIp y CurlFtpFs puede acceder faacutecilmente a archivos compartidos en red o asignar a tu dispositivo una direccioacuten web fija con facilidad DietPi-Config es un paraiacuteso para los que le gusta hacer ajustes
InstalacioacutenDescarga la imagen DietPi configura un disco duro USB dedicado e instala el
siguiente software optimizado para DietPi con DietPi-software
bull Owncloud - tu propio sistema personal de backupbull transmission - servidor Bittorrent con interfaz webbull kodi - La cuacutespide de los centros multimediabull servidor web LAMp - Apache2 Mysql pHp-5 (usado por ownCloud)bullservidor samba - para acceder a las descargas de Bittorrent y a los archivos del dispositivo de forma remota
DIET PI
ODROID MAGAZINE 25
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
InstalacioacutenTambieacuten cubriremos la configuracioacuten de NoIp con DietPi-Config Dale a tu
ODROID-C1 un poco de formalidad Todo lo que necesitaraacutes es
bull ODrOiD-C1bull tarjeta MicrosD de 2 GB o superiorbull Acceso a internet (Ethernet o Wifi para completar la configuracioacuten Dietpi)bull se recomienda un disco duro UsB para las instalaciones del servidor transmission
Bittorrent u ownCloud Dietpi moveraacute automaacuteticamente los datos al disco duro UsB si estaacute instalado
Las guiacuteas y documentacioacuten online estaacuten disponibles aquiacutehttpfuzoncoukphpbbviewtopicphpf=8ampt=9p9
Descarga DietPi para ODROID-C1 en el siguiente enlacehttpgooglUF6I0f
Escribe la imagen en tu tarjeta MicroSD
bull Descomprimeextrae la imagen DietODrOiD7zbull Escribe el archivo de imagen DietODrOiD_vxximg en tu tarjeta MicrosD
La documentacioacuten on-line incluye los meacutetodos para escribir la imagen con Win-dows y Linux
bull inserta la tarjeta microsD en tu dispositivo ODrOiD-C1 y encieacutendelobull Dietpi ampliaraacute automaacuteticamente el sistema de archivos y se reiniciaraacute dos veces
cuando haya terminadobull Cuando aparezca la pantalla de inicio de sesioacuten escribe ldquorootrdquo como nombre de
usuario y ldquoraspberryrdquo como contrasentildea
DietPi tambieacuten viene con un liviano servidor SSH (Dropbear) pre-instalado Simplemente tiene que usar la direccioacuten IP de tu dispositivo ODROID y los datos de acceso anteriores
DietPi comprobaraacute ahora si hay actualizaciones Si se aplican las actualizaciones apareceraacute un aviso para reiniciar el sistema pulso Intro Cuando vuelva a aparecer la pantalla de inicio de sesioacuten vuelve a entrar
Unidad USBDietPi te pediraacute que respondas a las preguntas sobre tu instalacioacuten pulse Intro
para continuar
bull Ahora apareceraacute la pantalla de disco duro UsB si tienes un disco duro UsB selec-ciona UsB instail pulsa intro y sigue las instrucciones en pantalla
Si el disco duro USB ya estaacute formateado en ext4 o NTFS se te daraacute la opcioacuten de mantener los datos o formatear en ext4
SoftwareEn el menuacute principal seleccione la opcioacuten DietPi Optimized Software y presiona
Intro
DIET PI
ODROID MAGAZINE 26
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
DIET PI
bull Usa la barra espaciadora para seleccionar kodi transmisioacuten ownCloud Luego pulsa intro
bull no es necesario seleccionar LAMp ya que Dietpi lo instalaraacute automaacuteticamentebull Cuando aparezca el aviso ldquofile server recommendedrdquo pulsa introbull Cuando aparezca el aviso ldquoBoot Optionsrdquo selecciona yes y pulsa intro Desde aquiacute
puedes elegir queacute software se iniciaraacute automaacuteticamente en el arranque selecciona kodi de la lista y presione intro Cuando hayas terminado pulse EsC para volver al menuacute principal
Seleccionar un Servidor de archivosEn el menuacute principal selecciona la opcioacuten de File Server y pulsa Intro
bull seleccione samba de la lista de servidores de archivos disponibles y pulsa intro Confirma cuando aparezca el aviso para volver al menuacute principal
Los servidores SSH y servidores de archivos se pueden intercambiar faacutecilmente en cualquier momento simplemente ejecutando Dietpi-software desde el terminal DietPi instalaraacute automaacuteticamente la nueva opcioacuten eliminando la anterior
Iniciar la instalacioacuten
Cuando esteacutes listo instala tus elecciones
simplemente selecciona Go start install desde el menuacute principal y pulsa intro
DietPi comenzaraacute el proceso de instalacioacuten y automaacuteticamente instalaraacute configu-raraacute y optimizaraacute tus opciones
Una vez que DietPi haya terminado de instalar las opciones seleccionadas el siste-ma se reiniciaraacute Esto completa la instalacioacuten de tu software
Usar el software instaladoObtener tu direccioacuten ip
En esta guiacutea estamos utilizando la direccioacuten IP 1921680100 Esta tiene que ser reemplazada por la direccioacuten IP de tu dispositivo ODROID
Puedes obtener tu direccioacuten IP ejecutando dietpi-config Selecciona el menuacute de opciones de red luego escoge ethernet o wifi
Usar kodiAl seleccionar Kodi con la opcioacuten de auto arranque eacuteste se cargaraacute automaacutetica-
mente Si no ha seleccionado Kodi para que se inicie durante el arranque puede eje-cutarlo escribiendo startkodi Tambieacuten puedes cambiar las preferencias de arranque ejecutando dietpi-config desde el terminal y seleccionando la opcioacuten AutoBoot
Acceso a unidad UsBTodos las unidades montadas por DietPi se pueden localizar en la carpeta mnt
Si desea hojear tu unidad USB simplemente ve a mntusb_1
Usar transmission (Bittorrent)
url = http19216801009091username = rootpassword = raspberry
ODROID MAGAZINE 27
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Acceso a los datos descargadosPuesto que instalamos el servidor Samba podemos acceder a las descargas de
forma remota Desde Windows simplemente guarda la clave de Windows y pulsa R Luego introduce la siguiente direccioacuten
address = 1921680100dietpi or dietpidietpiusername = rootpassword = raspberrydirectory = downloads
Usar OwncloudAcceso a la interfaz web
url = http1921680100owncloud
La primera vez que te conectes
Crea tu cuenta admin escribiendo un nuevo nombre de usuario y contrasentildeaHaz clic en storage amp Database para expandir el submenuacuteDatabase type = seleccionar MysQLDatafolder = Cambiar a varlibownclouddataDatabase User = rootDatabase password = raspberryDatabase name = owncloudHaga clic en finish setup para completar la configuracioacuten de ownCloud
Usar LAMp WebserverAcceso a la paacutegina web
url = http1921680100directorio local = varwww
Acceso a phpinfourl = http1921680100phpinfophpAcceso pHp cache infourl = http1921680100apcphp
MySql Detailsusername = rootpassword = raspberry
instalar nolpUsar NoIp te permitiraacute dirigir una direccioacuten URL (ejemplo httpMyWebsite
noipbiz) a tu dispositivo ODROID independientemente de tu direccioacuten IP puacuteblica
registrarse en noipCrea tu cuenta NoIp gratis en httpswwwnoipcomsign-up y elije una direc-
cioacuten web para tu cuenta
Activar tu cuenta con DietpiDietPi-Config es una herramienta de configuracioacuten con muchas funciones para
tu dispositivo Una de sus principales caracteriacutesticas es la posibilidad de instalar y configurar el cliente NoIp el cliente Samba y el cliente FTP con gran facilidad
DIET PI
ODROID MAGAZINE 28
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
DIET PI
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
figura 1 - ldquoDietpi - figura 1 - DietOdroid_htoppngrdquo
Desde terminal ejecuta dietpi-configselecciona el menuacute networking Optionsselecciona noip de la lista y selecciona install para instalarlo Dietpi instalaraacute ahora
automaacuteticamente noipCuando se complete la instalacioacuten selecciona noip desde el menuacuteDesde aquiacute puedes introducir tu direccioacuten de correo electroacutenico noip y contrasentildea
pulse intro para el retos de opciones
Si has introducido tus datos correctos el estado actual NoIp cambiaraacute a Online
Abril puertos del routerSi desea acceder a tu sitio web desde fuera de la red local tendraacute que habilitar
el reenviacuteo de puertos en tu router Esto permitiraacute el acceso externo a tu sitio web Simplemente habilitar el puerto TCP 80 y diriacutegelo a tu dispositivo ODROID
ODROID MAGAZINE 29
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
configurar la aplicacioacuten para guardar los archivos eliminados y verlos maacutes tarde incluso con otros reproductores multimedia
Teniacutea en mi poder un ODROID U3 cuando descubriacute esta aplicacioacuten lo primero que hice fue comprobar si estaba disponible para las plataformas armhf En los foros ODROID y Pop-corn Time sin embargo descubriacute que Popcorn Time no es compatible con dispositivos Linux armhf Tras inves-tigar un poco por Internet averiguumle que en teoriacutea no habiacutea razoacuten por la que esta aplicacioacuten no se ejecutara en mi ODROID-U3 Todo lo que necesi-taba era encontrar los binarios de la aplicacioacuten nwjs (nodo-webkit) para armhf Esta tarea representaba un gran reto porque ningu-no de los binarios que encontreacute era capaz de ejecutar hardware acele-rado por WebGL (en otras palabras usar OpenGL ES 20) aplicaciones demo ni decodi-ficar archivos de viacutedeo y audio Asiacute
La aplicacioacuten original Popcorn Time es un cliente BitTorrent de coacutedigo abierto multiplatafor-
ma que incluye un reproductor mul-timedia El programa y sus derivados con el mismo nombre son alternativas gratuitas para servicios de video en streaming con suscripcioacuten como Net-flix Popcorn Time utiliza la descarga secuencial para reproducir las peliacutecu-las listadas en el sitio web ytsto (an-tes yify-torrentcom y ytsre) tambieacuten conocido como YIFY (aunque se pu-eden antildeadir otros trackers y utilizarse de forma manual)
Tras su lanzamiento Popcorn Time llamo raacutepidamente la atencioacuten de va-rios medios de comunicacioacuten llegaacuten-dose a comparar con la aplicacioacuten de Netflix debido a su facilidad de uso Tras este aumento de popularidad el programa fue repentinamente elimi-nado por sus desarrolladores el 14 de marzo 2014 debido a la presioacuten de la MPAA Desde entonces Popcorn Time se ha separado en varios equipos de desarrollo para mantener el pro-grama y ofrecer nuevas caracteriacutesticas Una de estas divisiones estaacute disponible en httpspopcorntimeio Las plata-formas soportadas son Mac Windows Linux (32 y 64 bits) y Android
Gracias a su moderna y sencilla in-terfaz de usuario la aplicacioacuten se hizo muy popular en todo el mundo Las nuevas versiones de Popcorn Time pu-eden descargar y reproducir contenido facilitado por otros trackers ademaacutes utilizar los reproductores multimedia instalados en el sistema para repro-ducir el contenido Tambieacuten puedes
que trateacute de desarrollar mis propios bi-narios basaacutendome en los tutoriales que encontreacute en diferentes foros pero con cada intento fracasaba porque algunas dependencias no eran las adecuadas o apareciacutea alguacuten error durante el proceso de compilacioacuten
NWjs es una aplicacioacuten en tiempo de ejecucioacuten basada en Chromium y nodejs Puedes escribir aplicacio-nes nativas en HTML y JavaScript con NWjs Tambieacuten permite activar moacutedulos Nodejs directamente desde el DOM y hace posible una nueva for-ma de escribir aplicaciones con todas las tecnologiacuteas Web Fue creada en el Intel Open Source Technology Center
pOpCORn TIMEEL SuENtildeO DE LOS AMAnTES DEL MunDO MuLTIMEDIApor Laacuteszloacute Leonard
POPCORN TIME
reproduccioacuten de un viacutedeo usando HtML 5 con nWjs
popcorn time no soacutelo tiene un gracioso logotipo sino que es una revolucionaria forma de conseguir contenido multimedia
ODROID MAGAZINE 30
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Chromium era capaz de descodi-ficar un montoacuten de videos intente usar el archivo l i bffmpegsumoso localizado en el directorio de ins-talacioacuten de Chro-mium Ademaacutes de sustituir este archivo tambieacuten
tuve que reemplazar el fichero icudtldat en el archivo node-web-kit
Esta vez el entorno de trabajo nodo-webkit fue capaz de reproducir viacutedeos HTML 5 como muestra la imagen de abajo
Llegado a este punto contaba con el entorno de trabajo necesario para ejecutar la aplicacioacuten Popcorn Time con aceleracioacuten por hardware que era capaz de decodificar algunos archivos de viacutedeo y audio Todo lo que teniacutea que hacer ahora era exportar el proyecto a la plataforma armhf Tras descargar el proyecto desde los repositorios Git in-tente compilarlo pero la compilacioacuten fallo debido a la arquitectura descono-cida Para hacerlo funcionar tuve que antildeadir soporte arm al proyecto de es-critorio Popcorn Time y a su proyecto de dependencia Nodewebkit-builder Para hacer esto afortunadamente tan soacutelo teniacutea que modificar dos archivos de mi proyecto Git
El resultado fue una versioacuten fun-cional de Popcorn Time para mi ODROID-U3 Debido a la falta de
codecs para Chro-mium algunos videos todaviacutea no se podiacutean decodi-ficar o la decodi-ficacioacuten era lenta en especial con los viacutedeos Full HD Espero que los drivers actu-alizados para la GPU Maliacute resuel-
Puesto que NWjs estaacute basado en Chromium y mi navegador Chro-mium es capaz de ejecutar WebGL acelerado por hardware penseacute que la manera en el que el entorno de trabajo utiliza OpenGL ES 20 en lugar de OpenGL 20 en NWjs seriacutea similar a Chromium Asiacute que ejecute aplicacio-nes demo con el flag --usegl=egl y apa-recio magia De repente mi aplicacioacuten empezoacute a ejecutarse con aceleracioacuten hardware Era capaz de ejecutar algu-nos juegos desarrollados con WebGL en mi ODROID
Aunque mi entorno de trabajo se ejecuta en modo de aceleracioacuten por hardware no era capaz de decodifi-car archivos de viacutedeo y audio asiacute que continueacute investigando Uno de los desarrolladores de Popcorn Time se-ntildealoacute que el problema estaba en el ar-chivo libffmpegsumoso el cual no tenia implementados la mayoriacutea de los coacutedecs Puesto que mi navegador
POPCORN TIME
van estos problemas y que las proacuteximas versiones de Chromium permitan maacutes codecs Ademaacutes descubriacute que cuando intentas abrir los archivos torrent de otros trakers no funciona correcta-mente aunque estoy trabajando en este problema Realmente espero que este problema quede resuelto antes de que leas este artiacuteculo
Los aficionados pueden encontrar dos proyectos en mi repositorio Git Uno de los proyectos contiene los ar-chivos y tutorial necesarios para la instalacioacuten de la aplicacioacuten y el otro contiene un tutorial para la compi-lacioacuten del proyecto
Estos repositorios estaacuten disponibles en las siguientes direcciones
- httpsgitpopcorntime
iolaslaulpopcorn-time-
installation-guide-armv7
- httpsgitpopcorntimeio
laslaulpopcorn-time-
building-guide-armv7
Esta compilacioacuten solo la probeacute en un ODROID-U3 ejecutando Ubuntu 14042 asiacute que apreciariacutea las opin-iones y comentarios de los usuarios sobre todo de aquellos que ejecutan la aplicacioacuten en un dispositivo o sistema operativo diferente
Antes de descargar e instalar Pop-corn Time debes comprobar la legis-lacioacuten en propiedad intelectual de tu paiacutes o asegurarte de que el contenido que subes o descargas es gratuito y le-gal Ten en cuenta que Popcorn Time suele ser conocido a menudo como la versioacuten pirata de Netflix
Referencias
Wikipedia Popcorn Time httpenwikipediaorg
wikiPopcorn_Time (2015 may)GitHub Nwjs project
httpsgithubcomnwjs
nwjs (2015 may)
portada de popcorn time
popcorn time reproduciendo un video
ODROID MAGAZINE 31
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
Por favor haacuteblanos un poco sobre tiSoy un ingeniero de percepcioacuten
roboacutetica profesor universitario y crea-dor de Texas He trabajado con un gran nuacutemero de plataformas roboacuteticas (aeacutereas terrestres submarinas acuaacuteticas e industriales) y con sistemas integrados (ODROID Raspberry Pi Intel Atom y microcontroladores) La mayor parte de mi experiencia procede de la investi-gacioacuten y el desarrollo tanto en el mundo acadeacutemico como industrial Siempre ando interesado en el cambiante mundo de la roboacutetica y de los modelos infor-maacuteticos necesarios para que hagan un trabajo de un modo uacutetil
En estos momentos estoy centrado en la formacioacuten sobre todo a nivel universi-tario para estudiantes que estaacuten a punto de iniciar su carrera profesional Disfruto ensentildeando las teacutecnicas multidisciplinarias maacutes demandadas que no se suelen apren-der necesariamente en clase Tambieacuten par-ticipo en programas de divulgacioacuten para que los nintildeos empiecen a interesarse en la ingenieriacutea a temprana edad La mejor forma que conozco de hacer esto es mos-trardo a los estudiantes un robot que haga algo interesante y luego explicarles todas las cuestiones mecaacutenicas que son necesa-rias para disentildear una plataforma roboacutetica los conocimientos en electricidad que se necesita para establecer la comunicacioacuten y el control y las habilidades informaacuteticas que hacen falta para antildeadir la inteligencia y la toma de decisiones
iquestCoacutemo fueron tus inicios con los ordenadoresCreciacute con Oregon Trail La mayoriacutea
de mis amigos murieron de disenteriacuteaEn serio todos los ordenadores que
he ido teniendo siempre han sido maacutequi-nas de segunda mano Teniacutea que ir ac-
COnOCIEnDO un ODROIDIAnCHRIS MCMuRROuGH ExpERTO En RObOTICAeditado por rob roy
CONOCIENDO A UN ODROIDIAN
tualizando los componentes para lograr que funcionasen y siempre andaba con problemas que teniacutea que ir resolviendo por miacute mismo El primer equipo ldquonue-vordquo que compre fue un PC con Windows ME que es el peor SO que jamaacutes se ha hecho Tambieacuten teniacutea un defecto de dise-ntildeo que provocaba que se sobrecalentase y se bloqueara de vez en cuando asiacute que me vi obligado a poner en praacutectica mis propios trucos y hacer ajustes para eje-cutar el Starcraft original Baacutesicamente he aprendido mucho sobre los ordena-dores simplemente jugando al Starcraft
iquestQueacute te atrajo de la plataforma ODROIDHago mucho reconocimiento de
imaacutegenes por ordenador y trabajos con roboacutetica Baacutesicamente necesito Linux y libreriacuteas informaacuteticas para hacer mi trabajo Las plataformas ODROID te proporcionan una serie de ventajas en comparacioacuten con el resto Todas las pla-cas de Linux integradas tienen problemas cuando intentas exportas el coacutedigo desa-
rrollado en un ordenador de sobremesa o portaacutetil pero he sido capaz de solventar todos los problema con lo que me he ido encontrando gracias a la gran cantidad de informacioacuten disponible en los foros
iquestCuaacutel es tu ODROID favoritoMi favorito insuperable es el
ODROID-U3 Es pequentildeo raacutepido y ofrece un extra en comparacioacuten con los que estaacuten actualmente disponibles en el mercado Tambieacuten siento predileccioacuten con el X2 porque tuve una muy buena experiencia con eacutel siendo mi primera placa ODROID
iquestCoacutemo llegaste a ser un experto en roboacuteticaEl primer robot que desarrolleacute fue
un sencillo solucionador de laberin-tos utilizando el kit original de Lego Mindstorms en mi clase de ciencias de la computacioacuten del instituto Esta fue mi primera experiencia con la progra-macioacuten integrada el uso de sensores y el control de motores Despueacutes de esto
Aunque Chris auacuten no se dedica a crear armaduras de iron Man sin duda es la persona que maacutes cerca esta de hacerlo
ODROID MAGAZINE 32
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
me engancheacute Cuando empeceacute mi diplo-matura me uniacute a un equipo de roboacutetica de la universidad y desarrolle un sen-cillo robot de campo con estudiantes de otras carreras de ingenieriacutea Disfrute mucho con la experiencia interdiscipli-naria y competitiva que te proporciona estas competiciones y hasta ahora creo que la forma ldquo maacutes correctardquo de aprender roboacutetica es participar y desarrollar
Hacia el final de mis estudios univer-sitarios empeceacute a trabajar en un labo-ratorio de investigacioacuten de sistemas de control en praacutecticas Adquiriacute una valiosa experiencia sobre teoriacuteas de control y sistemas electroacutenicos y decidiacute quedarme y hacer la licenciatura En el siguiente par de antildeos termineacute el desarrollo de un micro vehiacuteculo aeacutereo como prueba de concepto para una ley de control teoacuterico que alguna gente investigaba Aquiacute es donde adquiriacute habilidades de ingenieriacutea eleacutectrica y mecaacutenica que junto con la ingenieriacutea informaacutetica completan mis conocimientos en roboacutetica
Llegado este momento disfrutaba mucho con lo que haciacutea y decidiacute que otros 4 antildeos con estas cosas no seriacutea mala idea Considereacute apropiado hacer un doc-torado tras terminar mi Licenciatura y continueacute trabajando en plataformas roboacuteticas Por ese tiempo a un familiar cercano le fue diagnosticado esclerosis lateral amiotroacutefica una enfermedad neu-
ro degenerativa que hace que los pacien-tes sean incapaces de moverse o hablar Le dieron un equipo de seguimiento ocular que en ese momento necesitaba muchas intervenciones para calibrarlo y mantenerlo en funcionamiento He aprendido mucho con las limitaciones del dispositivo y empeceacute a desarro-llar mis propios prototipos y algoritmos con la esperanza de reducir los costes y mejorar su rendimiento y facilidad de uso Hacia el final de mi doctorado me encontraba experimentando con el con-trol de robots terrestres (sillas de ruedas y pequentildeas UGV) a traveacutes de la mirada fue cuando me compreacute un X2
Tras graduarse desarrolleacute un soft-ware de percepcioacuten para los robots que manipulasen material industrial Luego acepteacute un puesto en la facultad de mi universidad y ahora me dedico a la ense-ntildeanza Me encanta mi trabajo y me da motivos para seguir aprendiendo nuevas teacutecnicas y experimentar con nuevos pro-ductos comerciales Despueacutes de todo ninguacuten estudiante quiere aprender el funcionamiento interno de un sistema integrado que fue popular hace 10 antildeos
iquestQueacute te motivoacute a crear la popular imagen de edicioacuten Roboacutetica en los foros ODROID
La mayor parte de mi trabajo re-quiere Linux OpenCV Point Cloud Library y ROS Cuando compreacute el X2
Un poco de turismo por el mundo entero aquiacute estaacute Chris en el partenoacuten en Grecia me di cuenta que configurar mi entorno base era maacutes complicado de lo que yo es-taba acostumbrado Investigue bastante y logre encontrar soluciones a cada uno de los problemas de compilacioacuten e ins-talacioacuten que me iba encontrando en el camino y al final disponiacutea de una buena y estable imagen con toda la configura-cioacuten que deseaba Hice una backup de la tarjeta SD ldquopor si acasordquo y un diacutea decidiacute publicarla en los foros con el fin de darle las gracias a la comunidad por haberme ayudado con sus consejos e ideas Em-peceacute a recibir gran cantidad de respuestas en el hilo original y seguiacute respondiendo a las preguntas como lo hariacutea hecho la comunidad conmigo Poco despueacutes de publicar la imagen X2 compreacute un U2 y modifiqueacute la misma imagen y la pub-lique como lo hice con la anterior La gente de Hardkernel continuaba haci-endo productos nuevos e innovadores y en poco tiempo recibiacutea solicitudes para trasladar la imagen a otras placas
Me sorprendioacute bastante que mis imaacutegenes crecieran en popularidad de la forma en que lo hicieron Hardkernel me envioacute algunas cosas gratis como par-te de su regalo mensual y todo empezoacute desde alliacute Hardkernel y la comunidad ODROID en general han sido de gran ayuda para mi trabajo e intento liberar nuevas imaacutegenes como versiones oficia-les de Ubuntu y nuevos productos que estaacuten accesibles y puestos a disposicioacuten de todos
CONOCIENDO A UN ODROIDIAN
ODROID MAGAZINE 33
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
iquestQueacute aficiones e intereses tienes aparte de los ordenadores
Soy un mecaacutenico amater y aficionado a la creacioacuten de prototipos Reciente-mente he estado trabajando en varias maacutequinas CNC (impresoras 3D rout-ers fresadoras tornos) Estoy muy con-tento con las creaciones que he realizado hasta el momento y teniendo un garaje lleno de equipos de fabricacioacuten se estaacuten volviendo maacutes y maacutes realistas cada diacutea Tambieacuten estoy experimentando con meacute-todos de fabricacioacuten tecnoloacutegicamente menos avanzados como la madera y fundicioacuten de metales Baacutesicamente lo uacutenico que hago es hacer cosas
iquestEstaacute involucrado en otros proyectos informaacuteti-cos a parte de ODROID
He hecho algunas contribuciones miacutenimas (un par de correcciones de e-rrores menores) a Point Cloud Library Como parte de mi trabajo como profesor universitario asigno y oriento nuestros proyectos de alto nivel Estos cambian cada semestre y tienden a impulsar proyectos basados en sistemas integrados y de roboacutetica Pongo mucho eacutenfasis en las habilidades praacutecticas en mis clases y me paso la mitad del tiempo haciendo demostraciones y dando charlas teacutecni-cas sobre nuevos y excitantes aparatos (ODROIDs impresoras 3D visioacuten por ordenador) Me gusta ver los conceptos
que aprenden mis alumnos imple-mentando sus proyectos finales y continuacuteo haciendo y probando siste-mas en mi tiempo libre y asiacute siempre tengo algo nuevo que ensentildear
iquestQueacute tipo de innova-ciones de hardware te gustariacutea en futuras placas Hardkernel
Me gustariacutea ver algunos progresos en la GPU en particu-
lar con Linux Una de mis inquietudes es la programacioacuten en paralelo con las GPU multinuacutecleo mi uacutenica experiencia real en esta aacuterea es el kit de herramientas NVIDIA CUDA Hardkernel ha hecho buenos progresos en esta aacuterea y estoy de-seando ver coacutemo se desarrolla esto
iquestQueacute consejo le dariacuteas a alguien que quiere aprender maacutes sobre programacioacuten
Comenzar con un lenguaje que tenga muchos ejemplos online y tal vez algo de herramientas GUI La mayoriacutea de las personas que se inician en la program-acioacuten quieren hacer una aplicacioacuten GUI como primer programa tras la aplicacioacuten por consola ldquoHello Worldrdquo por excelen-cia pero esto puede ser complicado y engorroso para alguien que no estaacute fa-miliarizado con los IDEs makefiles compiladores etc Me gusta mucho el entorno de trabajo NET con C por lo que hacer una GUI y la mayoriacutea de las tareas en un entorno de Windows es bas-tante simple Python es un buen lengua-je de partida pero creo que una buena formacioacuten en C ++ es algo que separa a un profesional del resto
Lo maacutes importante es no preocuparse por romper algo Cuando estaacutes empezan-do con la programacioacuten o incluso con el desarrollando integrado es faacutecil romper cosas A veces se rompe el coacutedigo a veces se rompe el hardware pero si no rompes algo es que no estaacutes aprendiendo nada
CONOCIENDO A UN ODROIDIAN
ODROID Talk Subreddit
httpwwwredditcomrodroid
iexclODROID Magazine estaacute ahora en Reddit
Como ha viajado por todo el mundo aquiacute podemos encontrar a nuestro experto en roboacutetica en shanghai
ODROID MAGAZINE 34
top related