Introduction: Pip-Boy 3000 With Raspberry

About: Fundador de The Inventor's House Hackerspace, Movimiento Maker y Hardware Libre, DIY, Workaholic

Hola amigos

Hoy les voy a mostrar como realizar un prototipo de Pip Boy 3000 con Raspberry Pi basado en el trabajo de Grieve y que yo he portado a la pantalla TFT capacitiva de Adafruit entre sus principales características esta la de utilizar en sus mapas OpenStreet Map.

Yo estoy participando en el Raspberry Contest si le gusta mi instructable por favor espero su voto

Comencemos!!

Step 1: Material

El material necesario para este proyecto es:

Step 2: Instalar Pantalla Touch

Lo primero que debemos configurar es la pantalla Adafruit PiTFT - 2.8" Touchscreen Display Capacitiva for Raspberry Pi, en mi caso este es el modelo que yo uso, para otros modelos puede visitar el link al final de este paso

Pirmero instalaremos el respositorio de adafruit, actualizaremos el bootloader y el control para la pantalla PiTFT

curl -SLs <a href="https://apt.adafruit.com/add"> https://apt.adafruit.com/add </a> | sudo bash<br>sudo apt-get install raspberrypi-bootloadersudo apt-get install adafruit-pitft-helper

Ahora debemos debemos configurar para la pantalla capacitiva de 2.8"

sudo adafruit-pitft-helper -t 28c

si la tuya es resistiva el comando debe ser

sudo adafruit-pitft-helper -t 28r

Para mas detalles por favor visitar Adafruit: https://learn.adafruit.com/adafruit-pitft-28-inch-...

Step 3: Circuito

Por default todos los pines GPIO entrada deben ir a 3.3v o alto, para activarlo deben ser enviado a tierra o bajo

  • 4: "module_stats", #GPIO 4
  • 14: "module_items", #GPIO 14
  • 15: "module_data", #GPIO 15
  • 17: "knob_1", #GPIO 17
  • 18: "knob_2", #GPIO 18
  • 7: "knob_3", #GPIO 7
  • 22: "knob_4", #GPIO 22
  • 23: "knob_5", #GPIO 23
  • 31: "dial_up", #GPIO 31
  • 27: "dial_down" #GPIO 27

debido a que la pantalla touch usa los GPIOs de comunicación SPI e I2C tuve que utilizar los pines extra del Header P5 marcados como GPIO 28, 29, 30 y 31

GPIO28 Led

GPIO29 Led

GPIO30 Led

Step 4: Codigo

Lo primero que debemos hacer es instalar pip para poder instalar las dependencias y poder ejecutar el script de python

sudo apt-get install python-pip
sudo pip install requests
sudo pip install numpy
sudo pip install xmltodict

Ahora debemos clonar el respositorio con los cambios necesarios para ejecutar PipBoy

git clone <a href="https://github.com/sabas1080/pypboy">https://github.com/sabas1080/pypboy</a>

una vez clonado el repo solo debemos entrar a la carpeta

cd pipboy

y ejecutar el main

python main.py

Step 5: Pip-Boy!!

Una vez ejecutado el script podremos ver como inicia nuestro PipBoy 3000 y por medio de los GPIO podremos controlar las pantallas de menú de status, mapa e items y sus submenus.

Podemos modificar la ubicación del mapa local en el archivo de config.py en la linea

MAP_FOCUS = (-102.3016145, 21.8841274)

debemos hacer el cambio insertando las nuevas coordenadas deseadas.

Espero les guste, aun estoy trabajando en la parte de controlar los botones por medio de la pantalla touch, si alguien quiere contribuir bienvenido

Saludos Inventores!!