Desarrollo de Juegos Java: Creando diversión con tu ODROID

Cosas que necesitarás (Usa tu proveedor ODROID más cercano) -

  • ODROID-N2 ~ 60$ - 70$
  • Carcasa ODROID-N2: 4$
  • Fuente de alimentación ODROID-N2: 6$
  • eMMC (elije entre 32 GB o 64 GB): ~ 27$ - 40$, o
  • microSD (If you choose to use 16GB, 32GB or 64GB): ~ $8 - $14
  • Adaptador microSD a USB: 11$
  • Adaptador eMMC a USB: 10$
  • Módulos WIFI (Módulo 0, 4 o 5A - Si no tiene una conexión a internet por cable): ~ 5$ - 8$
  • Kit de ajustes (placa de conexión, LED, conectores, botones, resistencias): 16$
  • Ratón y teclado USB
  • Monitor HDMI o TV
  • Cable HDMI
  • Conexión a Internet

Introducción y objetivos

¿Alguna vez has querido hacer tus propios videojuegos? Pues has venido al lugar correcto. Esta serie de tutoriales te mostrará cómo crear tus propios juegos con un coste muy bajo. Puedes desarrollarlos y jugarlos en tu pequeño ordenador, el increíble ODROID-N2. ¡Espera hay más! También ganarás experiencia trabajando con Linux, configurando un ordenador de placa reducida, escribiendo código en Java, trabajando con IDE y accediendo a pines E/S de propósito general para controlar realmente tus juegos. Sí, has leído bien, esta serie de tutoriales te mostrará cómo controlar tu propio juego usando una placa de pruebas, conectores y algunos interruptores. Ahora sé que existen muchas API de juegos diferentes y potentes herramientas de desarrollo de juegos como Unity, aunque a menudo, los principiantes no solo tienen que aprender a programar videojuegos, sino también a programar en general, y luego además aprender a usar la herramienta de desarrollo de juegos. Eso es demasiado aprender y puede imponer un poco. Afortunadamente, hay muchos aspectos del desarrollo de los juegos que son prácticamente universales; como los bucles de juegos, gestión de gráficos y recursos de juegos. Incluso los IDE se están volviendo cada vez más comunes ofreciendo características e interfaces muy similares para el desarrollo de software. Esta serie de tutoriales parte de la premisa de no sabes nada sobre programación y te mostrará cómo empezar desde cero para crear tu propio entorno de desarrollo, configurarlo y escribir tu propio código. Hay mucho que asimilar y tenemos que cubrir muchas cosas, de modo que iremos paso por paso en cada tutorial. No profundizaremos en ciertos temas. Por ejemplo, te mostraré un código y te enseñare cómo usarlo y ejecutarlo, pero no profundizaré en el lenguaje de programación Java, ya que convertiríamos este artículo en un libro bastante extenso. Sin embargo, te daré algunas nociones básicas para que continúes por tu cuenta e investigues ciertos temas como mejor te parezca. Bueno, esto es lo fundamental, empecemos.

Repasemos las cosas que necesitarás

Ahora tenemos muchas opciones para configurar el ODROID-N2, así que repasaremos las más recomendadas y también las otras que son igualmente aceptables. La configuración más baja que recomendamos cuesta alrededor de unos 120$ sin incluir el envío. La mejor configuración cuesta alrededor de unos 140$. Necesitarás un monitor o televisor HDMI para usarlo con tu placa de desarrollo ODROID-N2 y un ratón y teclado. Puede usar cualquier ratón y teclado USB antiguos. Configuración 1: Esta es la configuración más recomendada por la estabilidad y la velocidad que ofrecen los módulos eMMC. Recomendamos usar un módulo eMMC de tamaño decente como módulo de arranque del sistema operativo y usar una tarjeta microSD para copias de seguridad y almacenamiento de archivos. Tienen enlaces a módulos eMMC de diferentes tamaños y tarjetas microSD arriba. También puedes elegir entre un ODROID-N2 de 2GB o 4GB de RAM. La versión de 2GB funcionará bien, pero si quieres sacarle el máximo partido, la versión de 4GB es la mejor opción. Recomendamos utilizar al menos un módulo eMMC de 32 GB como módulo de arranque del sistema operativo y contar con 16 GB a 64 GB de almacenamiento de respaldo en forma de microSD. Configuración 2: esta configuración funcionará bien pero no cuenta con el rendimiento y estabilidad que ofrece el uso de un módulo eMMC. En esta configuración, usarías una tarjeta microSD como módulo de arranque y sistema de almacenamiento de archivos. Si optas por esta configuración, te recomendamos que compres una segunda tarjeta microSD para hacer una copia de seguridad de tus archivos y hacerte con un convertidor microSD a USB para que puedas acceder a los archivos en cualquier ordenador y en el ODROID-N2. En el principio de este artículo tienes una carcasa ODROID-N2 que realmente es excelente disponible en Hardkernel. Yo tengo pensado hacerme con 2. Accederemos a los pines GPIO de la placa ODROID-N2 y tienes la opción de abrir un puerto de acceso en la carcasa para acceder fácilmente a los pines. Sin embargo, es posible que quieras mantener el dispositivo completamente cerrado en ciertas situaciones, tener una segunda carcasa te permitirá cambiar fácilmente la parte superior para que pueda usar los pines GPIO y la otra para mantener el dispositivo completamente cerrado y protegido. De modo que por menos de 150$, tendrás un ordenador basado en Linux completamente funcional para utilizarlo como sistema de desarrollo para juegos, si dispones de una pantalla/TV HDMI un ratón y un teclado USB. Si necesitas comprar el resto de componenetes, el precio variará, pero podrías empezar a programar por menos de 350$ si compra a un buen precio una pantalla/TV. De acuerdo, ahora que tenemos hecha esa parte del camino, empecemos a configurar el sistema operativo en el módulo eMMC o tarjeta microSD. Voy a proporcionar instrucciones para MS-Windows, Mac y Linux. En realidad, es muy simple y el proceso es casi exactamente el mismo para todos. Necesitarás acceso a otros ordenadores para realizar este paso, aunque también te mostraré cómo usar su ODROID-N2 para configurar un nuevo módulo eMMC o tarjeta microSD para el ODROID-N2. Si no tienes acceso a otro ordenador para preparar tu módulo eMMC o tarjeta microSD, tendrás que comprar uno de los módulos eMMC o tarjetas microSD preinstalados de HardKernel, que hemos mencionado con anterioridad. Te recomiendo que compres una tarjeta microSD ODROID-N2 de 16GB y la uses para configurar un módulo eMMC personalizado que usaremos para esta serie de tutoriales. También puedes obtener la tarjeta microSD de 16GB y usarla para configurar una tarjeta microSD más grande como módulo de arranque. Con estas opciones, deberías poder poner en funcionamiento tu entorno de desarrollo sin tener acceso a otro ordenador

Montar tu ordenador ODROID-N2

En este paso, montaremos el ODROID-N2 y lo prepararemos para crear nuestro módulo de arranque microSD o eMMC personalizado. Colocar el ordenador de placa reducida y armar la carcasa es muy simple. Este es uno de los mejores diseños de carcasa que he visto en mucho tiempo. Está diseñada para no romper ni rasgar el practico en absoluto. Simplemente coloca el ODROID-N2 en la base metálica de la carcasa. Esta actúa como disipador de calor, ¡ingenioso! Apriete suavemente los tornillos hasta que estén firmemente apretados, no los apriete demasiado. Una buena configuración es lo que estamos buscando. Echemos un vistazo a la carcasa y a la placa

Figure 1
Figura 1

Siguiente diapositiva con el frontal de la caja. Asegúrese de tener las guías frontales de la carcasa alineadas con la pequeña cresta metálica en la parte inferior de la caja.

Figure 2
Figura 2

Ahora, si has optado por comprar dos carcasas ODROID-N2, quizás quierqas romper el pequeño panel GPIO superior de la parte posterior de la carcasa. Esta es la parte de la carcasa más extensa que tiene una "puerta". Ésta te permitirá trabajar en la sección GPIO de este tutorial con el ODROID-N2 protegido. Si no, no te preocupes, simplemente dejaremos a un lado la carcasa por ahora. Asegúrate de no tener bebidas ni gatos cerca de tu ODROID-N2 mientras estés trabajando. Recomendamos que compre una tarjeta microSD de arranque de Hardkernel y la uses para crear el sistema operativo Linux personalizado que usaremos en esta serie de tutoriales. Cuando digo personalizado simplemente me refiero a que podemos elegir la versión de las imágenes del sistema operativo Linux disponibles para el ODROID-N2 que queremos usar y de paso adquiriremos experiencia sobre el montaje de módulos eMMC de arranque y tarjetas microSD.

Figure 3
Figura 3

La imagen de arriba muestra el ODROID-N2 con una tarjeta microSD de arranque Hardkernel y el interruptor del sistema de arranque configurado en la modalidad MMC. Ten en cuenta que la configuración MMC se usa tanto para los módulos eMMC como para una tarjeta microSD. La placa otorga mayor prioridad a los módulos eMMC que las tarjetas microSD. De esta manera, si tiene ambas configuraciones, siempre intentará iniciar el módulo eMMC en primer lugar. Me gustaría reiterar que estamos creando a propósito nuestro propio módulo eMMC de arranque o tarjeta microSD porque queremos hacerlo en cualquier momento que queramos. Obviamente ya contábamos con una tarjeta microSD de arranque, la de HardKernel, pero solo la usaremos como punto de partida para utilizar el ODROID-N2 y crear nuestros propios sistemas de arranque. Ahora que tenemos la configuración del ordenador, vamos a encenderlo y entrar en nuestro escritorio Linux. Ubicaremos y descargaremos una imagen específica de Ubuntu Linux para escribirla en nuestro módulo eMMC o tarjeta microSD, sea cual sea el camino que decidas tomar. Si tiene acceso a un ordenador y no estás montado tu módulo de arranque personalizado en el ODROID-N2, simplemente sigue los pasos con tu navegador favorito y me aseguraré de mostrarte cómo escribir en el dispositivo de almacenamiento que hayas elegido en Windows o Mac .

Figure 4
Figura 4

Necesitarás una conexión a Internet para esta parte. Si no tienes acceso a un cable de Internet para conectarlo a tu ODROID-N2, compra un módulo WIFI, y ya estarás listo. Si no está seguro de cuál obtener, simplemente carga la página del producto y observa qué tipos de WiFi admite cada módulo. He visto que el más barato, el Módulo WiFi 0, funciona bien y no ocupa mucho espacio en los puertos USB del ODROID-N2. Simplemente conecta el módulo a un puerto USB disponible mientras tiene tu sistema arrancado y ejecutando Ubuntu MATE. Debería poder seleccionar el icono de WIFI en la esquina superior derecha de la pantalla. Al hacerlo, obtendrás una lista de las redes WIFI disponibles de tu entorno local.

Figure 5
Figura 5

Selecciona tu red WiFi y se te pedirá que introduzca la información de autenticación requerida para el punto WiFi. La siguiente captura de pantalla muestra un mensaje similar con el que te encontrarás cuando te conectes al WiFi.

Figure 6
Figura 6

Ahora que has configurado tu conexión a Internet, abre un navegador y asegúrate de tener acceso a Internet.

Figure 7
Figura 7

Haz clic en el enlace wiki en la parte superior de la página.

Figure 8
Figur8 8

O puedes ir directamente a la wiki de ODROID introduciendo su URL (https://wiki.odroid.com/). Selecciona la opción ODROID-N2 de la barra de navegación lateral. Selecciona os_images y luego selecciona ubuntu. Debería ver una lista de fechas, haga clic en 20190812. Elija una opción de la lista de sitios espejo, yo utilicé el de la costa este (https://east.us.odroid.in/ubuntu_18.04lts/) ya que es el que está más cerca, en mi caso. Una vez en el sitio, tendrás que navegar hasta la imagen del sistema operativo ODROID-N2, haz clic en el enlace ODROID-N2.

Figure 9
Figura 9

Luego haz clic en el enlace ubuntu-18.04.3-4.9-mate-odroid-n2-20190812.img.xz. Puede tardar unos minutos en descargarse, ya que tiene un tamaño de alrededor de 1 GB, así que levántate, pasea al perro, dale de comer al gato o haz lo que sea para matar el tiempo unos minutos.

Figure 10
Figura 10

Además, como cualquier buen programa de cocina, la comida que estamos preparando ya está preparada, por lo que el enlace directo a la imagen del sistema operativo que queremos es, ubuntu-18.04.3-4.9-mate-odroid-n2-20190812.img.xz . Una vez se haya completado la descarga, veras una ventana emergente como la que se muestra a continuación. Esto tiene que ver con que Ubuntu MATE detecte el tipo de archivo y piensa que desea actualizar su módulo eMMC o tarjeta microSD actual.

Figure 11
Figura 11

Selecciona Cancelar y cierre la ventana para volver al navegador. Ahora que tiene una copia de la imagen del sistema operativo descargada, es hora de pasar al siguiente paso. Lee a continuación y elige tu ruta, la ruta recomendada tiene mejor rendimiento y confiabilidad, aunque puede ser algo más costosa. Elige sabiamente.

  • Si tienes una microSD de arranque Hardkernel y piensas usar un módulo eMMC (recomendado), continua con la Sección 4.
  • Si tienes una microSD de arranque Hardkernel y tienes pensado usar una tarjeta microSD, continua con la Sección 5.
  • Si tienes un ordenador y estás creando un módulo eMMC o una tarjeta microSD: Sigue junto con la Sección 4 para módulos eMMC, o la Sección 5 para tarjetas microSD y encontrará información sobre cómo montar el módulo de arranque usando Windows o MacOS en la parte inferior de esa sección.

Configura tu ODROID-N2 con un módulo eMMC

Para este paso, necesitarás tu módulo eMMC y un adaptador Hardkernel eMMC a USB. Coloca tu módulo eMMC sobre una superficie seca, libre de energía estática, de modo que el lado del chip quede hacia arriba.

Figure 12
Figura 12

Ten en cuenta la muesca blanca de la esquina del módulo eMMC. Ésta se alineará en el mismo lado, izquierdo o derecho, con el círculo blanco (o muesca) del adaptador eMMC a USB. No se alinea con la esquina exacta, solo al lado.

Figure 12
Figura 13

Coloca con cuidado el pequeño conector negro del módulo eMMC en el conector negro del adaptador eMMC a USB. Puedes girar el módulo eMMC en el adaptador y alinear los conectores. Presiona suavemente hacia abajo y los dos conectores se juntarán suave y ligeramente. Es decir, has montado con éxito el módulo eMMC en el adaptador. Ahora conecta tu adaptador eMMC a USB en tu ODROID-N2, tal y como se muestra a continuación.

Figure 14
Figura 14

Ahora estás listo para empezar a escribir una imagen del sistema operativo en el módulo eMMC, que cubriremos en los próximos pasos. Tienes libertad de omitir cualquier paso microSD que no te sea de aplicación. Siempre puedes volver y buscar cualquier información que necesites. Describiré diferentes formas de escribir la imagen del sistema operativo en el módulo de memoria utilizando diferentes entornos. El proceso es el mismo para un módulo eMMC o una tarjeta microSD.

Configura tu ODROID-N2 con una tarjeta microSD

Para este paso, necesitarás un objetivo, una nueva tarjeta microSD de arranque y un adaptador microSD a USB. Simplemente conecta tu tarjeta microSD al adaptador USB y luego conecta el adaptador a tu ODROID-N2.

Figure 15
Figura 15

¡Eso es! Ahora estás listo para empezar a escribir una imagen del sistema operativo en tu tarjeta microSD. Detallare diferentes formas de escribir la imagen del sistema operativo en el módulo de memoria utilizando diferentes entornos. El proceso es el mismo para un módulo eMMC o una tarjeta microSD.

Escribir en su módulo de memoria usando Linux, Windows o Mac

Este paso detalla la escritura en tu módulo eMMC o tu tarjeta microSD. En este punto, el proceso es el mismo para ambos. Si has conectado tu módulo eMMC o tarjeta microSD, expúlsela. Vamos a ver cuál es el dispositivo en Linux para el módulo de memoria, queremos detectar ese nuevo dispositivo y no escribir accidentalmente en nuestra tarjeta microSD de arranque de Hard Kernel. Para este paso, tendrás que abrir un terminal. En la parte superior izquierda de la pantalla, aparece la lista de aplicaciones y utilidades. Haz clic en Herramientas del sistema, luego ubica la entrada del programa MATE Terminal, tal y como se muestra a continuación. Haz clic en él y tendrás una ventana de terminal para trabajar.

Figure 16
Figura 16

En el terminal, escribe el siguiente comando:

$ sudo fdisk -l
Ten en cuenta la lista de dispositivos de disco que se muestran. Ahora conecta tu módulo de memoria y ejecuta el comando nuevamente. Anota la nueva entrada en la lista o cópiala y pégala en un documento de texto. Esto nos asegura que escribiremos en el módulo de memoria adecuado. A los efectos de este tutorial, supongamos que el dispositivo es dev/sdx. A continuación, desmontaremos el dispositivo utilizando algunos comandos de terminal: Desmonta las particiones ejecutando:
$ sudo umount /dev/sdx*
Puede dar un error diciendo que el disco no está montado, es normal. Ahora escribiremos el contenido del archivo de imagen en la tarjeta SD ejecutando el siguiente comando.
$ sudo dd bs=1M if=/path/to/file/your_image_file_name.img of=/dev/sdx
Si tu archivo tiene una extensión .img.xz en lugar de una extensión .img, puede hacer clic con el botón derecho en el archivo en MATE utilizando las operaciones normales de archivo y extraer el archivo .img. También puedes usar el siguiente comando para realizar ambas operaciones en un solo paso.
$ sudo xz -d < /path/to/file/your_image_file_name.img.xz - | \
dd of=/dev/sdx
Recuerda en este caso /path/to/file/your_image_file_name.img.xz o /path/to/file/your_image_file_name.img es la ruta de acceso a ubuntu-18.04.3-4.9-mate-odroid-n2-20190812.img El archivo .xz que queremos escribir y /dev/sdx es el nombre del dispositivo que vimos anteriormente. Puedes navegar hasta donde se encuentra el archivo usando el escritorio MATE. Haz clic con el botón derecho en la ventana y selecciona el comando Abrir terminal para abrir una terminal en la ubicación del archivo de destino. En este caso, tus comandos de terminal serían:
$ sudo dd bs=1M if=your_image_file_name.img of=/dev/sdx
o
$ sudo xz -d < your_image_file_name.img.xz - | dd of=/dev/sdx
Deja que la operación se complete y tendrá un nuevo módulo de memoria de arranque nuevo para usar en tu ODROID-N2. Además, puedes seguir estos pasos para probar diferentes imágenes del sistema operativo ODROID-N2. Simplemetne mira en la página wiki (https://bit.ly/3a0xyXe) para ver otras opciones del sistema operativo y probar. Para nuestro objetivo, estamos listos para pasar al siguiente paso de este tutorial. Me tomaré un momento para monstrar otras formas de escribir la imagen en el módulo de memoria. Es importante tener en cuenta que el módulo eMMC y la tarjeta microSD se comportan igual en este momento. Linux simplemente los ve como un dispositivo de memoria para escribir.

Si estás trabajando en tu ODROID-N2, puedes usar un método GUI para escribir la imagen en el módulo de memoria que elijas. Una vez que el archivo de imagen haya terminado de descargarse, busca el archivo en tu carpeta de Descargas y haga clic derecho sobre él.

Figure 17
Figura 17

Selecciona la opción Open del Disk Image Writer. Debería ver una ventana emergente similar a la que se muestra a continuación.

Figure 18
Figura 18

El destino correcto para escribir la imagen. AVISO: ¡Tenga mucho cuidado, asegúrate de elegir el módulo de memoria de destino y no la tarjeta SD de arranque!

Escribir una imagen del sistema operativo con un Mac

Para escribir el archivo de imagen del sistema operativo con una Mac, te recomendamos que te hagas con un gran software gratuito, Balena Etcher (https://www.balena.io/etcher/). Probablemente también podrías ejecutar los comandos de Linux que hemos mencionado con anterioridad en un terminal en Mac, pero vamos a hacer algo nuevo. Descargate e instala Balena Etcher. El software permite escribir directamente los archivos .img.xz para que no tenga que preocuparte por descomprimir la imagen del sistema operativo. Localiza tu archivo de imagen de sistema operativo.

Nota: Las siguientes capturas de pantalla muestran como se escribe el archivo con el que estamos trabajando. El proceso es el mismo, no te preocupes.

Figure 19
Figura 19

A continuación, inicia Balena Etcher y responde a cualquier solicitud de privilegios que aparezca

Figure 20
Figura 20

¡Comprueba bien que vas a escribir en el dispositivo correcto y que tiene el tamaño aproximado correcto!

Figure 21
Figura 21

Comienza a escribir en el dispositivo y espera a que se complete el proceso.

Figure 22
Figura 22

Escribir una imagen del sistema operativo en Windows

Para escribir el archivo de imagen del sistema operativo en un Windows, te recomiedo hacerte con el gran software gratuito, Win32 Disk Imager (https://bit.ly/2VqBCMa). Ahora, si está ejecutando Ubuntu Linux en Windows 10, probablemente puedas ejecutar tambien los comandos de Linux que hemos mencionado con aterioridad en un terminal. También puedes instalar la versión de Windows de Balena Etcher y seguir sus instrucciones. Quisiera mostrarte una nueva forma y asi tener un montón de opciones y herramientas para crear tus propios módulos de memoria de arranque. Tendrás que descomprimir el archivo .img.xz antes de escribir en el módulo de memoria. Descargate una copia gratuita de 7-Zip (https://www.7-zip.org/). Instálalo y úsalo para descomprimir el archivo .img.xz, debería contar con un nuevo arvhivo .img en unos minutos.

Una vez que tu archivo .img esté descomprimido y listo para usarse, abre Win32 Disk Imager y navega hasta el archivo .img que deseas escribir en tu tarjeta microSD. AVISO: ¡Asegúrate de seleccionar la letra de unidad adecuada a la hora de escribir! Si tienes alguna duda, simplemente expulsa la tarjeta microSD y toma nota de letras de unidad que desaparecen. Cualquier tarjeta, especialmente si tiene un sistema operativo de arranque, se montará como dos letras de unidad. Simplemente elige uno de ellas. La siguiente captura de pantalla muestra Win32 Disk Imager en acción, se estás utilizandolo para escribir un archivo .img diferente, simplemente ignora esa parte.

Figure 23
Figura 23

Una vez que tengas todo configurado, haga clic en el botón Write en la parte inferior de la ventana y deja que el software haga su trabajo. Ten cuidado de hacer clic en el botón correcto. En ocasiones, puede resultar confuso la dirección en la que va la operación de lectura o escritura, especialmente si has grabado algunas tarjetas seguidas utilizando diferentes operaciones. Habrá algún texto que explique qué hace exactamente el botón en el que estás a punto de hacer clic. Siempre lo leo y compruebo que sea realmente lo que quiero hacer.

Configurar tu entorno de desarrollo

Ahora que hemos creado un nuevo módulo de memoria microSD o eMMC de arranque personalizado, cualquiera que hayas elegído, tenemos que actualizar el sistema operativo e instalar algún software antes de que podamos comenzar a desarrollar. Arranca el ODROID-N2 con tu nuevo módulo de memoria y coloca la tarjeta microSD de arranque de Hardkernel en un lugar seguro. Primero vamos a actualizar el sistema operativo y el software. Haremos esto de dos maneras diferentes. En primer lugar, utilizarás las herramientas del sistema de escritorio MATE. Busca la herramienta Software Updater en Menu -> Administration -> Software Updater.

Figure 23.5
Figura 23.5

Haz clic en el botón Update y deja que se complete el proceso. En ocasiones, una actualización puede requerir que presiones un botón, por lo que es una buena idea mantener la ventana visible y también tener los detalles visibles. Deberías ver una ventana como la siguiente mientras se ejecuta la actualización.

Figure 24
Figura 24

Una vez que se complete, ejecutaremos una actualización desde la línea de comandos. Este paso hace más o menos lo mismo que la herramienta de actualización del sistema, pero es bueno saber cómo ejecutar una actualización desde un terminal, así que vamos a hacerlo. Abre el terminal como lo hemos hecho anteriormente y ejecuta los siguientes comandos. La contraseña por defecto del superusuario es odroid. Copia y pega el siguiente comando en la ventana de terminal y presiona intro.

$ sudo apt-get update -y; sudo apt-get upgrade -y; sudo apt-get \
autoremove -y;
Una vez hecho esto, querremos instalar algo de software y lo podemos hacer en su mayor parte desde el terminal. Vamos a instalar gparted, para administrar las particiones y unidades, gimp, para la gestión de imágenes, default-jre, para que podamos usar el entorno de ejecución de Java y chromium-browser, para agregar un navegador Chrome al sistema. Copia y pega el siguiente comando en la ventana de terminal y presiona intro
$ sudo apt-get install gparted -y; sudo apt-get install gimp -y; \
sudo apt-get install default-jre -y; \
sudo apt-get install chromium-browser -y;
El siguiente software que necesitamos instalar es el gran IDE de Java, https://www.netbeans.org. Enciende tu navegador y navega hasta el sitio web de netbeans (https://www.netbeans.org).

Figure 25
Figura 25

Haz clic en el botón download y aparecerá una pantalla con una lista de versiones. Dirigete a la última versión estable y haga clic en el botón download, tal y como se muestra a continuación.

Figure 26
Figura 26

Esto te llevará a una página con algunos enlaces diferentes para la versión de netbeans que has seleccionado. Querremos descargar una versión comprimida de archivos binarios. Haz clic en el enlace binarios y deja que se descargue el IDE.

Figure 27
Figura 27

Dirigete a la carpeta Descargas y copia y pega el archivo zip en una nueva carpeta llamada install_zips, crea esta carpeta en tu directorio de inicio. Una vez que el archivo haya terminado de copiarse, descomprímelo haciendo clic derecho en el archivo y seleccionando la opción de descomprimir del menú. Crea otra carpeta nueva en tu directorio de inicio llamada aplicaciones. Mueve la versión sin comprimir de netbeans a este directorio. Abre la carpeta, busca la carpeta bin, ábrela y haz clic derecho en el archivo llamado netbeans. Elije la opción "pin to desktop". Ahora tenemos un enlace para abrir nuestro IDE de netbeans. pero se ve un poco tosco. Tonemos un icono atractivo para ello. Dirigete con tu navegador a  https://commons.wikimedia.org/wiki/File:Apache_NetBeans_Logo.svg. Guarda el archivo de icono netbeans de la página que se ha cargado

Figure 28
Figura 28

Haz clic derecho en el acceso directo del escritorio de netbeans. Haz clic en el icono y busca el nuevo icono de netbeans que acabas de descargar. Elíjelo como icono del acceso directo del escritorio. Ahora tenemos un acceso directo IDE mas adecuado. Abre el IDE de netbeans y deja que el IDE instale los módulos que necesite. Es posible que también tengas que hacer esto al abrir un nuevo proyecto por primera vez, simplemente deja que el IDE instale los módulos que necesita.

Figure 29
Figura 29

Configurar una partición de intercambio

En este paso, activaremos una partición de intercambio swap y configuraremos nuestro ODROID-N2 para tener siempre activado el espacio de intercambio en el arranque. Esto puede ayudarnos con el IDE y la memoria que necesitaremos al escribir juegos para el ODROID-N2 en el ODROID-N2. En primero lugar comprobaremos si tenemos algún espacio de intercambio habilitado. Ejecuta el siguiente comando en el Terminal MATE, Menú -> System Tools -> MATE Terminal. Es posible que desees hacer clic con el botón derecho en la opción de menú correspondiente para anclar al escritorio y así tener un acceso directo rápido al terminal cuando lo necesites.

$ sudo swapon --show
Si no se muestra texto, es que no tienes habilitado el espacio de intercambio swap. Si ve alguna información impresa, tiene habilitado el espacio de intercambio y puedes omitir el resto de este paso. Cree un nuevo archivo de intercambio en la raíz de la unidad de arranque ejecutando el siguiente comando.
$ sudo fallocate -l 1G /swapfile
Ajusta los permisos en el archivo de intercambio para que sea seguro.
$ sudo chmod 600 /swapfile
Habilita el archivo como un nuevo archivo de intercambio.
$ sudo mkswap /swapfile
Activa el archivo de intercambio.
$ sudo swapon /swapfile
Para habilitar el archivo de intercambio en cada arranque, edita el archivo fstab y agrega la siguiente entrada:
$ sudo nano /etc/fstab
Copia y pega la siguiente línea en la parte inferior del contenido actual del archivo.
/swapfile swap swap defaults 0 0
Reinicia el sistema ejecutando el siguiente comando, sudo shutdown -r now, ¡Y vuala! Ahora tenemos una partición de intercambio activa. Cuando el sistema vuelva a funcionar, puedes verificar que el archivo de intercambio esté activado ejecutando sudo swapon --show. Debería ver una entrada tras ejecutar el comando. De lo contrario, vuelva a realizar el proceso y asegúrate de ejecutar los comandos correctos en orden.

Asignación de los pines GPIO específicos

En este paso utilizaremos el terminal de nuestra placa de pruebas para calcular exactamente los números de los pines GPIO, tal como se expresan en la placa de pruebas. Ahora puedes consultar la documentación para ver dónde está cada pin, pero dependiendo del sistema operativo, puedes encontrarte en una situación en la que los números de pin no coinciden con la documentación. Es divertido conectar un LED al ODROID-N2 y hacer que la luz parpadee

Ahora tendrás que conectar tu placa de prueba al ODROID-N2. Simplemente conecta el conector a los pines de expansión GPIO de la placa. Asegúrese de que esté orientada de la manera correcta, la franja roja en el cable plano debe alinearse con el lado de los pines GPIO que tienen las etiquetas 1 y 2.

Figure 30
Figura 30

Vamos a configurar un circuito simple usando 1 resistencia, 1 LED y 3 puentes usando el kit de ajustes de Hardkernel. Vamos a configurar el siguiente circuito. Sigue la imagen y el diagrama que aparecen a continuación. Tu pin puede ser diferente. Estoy usando el pin número 488 que esta asignado a la posición 7 en la placa de pruebas.

Figure 31
Figura 31

Figure 32
Figura 32

El siguiente diagrama de circuito es muy simple. El circuito tiene dos propósitos. Uno, permitir que el voltaje del pin controle el LED. Esto es manejado por la primera rama del circuito. Dos, permite que el voltaje del pin sea gestionado por un botón. Esto se usa para simular la entrada de un gamepad.

Figure 33
Figura 33

Sigue las imágenes y el diagrama y configura un circuito similar en tu placa de pruebas. Una vez que esté listo, vamos a ejecutar un script para localizar algunos pines viables.. Descargue el siguiente archivo de scripts GPIO (zip) file, https://bit.ly/32vO2Ek. Tiene múltiples scripts para trabajar con los pines GPIO. Una vez que se completa la descarga del archivo, descomprime el archivo zip y mueve los scripts btn_test, btn_prep y pin_finder al directorio de inicio. Limpia la carpeta de descarga moviendo todos los archivos zip a la carpeta install_zips que creamos anteriormente. Esto te dará una copia de seguridad de todos los archivos que necesitas para este tutorial. A continuación, vamos a consultar los archivos pin de GPIO para tener una idea de los números que nuestro sistema operativo Linux ha asignado a los pines. Esto nos dará un rango para trabajar. Vamos a realizar algunas pruebas para determinar qué pin está asociado con qué número GPIO. Ejecute el siguiente comando para ver los números de pin GPIO..

$ sudo ls /sys/class/gpio/
Deberías ver ciertos números al lado de los chips GPIO encontrados. Estos indican números iniciales de pin y pueden ser una indicación de un rango de pin.
/sys/class/gpio/gpiochip64/
/sys/class/gpio/gpiochip128/
Verás diferentes números, pero lo que indica es un rango de números de pin de 64 a 128 y posiblemente de 128 a algún número desconocido. Esto te dará una indicación de qué números GPIO usar cuando comience a buscar pines coincidentes. Ahora, abre un terminal y ejecuta el siguiente comando desde el directorio de inicio, nano pin_finder. Todos los archivos están configurados para funcionar con el número de pin 488 por defecto. Esto te puede funcionar, pero aún debe completar los siguientes pasos para saber cómo encontrar tus propios pines. Edita el texto de la parte superior del archivo, TMP = 488, y cambia el número por uno de los números del rango que identifiscaste anteriormente. O simplemente puedes subir a 489 e intentarlo. Escribe y guarda el archivo, Ctrl + O + INTRO, seguido de Ctrl + X. EjecutA el script con el siguiente comando.
$ sudo ./pin_finder
El script alternará entre el valor alto y bajo del pin de destino. Mueve el conector n. ° 1 de pin a pin, esperando 2 segundos en cada punto para ver si el LED parpadea. Si es así, has encontrado la ubicación del pin que coincide con el número de pin GPIO de Linux.

Figure 34
Figura 34

Cuando encuentre un pin parpadeante, escribe la posición en la placa de pruebas y el número de pin utilizado para encontrarla. Asegúrate de salir del script pin_finder con Ctrl + C cuando el LED esté apagado. Si pierdes el tiempo, simplemente inicia el script e intentalo nuevamente. Abre el btn_test con el comando nano ./btn_test. Edita la línea de la parte superior del archivo e introduce el número del pin que has encontrado. Escribe el archivo y salte con Ctrl + O seguido de Ctrl + X. Ejecuta el script btn_test así, sudo ./btn_test.

Mientras se ejecuta el script, mueve el botón y verás que la salida cambia de 0 a 1 y el LED se enciende y apaga. La siguiente imagen muestra el resultado del terminal durante este proceso.

Figure 35
Figura 35

Configurar un servicio para permisos GPIO

En este paso, configuraremos rápidamente un servicio en Linux que abrirá el pin GPIO que has localizado al usuario odroid para que no tengamos que escribir sudo cada vez que queramos usarlo, y para que nuestro programa Java pueda acceder también sin tener que ejecutar el comando sudo. Edita el script btn_prep usando nano como lo hemos hecho antes. Cambia el número en la parte superior del script al número GPIO que encontraste con el script pin_finder. Abre una terminal y ejecuta los siguientes comandos para fijar los permisos para los archivos prep del botón GPIO. Debes tener un archivo llamado btn_prep y custgpiosvc.service en tu directorio de inicio.

$ sudo chmod 755 ./btn_prep
$ sudo +x 755 ./btn_prep
$ sudo chmod 755 ./custgpiosvc.service
A continuación, copiaremos el script btn_prep al directorio /usr/bin/. Ejecuta el siguiente comando en la terminal. Asegúrate de estar en el directorio de inicio. Si necesitas volver al directorio de inicio, ejecuta estos comandos,
$ sudo cp ./btn_prep /usr/bin/
Ahora instalaremos el servicio systemd para que nuestro sistema establezca permisos para los archivos GPIO y que el usuario odroid pueda acceder a ellos sin ejecutar el comando sudo. Esto nos facilitará el acceso a los pines desde Java.
$ sudo cp custgpiosvc.service /etc/systemd/system && sudo systemctl start custgpiosvc
Comprueba que el servicio está funcionando con el siguiente comando:
$ systemctl is-active custgpiosvc
Deberías ver la palabra "active" como resultado. Para ejecutar el servicio cada vez que se inicie el sistema, deberáa ejecutar systemctl enable custgpiosvc. Ahora reinicia el sistema, introduce sudo shutdown -r ahora.

Configurar proyectos en Netbeans

En este paso, cargaremos el proyecto Java que necesitamos en el IDE de Netbeans y haremos algunos pequeños cambios en la configuración. Primero descargate la versión del proyecto que necesitaremos para este tutorial. Este proyecto se actualizará y será diferente a medida que avancemos en la serie de tutoriales, así que asegúrate de descargar un archivo similar del proyecto en el futuro si continúas.

Netbeans IDE Project v0.5.0 (https://bit.ly/2w7i70z)

El proyecto incluye muchos archivos Java y los revisaremos en un tutorial futuro, pero nos centraremos en un pequeño proyecto para interactuar con los pines GPIO del ODROID-N2. Haremos un análisis más profundo del código en el próximo tutorial. Y revisaremos la API del juego, también en el próximo tutorial, ¡Ya que vamos a trabajar con él para desarrollar algunos juegos!

Descomprime el proyecto una vez que finalice la descarga. Copia el archivo zip original en la carpeta install_zips. Mueve el directorio del proyecto resultante a una nueva carpeta en tu directorio de inicio. Asigna un nombre a la carpeta netbeans_projects. Ahora inicia netbeans y abre el proyecto haciendo clic en la opción de menú Archivo -> Abrir proyecto. Navega hasta la carpeta netbeans_projects que creastes y elije la carpeta MmgGameApiJava_v0-5-0. El proyecto se cargará en netbeans, deja que netbeans instale los módulos necesarios si aparece y te pide que lo hagas. Nos aseguraremos de que el proyecto tenga un ligero cambio de configuración. Haz clic derecho en el proyecto y selecciona la opción de propiedades similar a la que se muestra a continuación.

Figure 36
Figura 36

Asegúrate de que la propiedad Build -> Packaging -> JAR File esté establecida en el siguiente, dist/MmgGameApiJava.jar tal como se muestra a continuación.

Figure 37
Figura 37

¡Estamos listos para ejecutar nuestros programas Java y mostrar la conexión Java a los pines GPIO de Linux! Ha sido un tutorial largo y detallado para configurar nuestro entorno. Espero que hayas aprendido mucho, ciertamente has logrado un montón. Vamos a utilizar esta configuración para crear algunos juegos Java para el ODROID-N2 en el propio ODROID-N2 y usar los pines GPIO para controlar el juego con un simple pad de juego. Este tutorial ha sido el primer paso.

Lectura de pines GPIO con Java

En este paso lo uniremos todo y leeremos el estado de un pin GPIO usando Java, muy bueno. Ve al proyecto que acaba de cargar en netbeans, MmgGameApiJava. Expande la sección Source Packages, selecciona el paquete com.middlemind.OdroidGpio y amplialo. Selecciona el archivo OdroidGpio.java y ábrelo.

Figure 38
Figura 38

Cambia el número de pin GPIO junto a las nuevas líneas de GpioPin. Hay seis para manejar un D-Pad de 4 direcciones y 2 botones de entrada. Por ahora, fija el primer número, 488, en el número de pin GPIO que localizaste con pin_finder. Una vez hecho esto, haz clic derecho en el proyecto MmgGameApiJava y selecciona limpiar y compilar. Abre un terminal y navega al directorio de salida JAR usando el siguiente comando. $ cd ~/netbeans_projects/MmgGameApiJava_0-5-0/dist Asegúreate de que haya un nuevo archivo MmgGameApiJava.jar en el directorio ejecutando el comando, ls -al ./MmgGameApiJava.jar, en el terminal. Prepárate para ejecutar el programa, mientras se ejecuta vamos a alternar el LED y ver qué hace el programa Java. Asegúrate de que tu circuito esté configurado para funcionar con el número de pin que elegiste, verifica tus notas desde el paso pin_finder. Cuando estés listo, haz clic derecho en el archivo OdroidGpio.java y selecciona Run file, en el menú Mientras el programa se esté ejecutando, presiona el botón y manténlo presionado durante un segundo o dos, deberías ver ProcessAPress en la ventana de resultados cuando se presiona el botón tal y como se muestra a continuación.

Figure 39
Figura 39

Con esto concluye nuestro primer tutorial de esta serie: leer el estado de los pines GPIO en Java que se ejecutan en tu propio ordenador personal ODROID-N2 Linux. Es un buen comienzo y un excelente lugar para finalizar este primer tutorial. ¡Manténte al tanto!

Software and Scripts El software y los scripts utilizados en este tutorial se pueden descargar de los siguientes enlaces. Los enlaces también están en las distintas secciones del tutorial donde se necesiten. . Scripts GPIO  (https://bit.ly/2HUJXA1) Netbeans IDE Project v0.5.0 (https://bit.ly/2TguWxy)

Para comentarios, preguntas y sugerencias, visita el artículo original en  http://middlemind.net/tutorials/odroid_go/odroid_jgd_0.html.

Be the first to comment

Leave a Reply