Pip-Boy 3000 With Raspberry

by sabas1080 in Circuits > Raspberry Pi

9442 Views, 77 Favorites, 0 Comments

Pip-Boy 3000 With Raspberry

55de2aee15be4d5c8200072d.jpeg
temp_-182136985.jpg
temp_-244089439.jpg
55de1a332e7fb6d4ab000086.jpeg
temp_-20732076.jpg

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!!

Material

temp_1579077641.jpg
IMG_20150321_125929047.jpg
temp_-864801754.jpg

El material necesario para este proyecto es:

Instalar Pantalla Touch

IMG_20150321_130412653_HDR.jpg
IMG_20150321_130423462.jpg
IMG_20150321_125929047.jpg

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-...

Circuito

P5-holes.jpg
p5-header21-opt.jpg
gpio-p51.png
Raspberry-Pi-GPIO-Layout-P5-Underside.png

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

Codigo

IMG_20150321_130000322.jpg

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

Pip-Boy!!

55de2a4250e1b63903000342.jpeg
55de1a332e7fb6d4ab000086.jpeg
temp_-20732076.jpg
temp_-2103638992.jpg
temp_-244089439.jpg
temp_-182136985.jpg

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!!