Introduction: Pip-Boy 3000 With Raspberry
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:
- Raspberry Pi B (no se si funcione en B+)
- Adafruit PiTFT - 2.8" Touchscreen Display for Raspberry Pi (debería funcionar también en la versión para B+)
- Adaptador para protoboard GPIOs Adafruit
- Push Button
- 3 Leds
- SD con Sistema operativo Raspbian
- Cargador para Raspberry 5v 1A
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!!