Tabla de contenido:

The OreServer: un servidor de Minecraft dedicado para Raspberry Pi con indicador de reproductor LED: 9 pasos (con imágenes)
The OreServer: un servidor de Minecraft dedicado para Raspberry Pi con indicador de reproductor LED: 9 pasos (con imágenes)

Video: The OreServer: un servidor de Minecraft dedicado para Raspberry Pi con indicador de reproductor LED: 9 pasos (con imágenes)

Video: The OreServer: un servidor de Minecraft dedicado para Raspberry Pi con indicador de reproductor LED: 9 pasos (con imágenes)
Video: Proteger Regiones en Minecraft quitar PVP y mucho más! WorldEdit y WorldGuard 2024, Noviembre
Anonim

Por MrJymm Seguir Acerca de: Muchas ideas, nunca suficiente tiempo. Más acerca de MrJymm »

ACTUALIZACIÓN de julio de 2020: antes de comenzar con este proyecto, tenga en cuenta que se han realizado MUCHOS cambios y actualizaciones en las diversas herramientas de software que utilicé para crear esto hace más de dos años. Como resultado, muchos de los pasos ya no funcionan como están escritos. El proyecto aún se puede completar y sigue siendo muy divertido, pero espere tener que hacer sus propios retoques para que todo funcione. Algunas soluciones se pueden encontrar en comentarios recientes al final del instructivo. ¡Gracias y feliz minería

Si eres fanático de jugar Minecraft, probablemente hayas pensado en lo divertido que sería tener tu propio servidor personal para compartir con tus amigos. Mis hijos me preguntaban constantemente por su propio mundo compartido y, finalmente, su interés en Minecraft se combinó con mi interés en la Raspberry Pi, y nació la idea de OreServer.

Este proyecto le mostrará cómo configurar un servidor de Minecraft con una característica única y divertida: está construido para parecerse a un bloque de mineral y se ilumina con diferentes colores dependiendo de cuántas personas estén jugando actualmente en su mundo.

¡Pero no se detiene ahí! También haremos que el servidor sea accesible para cualquier persona con la edición para PC de Minecraft, para que pueda compartir la dirección de su servidor e invitar a amigos a su mundo. Funcionará las 24 horas del día, los 7 días de la semana, por lo que incluso si estás ocupado o fuera de casa, tus amigos pueden seguir construyendo. Y configuraremos copias de seguridad automáticas en caso de que ocurra una tragedia (ese cañón TNT sonaba como una buena idea en ese momento …) para que pueda reiniciar desde un trabajo de días anteriores.

Paso 1: Lista de piezas y herramientas

Lista de piezas y herramientas
Lista de piezas y herramientas

Estas son las piezas, las herramientas y el software que necesitará para completar este proyecto. Agregué enlaces como referencia, pero la mayoría de estos suministros están disponibles en varios proveedores, así que recójalos donde sea más fácil / barato para usted.

Partes:

  • Raspberry Pi 3 y fuente de alimentación

    Estos también están disponibles como un conjunto

  • Adaptador de ángulo recto micro USB
  • Tarjeta micro SD

    Mínimo 8 GB, pero se recomienda una tarjeta de alta calidad de 16 o 32 GB

  • Joya Adafruit Neopixel
  • Tres cables GPIO cortos
  • Filamento de impresión 3D plateado o gris (cualquier tipo)
  • Tornillos de 2,5 mm (x4)
  • Papel de pergamino o papel de seda blanco

Instrumentos:

  • Lector de tarjetas microSD
  • Equipo de soldadura
  • Destornillador pequeño
  • impresora 3d

Software:

  • Minecraft (Edición Java PC)
  • Raspbian Lite ISO

    NO es la versión "con escritorio"

  • etcher.io
  • Putty o un cliente de terminal SSH similar
  • Filezilla o cliente FTP similar

Paso 2: configura y prepara la Raspberry Pi

Configurar y preparar la Raspberry Pi
Configurar y preparar la Raspberry Pi
Configurar y preparar la Raspberry Pi
Configurar y preparar la Raspberry Pi
Configurar y preparar la Raspberry Pi
Configurar y preparar la Raspberry Pi
Configurar y preparar la Raspberry Pi
Configurar y preparar la Raspberry Pi

Antes de que podamos comenzar a instalar el servidor, debemos completar algunos pasos básicos de instalación y configuración en la Pi.

1. Prepare la tarjeta MicroSD

Primero, necesitamos poner el sistema operativo Rasbian en nuestra tarjeta MicroSD usando etcher.io.

  1. Inserte su tarjeta MicroSD en su lector de tarjetas y el lector de tarjetas en un puerto USB de su PC
  2. Ejecute etcher y use el botón Seleccionar imagen para cargar el ISO de Rasbian Lite
  3. Seleccione la tarjeta MicroSD para la unidad de instalación
  4. ¡Haga clic en Flash!

Cuando el proceso se complete, etcher desconectará la unidad MicroSD del sistema, pero necesitamos agregar un archivo más, así que simplemente desconéctelo y vuelva a conectarlo. La tarjeta ahora se leerá como una unidad etiquetada como "arranque". Copie un archivo en blanco llamado "ssh" en la unidad de arranque y luego desconecte la unidad MicroSD del sistema nuevamente. La tarjeta MicroSD ahora está lista para pasar a la Raspberry Pi.

** Si no puede descargar el archivo "ssh", es fácil crear el suyo propio simplemente cambiando el nombre de un archivo de texto en blanco. Asegúrese de eliminar la extensión ".txt". Cuando funcione, el icono quedará en blanco como en la captura de pantalla. **

2. Conéctese a la terminal de Pi

Ahora que el Pi tiene un sistema operativo, ¡enciéndalo!

  1. Conecte un cable Ethernet con cable y la fuente de alimentación a la Rasberry Pi. Aunque el Pi 3 tiene soporte Wi-Fi integrado, una conexión por cable es más robusta y preferible para nuestro servidor.
  2. A continuación, necesitamos recuperar la dirección IP de Pi de su enrutador. Este paso diferirá ligeramente según la marca de su enrutador; en mi caso, ingreso 192.168.1.1 en mi navegador para iniciar sesión en el panel de control del enrutador. Estará buscando una lista de clientes DHCP y una entrada llamada "raspberrypi". Tenga en cuenta la dirección IP asignada, en mi ejemplo es 192.168.1.115. Ahora también es una buena oportunidad para configurar la dirección IP como "reservada" o "permanente" para que no se le asigne una dirección diferente más adelante. Si tiene alguna dificultad con este paso, querrá consultar la documentación de su enrutador o el sitio de soporte para obtener más detalles.
  3. Ahora podemos abrir Putty, ingresar la dirección IP de la Pi en el campo "Nombre de host" y hacer clic en "Abrir".

Ahora debería ver una pantalla negra con "iniciar sesión como:". Esta es la terminal de su Pi, y es donde haremos el resto del trabajo de configuración del servidor. Recuerde, las pantallas de terminal son para teclados. Su mouse no será de mucha utilidad aquí.

3. Raspi-config

Para finalizar la configuración inicial, debemos iniciar sesión utilizando los valores predeterminados:

iniciar sesión como: pi

contraseña: frambuesa

Ahora podemos pasar por una configuración básica de la configuración predeterminada de Pi ingresando lo siguiente

sudo raspi-config

Necesitamos hacer varios cambios, y los mostraré en el mismo orden en que están numerados en la pantalla de configuración.

  1. Cambiar la contraseña de usuario: ¡esto es imprescindible! Todos conocen la contraseña predeterminada, así que cámbiela de inmediato.
  2. Opciones de red

    Nombre de host: de forma predeterminada, es "raspberrypi", pero si lo desea, puede cambiarlo para que sea más descriptivo

  3. -(ningún cambio)-
  4. Opciones de localización: si no se encuentra en el Reino Unido, querrá cambiarlas a su propio país. Mis ejemplos asumen que es Estados Unidos.

    1. Cambiar configuración regional: use la flecha hacia abajo para buscar una entrada para "en_GB" con un * al lado. Use su barra espaciadora para eliminar eso * y luego baje un poco más a "en_US. UTF-8" y nuevamente use la barra espaciadora para marcarlo con *.
    2. Cambiar zona horaria: configurar esto es importante para que nuestras tareas cronometradas funcionen correctamente
    3. Cambiar la distribución del teclado: es posible que pueda omitir esto, pero si se deja en el Reino Unido, hay algunos símbolos de teclado que se mueven
  5. Opciones de interfaz

    1. -(ningún cambio)-
    2. SSH: habilítelo para que pueda continuar usando Putty después de reiniciar el Pi.
  6. -(ningún cambio)-
  7. Opciones avanzadas

    1. Expandir el sistema de archivos: esto asegura que el Pi pueda usar todo el espacio disponible en la tarjeta SD
    2. -(ningún cambio)-
    3. División de memoria: cámbielo a 16 para liberar más memoria para el uso de Minecraft.

Ahora seleccione "Finalizar" y luego seleccione "Sí" para reiniciar.

Esto terminará su sesión en Putty. Simplemente espere un momento para completar el reinicio, luego abra Putty nuevamente y vuelva a conectarse a la dirección IP de Pi. ¡Recuerde usar su nueva contraseña!

Paso 3: instalar el servidor dedicado

Configurar el software del servidor es el paso más largo, pero también el más importante. Pasaremos mucho tiempo ingresando un montón de aburridos comandos de Linux. ¡No dejes que eso te intimide! Siempre que pueda copiar y pegar, podrá completar esta parte.

Un servidor de Minecraft es bastante complejo y ejecutarlo en una computadora tan pequeña como una Raspberry Pi requiere cierta optimización. Comencé con este fantástico tutorial de James Chambers, porque tiene varios consejos excelentes para maximizar el rendimiento del servidor. Voy a resumir su proceso de instalación a continuación y resaltar algunos cambios y actualizaciones que hice, pero le recomiendo que lea su página para obtener más detalles.

Ahora que ha vuelto a iniciar sesión con el "pi" predeterminado y su nueva contraseña, podemos comenzar a ingresar los comandos para instalar los archivos del servidor.

Importante: muchos de estos comandos son largos y complejos y sería muy complicado escribirlos en la ventana de la terminal. ¡Así que no lo hagas! Resalte el texto del comando en esta ventana, cópielo con ctrl-c, y luego en la ventana de su terminal simplemente haga clic derecho con el mouse para pegar el texto. ¡Mira, ese ratón es bueno para algo después de todo!

Durante el resto de este paso, copiará cada uno de los comandos en estos cuadros de texto de código.

Daré breves explicaciones de lo que estamos haciendo a lo largo del camino.

Empezaremos por actualizar nuestro software.

sudo apt-get update && sudo apt-get upgrade

Siempre que vea una solicitud de aprobación de instalación, escriba "y" y presione Intro para aceptar y continuar.

Minecraft se ejecuta en Java, pero nuestra instalación "Lite" de Rasbian no lo incluyó, así que vamos a verlo.

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense = accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808 /jdk-8u161-linux-arm32-vfp-hflt.tar.gz

Nota ** Cuando Java se actualiza a una versión más reciente, ese comando puede quedar desactualizado. Si recibe un mensaje de error, deberá actualizar el comando a la última versión. Visite la página de descargas de Java de Oracle, haga clic en el botón "Aceptar acuerdo de licencia" y luego haga clic con el botón derecho en el enlace al archivo linux-arm32 más reciente y seleccione copiar enlace. Deberá usar ese enlace actualizado para reemplazar el texto en el comando anterior, comenzando en http. **

Ahora podemos instalar los archivos Java que acabamos de descargar.

sudo mkdir / usr / java

cd / usr / java

Si tuvo que cambiar el enlace de descarga por una nueva versión, asegúrese de cambiar el número de versión en los siguientes comandos para que coincida.

sudo tar xf ~ / jdk-8u161-linux-arm32-vfp-hflt.tar.gz

sudo update-alternativas --install / usr / bin / java java /usr/java/jdk1.8.0_161/bin/java 1000

sudo update-alternativas --install / usr / bin / javac javac /usr/java/jdk1.8.0_161/bin/javac 1000

cd ~

Y finalmente, el evento principal que has estado esperando con tanta paciencia, instalemos el servidor de Minecraft. Esta es una versión especializada del servidor llamada Paper, y está llena de optimizaciones para mejorar el rendimiento.

papel mkdir

wget

descomprimir master.zip -d Paper

mv ~ / Papel / RaspberryPiMinecraft-master / * ~ / Papel /

papel cd

chmod + x start.sh

wget

java -jar -Xms512M -Xmx800M paperclip.jar

Ese último comando iniciará el servidor por primera vez y, después de unos momentos, recibirá un error que indica que debe aceptar el EULA. Abra el EULA con el siguiente comando:

nano eula.txt

Cambie la línea que dice "eula = false" por "eula = true". Guarde sus cambios presionando ctrl-x, luego Y, luego ingrese.

Nota ** James Chambers menciona un método para hacer overclocking de su tarjeta SD en este punto de su guía. Personalmente no he probado ese paso, porque requiere una tarjeta de alta calidad y la que tenía disponible para usar no es nada especial. Creo que el overclocking ciertamente mejoraría aún más el rendimiento, pero incluso sin overclocking, el servidor funciona lo suficientemente bien como para que no haya recibido quejas de los niños que juegan en él. **

Echemos un vistazo rápido a las Propiedades del servidor y hagamos un par de cambios.

nano server.properties

Hay una larga lista de cosas que puede cambiar sobre su servidor aquí, como personalizar el nombre del servidor y MOTD, cambiar el modo de juego o habilitar PvP o bloques de comando. Puede cambiar las cosas según sus preferencias ahora, o puede abrir este archivo para realizar más cambios más adelante, pero hay dos cambios que haremos de inmediato.

max-jugadores = 8

puerto-servidor = 25565

Ocho jugadores es lo más alto que recomendaría, más alto y es muy probable que veas que el rendimiento del servidor se retrasa, incluso con todas las optimizaciones realizadas para ejecutar las cosas en la Pi.

El puerto del servidor debe cambiarse porque, al igual que la contraseña predeterminada de "frambuesa", todos conocen el puerto predeterminado de 25565. Incluso un cambio menor a 26565 ayudará a mantener su servidor seguro. Anote el número de puerto junto a donde guardó la dirección IP de Pi. Necesitarás ambos más tarde.

Una vez que haya terminado de actualizar su configuración, guarde los cambios presionando ctrl-x, luego Y, luego ingrese.

El siguiente paso en la preparación de su servidor también llevará la mayor cantidad de tiempo una vez que se inicie, probablemente alrededor de una hora. Estos comandos pre-generarán su mundo, lo que significa que el servidor no tendrá que hacer todo este trabajo más adelante mientras usted y sus amigos están explorando.

cd ~ / Papel / complementos

wget --content-disposition -E

sudo apt-get instalar pantalla

papel cd

./start.sh

No parecerá que sucedió nada, ¡pero su servidor ya se ha iniciado! Para interactuar con el servidor necesitamos usar este comando

pantalla -r minecraft

Y luego pre-generaremos el mundo:

wb world set 1000 spawn

wb world fill 1000

wb llenar confirmar

Esta es la parte que llevará mucho tiempo. ¡Ve a tomar un bocadillo y vuelve a consultar más tarde! Cuando termine el proceso, apague el servidor con un comando muy simple

parada

Esto guardará y cerrará el servidor y lo regresará a la terminal Raspberry Pi.

Nuestra última tarea es configurar el servidor para que se inicie automáticamente cuando la Raspberry Pi se conecte o reinicie. Podemos hacer esto creando un script simple.

cd ~

nano startup.sh

Hemos usado nano para editar un par de archivos antes, pero esta vez estamos creando uno desde cero, por lo que la ventana estará vacía. Copie estas dos líneas en el archivo:

cd / home / pi / Papel

pantalla -dmS minecraft java -server -Dfile.encoding = UTF-8 -Xms512M -Xmx800M -XX: NewSize = 300M -XX: MaxNewSize = 500M -XX: + CMSIncrementalMode -XX: + UseConcMarkSweepGC -XX: + UseParNewGC -XX CMSIncrementalPacing -XX: ParallelGCThreads = 4 -XX: + AggressiveOpts -XX: + AlwaysPreTouch -XX: + DisableExplicitGC -XX: SurvivorRatio = 16 -XX: TargetSurvivorRatio = 90 -jar /home/pi/Paper/paperclip.jar nogui

Luego, guarde su nuevo script presionando ctrl-x, luego Y, luego ingrese.

chmod + x startup.sh

chmod + x /etc/rc.local

sudo nano /etc/rc.local

La última línea del archivo rc.local dice "exit 0". Directamente encima de esa línea vamos a agregar esto:

su pi -c /home/pi/startup.sh

Y una vez más guardamos los cambios de archivo con ctrl-x, luego Y, luego enter.

sudo reiniciar

Recibirá un mensaje de que la conexión se ha cerrado y puede cerrar la ventana de Putty.

¡Eso es todo! ¡Has superado la parte aburrida! ¡Ahora estamos listos para probar nuestro servidor!

Paso 4: prueba tu servidor e invita a tus amigos

Pruebe su servidor e invite a sus amigos
Pruebe su servidor e invite a sus amigos
Pruebe su servidor e invite a sus amigos
Pruebe su servidor e invite a sus amigos
Pruebe su servidor e invite a sus amigos
Pruebe su servidor e invite a sus amigos
Pruebe su servidor e invite a sus amigos
Pruebe su servidor e invite a sus amigos

A continuación, comprobaremos que el servidor esté funcionando y nos aseguraremos de que nuestros amigos puedan unirse.

Abra su lanzador de Minecraft en su PC y presione Reproducir. Asegúrese de que está utilizando la última versión de lanzamiento para que coincida con el servidor de Paper.

En la pantalla principal, seleccione Multijugador, luego Agregar servidor. Ingrese el nombre que le gustaría tener en su lista de servidores, y para Dirección del servidor ingrese la IP de su Pi y el número de puerto. Para mi ejemplo usamos 192.168.1.115:26565. Asegúrese de tener dos puntos entre la dirección IP y el número de puerto, y que no haya espacios. Haga clic en Listo y luego haga clic en reproducir en su servidor. ¡Después de unos momentos, te encontrarás en tu nuevo mundo!

¡Espera, vuelve! No empieces a construir solo, ¡invitemos a algunos amigos! Desafortunadamente, no pueden usar la misma dirección IP que tú. Entonces, para que esto funcione, primero debe decirle a su enrutador que está bien que las personas que están fuera de su casa se conecten al Pi. Esto se llama Port Forwarding y el proceso exacto diferirá un poco dependiendo de su enrutador. He adjuntado una captura de pantalla de cómo se ve en mi enrutador de la marca TP Link, pero es posible que deba consultar el sitio de soporte de su enrutador para obtener más información.

En la configuración de reenvío de puertos, ingrese el número de puerto que eligió para su servidor y luego la dirección IP de su Raspberry Pi. Su enrutador ahora sabe que cuando sus amigos intenten conectarse a ese número de puerto, deben dirigirse al Pi.

A continuación, necesitamos utilizar un servicio gratuito como No-IP para crear su propia dirección única, llamada Nombre de host. También configurará su enrutador o su PC para mantener actualizada la dirección IP del nombre de host.

Siga los pasos de su Guía de configuración ahora.

Cuando haya terminado de configurar su cuenta sin IP, sus amigos podrán conectarse a su servidor ingresando su nuevo nombre de host y el número de puerto en la sección Dirección del servidor de su pantalla multijugador de Minecraft. Por ejemplo, hostname.ddns.net:26565.

Paso 5: ¡Salva el mundo! (con copias de seguridad automáticas)

¡Salvar el mundo! (con copias de seguridad automáticas)
¡Salvar el mundo! (con copias de seguridad automáticas)

Este paso es opcional, pero es un posible salvavidas. Su mundo se enfrenta a serios riesgos, ya sea por una tarjeta MicroSD dañada, travesuras o dolores ocasionales, o simplemente esas molestas enredaderas. Para proteger todo su arduo trabajo, haremos que el servidor guarde automáticamente su archivo mundial todas las noches. Para evitar que su tarjeta MicroSD se llene, también borraremos cualquier copia de seguridad que tenga más de una semana. Después de eso, puede copiarlos fácilmente en su propia PC u otra unidad de respaldo para mayor seguridad.

Comenzaremos usando Putty para volver a conectarnos a nuestro Pi para hacer otro script nuevo.

nano dailybackup.sh

Copie los siguientes comandos en el script:

# Detén el servidor de Minecraft

pantalla -x minecraft -X cosas detener ^ M dormir 5 # Copiar el directorio de papel a la copia de seguridad / PaperYYDDMM cp -a Paper /. copia de seguridad / Papel $ (fecha +% F) # Eliminar copias de seguridad de más de 7 días buscar copia de seguridad / * -mindepth 0 -maxdepth 0 -type d -ctime +7 -exec rm -rf {};

Y luego, dígalo conmigo: guarde su archivo presionando ctrl-x, Y, enter.

Ahora crearemos una tarea recurrente para ejecutar el script de respaldo todas las noches usando crontab.

crontab -e

Se le dará una opción de editores la primera vez que ejecute este comando, seleccione el número 2 para Nano.

Esto abrirá un archivo especial para programar tareas. En la parte inferior de este archivo, agregue las siguientes líneas:

5 0 * * * /home/pi/dailybackup.sh

15 0 * * * sudo reiniciar

La primera línea le dice al Pi que ejecute su script de respaldo a las 12:05 am todas las noches. La segunda línea le dice al Pi que se reinicie diez minutos después. Si prefiere una hora diferente para las copias de seguridad y el reinicio, puede cambiar estas líneas para que se adapten a sus preferencias. Solo recuerde que el primer número es el minuto y el segundo número es la hora en formato de 24 horas. Los tres asteriscos aseguran que este script se ejecutará todos los días.

Una vez que su sistema haya estado funcionando durante un tiempo, es posible que desee adquirir el hábito de guardar las copias de seguridad en otra ubicación fuera de la tarjeta MicroSD de Pi. Esta tarea se hace muy simple conectándose a su servidor usando Filezilla. Simplemente arrastre la carpeta de respaldo fuera del lado derecho de Filezilla y suéltela en su PC. Una vez que haya copiado todos los archivos, puede almacenarlos durante el tiempo que desee.

Y si alguna vez ocurre una tragedia y necesita volver a uno de sus archivos guardados, es un procedimiento rápido y simple. Primero asegúrese de haber detenido el servidor:

pantalla -r minecraft

parada

Luego use Filezilla para eliminar el directorio de Paper y reemplácelo arrastrando uno de sus directorios guardados de regreso al Pi. Asegúrese de eliminar la fecha del nombre del directorio para que vuelva a llamarse simplemente Papel. Entonces puedes reiniciar tu servidor con

./startup.sh

¡Y así podrá volver al negocio de la construcción!

Paso 6: conecte los LED

Conecta los LED
Conecta los LED
Conecta los LED
Conecta los LED
Conecta los LED
Conecta los LED

¡Es hora de agregar algunas luces! Aquí es donde su servidor comienza a convertirse en algo más que un colector de polvo detrás de su monitor. Este paso le mostrará cómo soldar y conectar Neopixel Jewel a la Raspberry Pi, y luego instalar el software necesario para ejecutar los LED. Poco después, nunca tendrás que preguntarte si hay alguien en línea esperando para jugar contigo, ¡porque tu servidor te lo dirá con solo un vistazo!

Los Neopixel de Adafruit son LED fantásticos. Son RGB, lo que significa que pueden iluminarse en cualquier color que desee. Son direccionables, lo que significa que puede usar comandos de software para cambiar su color cuando lo desee. Para obtener más información sobre cómo funcionan los Neopixels con Raspberry Pi, consulte la guía oficial de Adafruit.

El Jewel tiene 7 LED que nos darán mucho color fuerte y brillante. También hay cinco puntos de contacto de soldadura, pero solo usaremos tres. Te recomiendo encarecidamente que uses tres cables de diferentes colores para evitar mezclarlos cuando los conectes al Pi más tarde. En mis fotos de ejemplo usé rojo, negro y marrón.

Antes de comenzar este paso, querrá tener la Raspberry Pi completamente apagada. Ingrese estos comandos y luego desconecte la fuente de alimentación de Pi.

pantalla -r minecraft

parada

sudo shutdown -h ahora

Corte tres cables GPIO hembra, lo suficientemente largos como para tener suficiente cable para trabajar mientras suelda. Siempre puedes hacer un bucle con el exceso como lo hice yo. Suelde con cuidado los cables a los contactos de la joya. Luego, conecte los conectores hembra a los pines GPIO de Raspberry Pi:

PWR al pin 1 = 3.3V

GND al pin 6 = Tierra

IN al pin 12 = GPIO18

Una vez que la joya está en su lugar, puede volver a enchufar la Pi y usar Putty para conectar e instalar el software LED con los siguientes comandos. Esté atento a los puntos que pueden pedirle que ingrese Y para continuar con la instalación.

sudo apt-get install build-essential python-dev git

sudo apt-get install scons

sudo apt-get install swig

clon de git

cd rpi_ws281x

scons

Importante ** En el siguiente paso vamos a hacer una pequeña adición a la biblioteca neopixel. Esto es necesario para evitar un error de memoria que me volvió loco durante varios días. Sin él, los LED funcionarán durante unas horas y luego dejarán de actualizarse correctamente. **

cd python

python setup.py compilación

sudo nano build / lib.linux-armv7l-2.7 / neopixel.py

Use la flecha hacia abajo para desplazarse más allá de la línea que dice class Adafruit_NeoPixel (objeto):. No mucho más allá, encontrará una sección con texto azul que dice def _cleanup (self). Copiará la siguiente línea en este sección, exactamente como se muestra en la captura de pantalla anterior.

ws.ws2811_fini (self._leds)

Y una vez más necesitamos guardar los cambios con ctrl-x, Y, enter.

cd ~

cd rpi_ws281x / python

sudo python setup.py instalar

A continuación, necesitamos decirle al archivo de prueba la cantidad de LED que tenemos, ¡luego podemos encenderlos!

ejemplos de cd

sudo nano strandtest.py

Busque la línea que dice LED_COUNT = 16 y cámbiela a LED_COUNT = 7, luego ctrl-x, Y, ingrese para guardar.

sudo python strandtest.py

Si todo ha salido correctamente, acaba de quedar cegado por una explosión de arco iris parpadeante. Cuando pueda volver a ver, presione ctrl-c para detener las luces. Los LED no se apagarán, pero dejarán de parpadear y eso es suficiente por ahora.

Paso 7: Programe los LED para verificar el estado del servidor

Programe los LED para verificar el estado del servidor
Programe los LED para verificar el estado del servidor

Con nuestros LED instalados y listos, es hora de hacerlos reaccionar al servidor. Específicamente, les haremos indicar el número actual de jugadores en el servidor:

Jugadores = Mineral

  • 0 = piedra roja
  • 1-2 = Hierro
  • 3-4 = oro
  • 5-6 = Esmeralda
  • 7-8 = diamante

Si el servidor no se está ejecutando, el Oreblock será Carbón (LED apagados). Y como una ventaja adicional, si la verificación de estado no puede encontrar una conexión a Internet, los LED parpadearán en amarillo.

Para recuperar el recuento de jugadores del servidor, instalaremos mcstatus de Nathan Adams, uno de los desarrolladores de juegos de Mojang.

sudo apt-get install python-pip

sudo pip install mcstatus

Luego, debemos copiar los dos scripts de Python a continuación, mcled.py y ledoff.py, en nuestro servidor con Filezilla. Simplemente arrastre y suelte los dos scripts en el cuadro de la derecha, como se muestra en la captura de pantalla.

Continúe y pruebe ledoff.py ahora mismo, para que podamos apagar los LED que se dejaron encendidos en el paso anterior.

sudo python ledoff.py

Cuando ejecute los scripts manualmente de esta manera, recibirá un mensaje que dice "Fallo de segmentación". Este es un problema sin resolver en la biblioteca Neopixel.py que no tiene ningún efecto en lo que estamos haciendo.

Si tiene curiosidad acerca de cómo funcionan estos scripts, puede abrirlos con cualquier editor de texto en su PC o usando nano en la pantalla del terminal. ¡Solo tenga cuidado de no guardar accidentalmente ningún cambio que pueda impedir que funcionen!

Nota ** mcled.py asume que está utilizando el puerto 26565 de mi ejemplo. Si está utilizando un puerto diferente, debe cambiar el script para que coincida con los siguientes pasos **

sudo nano mcled.py

Busque una línea roja de texto que diga "# Obtener recuento de jugadores del servidor", y debajo verá una línea que incluye texto verde que dice "localhost" y el número de puerto al lado. Cambie el número de puerto para que coincida con el suyo y, como siempre, guarde los cambios con ctrl-x, Y, ingrese.

Para obtener actualizaciones constantes sobre el estado del servidor, le diremos al Pi que ejecute el script mcled.py cada minuto, y eso significa configurar otro par de líneas en crontab.

crontab -e

Verá las dos líneas que agregamos anteriormente para programar copias de seguridad y reinicios. Ahora agregaremos dos más:

* 6-20 * * * sudo python mcled.py

0 21 * * * sudo python ledoff.py

La primera línea le dice al Pi que ejecute mcled.py cada minuto de cada hora entre las 6 a. M. Y las 8:59 p. M. La segunda línea le dice al Pi que apague los LED a las 9 pm. Esa es una preferencia personal, porque para entonces mis hijos ya no juegan Minecraft, aunque el servidor sigue funcionando. También tenemos el OreServer en un lugar destacado sobre nuestro televisor y la luz brillante se vuelve irritante por la noche. Por supuesto, puede modificar estas dos líneas para que los LED funcionen sin parar, o se apaguen más tarde, o lo que se adapte a sus propios fines.

Poco después de que se guarden los cambios (¿está harto de ctrl-x, Y, ya ingresó?), Se llamará al script y su joya se iluminará nuevamente. Lo más probable es que sea rojo para indicar que el servidor se está ejecutando pero no está en uso. Tómate un momento para iniciar Minecraft y únete al servidor como hicimos durante nuestra prueba anterior. Poco después de que se haya unido, los LED deberían cambiar a blanco y luego volver a rojo cuando se desconecta.

Paso 8: haz la caja de mineral

Hacer la caja de mineral
Hacer la caja de mineral
Hacer la caja de mineral
Hacer la caja de mineral
Hacer la caja de mineral
Hacer la caja de mineral
Hacer la caja de mineral
Hacer la caja de mineral

El toque final para unir todo esto es el estuche oreblock para Raspberry Pi. Para hacer el caso de Ore, utilicé la impresora 3D Lulzbot TAZ6 en mi espacio de fabricación local, RiverCityLabs. He proporcionado mis archivos. STL imprimibles para la base y la parte superior a continuación. Si no tiene su propia impresora 3D, busque una comunidad de creadores en su área, ¡son geniales! O puede tener una biblioteca o escuela local que tenga impresoras accesibles al público. También hay varios servicios de impresión 3D en línea que pueden imprimir y enviarle un diseño. ¡O puedes ser creativo! No hay nada que le impida hacer el estuche con cartón o una pila de Lego gris o cualquier otra cosa que tenga a mano.

Algunas notas importantes para cuando configure los archivos de la impresora 3D:

  • Imprima el archivo sin cambios de escala para asegurarse de que los orificios de montaje se alineen con el Pi.
  • Dé la vuelta a la tapa para que el extremo abierto quede hacia arriba.
  • Asegúrese de activar la configuración de soporte, para que los voladizos de las paredes no se ensucien.

Una vez completada la impresión, puede fijar el Pi a la base con cuatro tornillos de 2,5 mm. No puedo encontrar un enlace al producto real, pero los encontré en un paquete de 2 en Menards, que fue mucho mejor que pedir una caja de 100 en Amazon.

Retire todo el material de soporte de la parte superior y corte una hoja de papel pergamino o papel de seda blanco para que quepa dentro. Esto difundirá las luces LED, lo que hace que el efecto brillante se vea un millón de veces mejor que simplemente dejar los agujeros abiertos.

Conecte el adaptador MicroUSB en ángulo recto al puerto de alimentación de modo que el cable salga por la parte posterior de la carcasa junto al puerto Ethernet.

¡Ahora puede volver a conectar los cables de alimentación y Ethernet, colocar la parte superior en su lugar y disfrutar!

Paso 9: Resumen, pensamientos adicionales y agradecimientos

Gran premio en el Minecraft Challenge 2018

Recomendado: