Página 1 de 13

Playstation con una Raspberry Pi 3 dentro

Publicado: 28 Ene 2017, 16:54
por Dawn
Os presento mi proyecto. Se trata de un ‘retrofit’ en toda regla. Voy a convertir una vieja PSX en una media center y máquina arcade. ¿Cómo lo podemos hacer? Observad éste vídeo.
https://www.youtube.com/watch?v=8V_8lMH-YrA
Desde que lo vi me enamoré de la idea de hacerme una PSX parecida para mí. Pero hay aspectos de éste montaje que me gustaría mejorar. Me gusta que mantenga la estructura de la carcasa de la PSX, por lo que es 100% reversible, la estética se mantiene perfecta y el acabado es elogiable. Lo que no me gusta y cambiaré será la gestión de la energía y del ventilador, e iré comentándolo a continuación.
GESTIÓN DE LA ENERGIA
Lo que no me gusta del proyecto del vídeo es la gestión de energía, ya que aunque controla mediante un pulsador en un circuito específico la entrada de corriente (además de la velocidad del ventilador y la intensidad de un led), el apagado debe realizarse primero por software y después mediante el pulsador de la PSX.

Botón de encendido/apagado por software
Mi intención es que la PSX-pi (¿le dejamos este nombre?) se encienda con el pulsador, pero se apague correctamente también solo con el botón. Gracias al hilo "[TUTORIAL] CÓMO ENCENDER Y APAGAR TU RASPBERRY A TRAVÉS DE UN BOTÓN." de @MrBreaker, podemos implementar un botón de encendido y apagado desde el GPIO.
Adjunto el script funcionando para apagar con una pulsación corta, y resetear con pulsación de 3 segundos.
#!/usr/bin/python
# shutdown/reboot(/power on) Raspberry Pi with pushbutton

import RPi.GPIO as GPIO
from subprocess import call
from datetime import datetime
import time

# pushbutton connected to this GPIO pin, using pin 5 also has the benefit of
# waking / powering up Raspberry Pi when button is pressed
shutdownPin = 5

# if button pressed for at least this long then shut down. if less then reboot.
rebootMinSeconds = 3

# button debounce time in seconds
debounceSeconds = 0.01

GPIO.setmode(GPIO.BOARD)
GPIO.setup(shutdownPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)

buttonPressedTime = None


def buttonStateChanged(pin):
    global buttonPressedTime

    if not (GPIO.input(pin)):
        # button is down
        if buttonPressedTime is None:
            buttonPressedTime = datetime.now()
    else:
        # button is up
        if buttonPressedTime is not None:
            elapsed = (datetime.now() - buttonPressedTime).total_seconds()
            buttonPressedTime = None
            if elapsed >= rebootMinSeconds:
                # button pressed for more than specified time, reboot
                call(['shutdown', '-r', 'now'], shell=False)
            elif elapsed >= debounceSeconds:
                # button pressed for a shorter time, shutdown
                call(['shutdown', '-h', 'now'], shell=False)


# subscribe to button presses
GPIO.add_event_detect(shutdownPin, GPIO.BOTH, callback=buttonStateChanged)

while True:
    # sleep to reduce unnecessary CPU usage
    time.sleep(5)
La gestión del encendido y apagado mediante GPIO tiene la gran ventaja de que el apagado es correcto -no un corte de luz a la brava- y eso ayudará a mantener en forma nuestra rp3 y evitar que se corrompa nuestra SD. La única desventaja es que al darle energía –enchufarla a la corriente- se enciende sola, por lo que el botón ON solo funciona partiendo de la raspberry apagada por botón/software.

Botón de encendido por hardware
La alternativa por la que me he inclinado finalmente para solucionar este problema es por el switch Pololu #2808 https://www.pololu.com/product/2808. Este shitch -de pequeñísimas dimensiones- tienes la facultad de poder gestionarse tanto por switch como por señales halt. ¿Ésto que significa? Pues que podremos poner en marcha la raspberry con un simple clic en un pulsador, y que para cortar la corriente el Pololu espera una señal por parte de la raspberry como que ya está apagada. ¿Cómo se hace ésto? Vamos a verlo.
pololu-real.jpg
Primero os presento a Pololu. Como podéis ver es bien pequeñito. Viene sin soldar los pins, así que fueron los primeros en mi vida que he soldado. No es difícil pero requiere buena vista. Seguramente visto este proyecto las soldaduras se podrían hacer directamente a los cables. Pero en mi caso, como tuve que experimentar bastante, preferí soldar los pins. Pasamos a especificar que tenemos que conectar al Pololu.
pololu.jpg
1.- Conectaremos el positivo de la fuente de alimentación a un pin VIN y el negativo a un GND de su mismo lado.
2.- Conectaremos VOUT al pin 2 de la GPIO (Sí, vamos a alimentar la raspberry por el puerto GPIO). Conectaremos el GND del lado de VOUT al pin 9 del GPIO.
4.- Conectaremos el A y GND del mismo lado a un pulsado.
5.- Conectaremos el pin OFF del Pololu al GPIO pin 37
Con el punto 4 tendremos un pulsador que dará energía a la raspberry, y el Pololu no cortará la energía por mucho que volvamos a apretar el pulsador por mucho que accionemos el pulsador, ya que estará esperando una señal de la raspberry por el pin 3 (punto 5) para cortar corriente.

Por tanto necesitamos un pulsador de doble circuito, que cuando pulsemos accione por un lado el Pololu y por otro (y a la vez) mande una señal de apagado correcto a los GPIO 5 y 6. Por tanto necesitamos que funcione perfectamente el script de apagado que se comenta en la actualización 1, y oculto como spoiler.

Nos falta configurar que al apagarse correctamente la raspberry se mande una señal de halt al Pololu cuando acabe su shutdown, indicándole así que ya puede cortar la energía. Ésto es realmente sencillo una vez que se sabe, pero me dió bastantes dolores de cabeza descubrirlo. Modificaremos nuestro config.txt añadiendo al final del fichero la gestión de gpio-poweroff. Ésto por defecto efectúa una señal HIGH en el pin 37 una vez que se ha apagado correctamente la raspberry.
#GPIO Poweroff
dtoverlay=gpio-poweroff
Si habéis seguido todos los pasos hasta aquí os habréis dado cuenta de que tenemos dos pulsadores. Uno conectado al Pololu y otro conectado a la raspberry -el que controla el script de encendido/apagado-. Tranquilos, solo necesitamos un pulsador para circuito doble y solucionado. Fácil de encontrar en nuestra tienda de electrónica de referencia.

Así pues tenemos ya que al apretar el botón encenderemos el Pololu y éste a su vez a la raspberry, la señal que le llega a la raspberry por el segundo circuito del pulsador es ignorada al estar ésta apagada . Para apagar el sistema, el pulsador enviará una señal a la raspberry -que ejecutará el script- y se apagará, pero el Pololu ignorará la señal del pulsador y esperara el halt desde el GPIO pin 37. Una vez apagada la raspberry, el pin 37 cambiará de LOW a HIGH y el Pololu se apagará!

Led de encendido y led de actividad
Para sacar un led con la actividad es tan sencillo como añadir la siguiente línea a config.txt
dtoverlay=pi3-act-led,gpio=22
Ésto hará que si al GPIO 22 (pin 15 en la Raspberry Pi 3) le conectamos un LED -con su correspondiente resistencia- podremos llevarnos el LED verde de actividad a donde queramos :)
Posteriormente lo mezclaremos con el de led de encendido (rojo) gracias al uso de un led RGB.

Alimentación
El proyecto del vídeo se alimenta de un transformador externo de 5V. Mi intención es -si el espacio me lo permite- mantener el transformador de 3A que tengo dentro de la PSX, y colocar a la PSX-pi un conector LEC320 C8 para que la estética externa no se diferencie de la original, y además se alimente con el cable original.
enchufeadaptado2.jpg
enchufe adaptado.jpg
Por tanto modificamos el soporte para introducir el nuevo conector. Y nos haremos con una fuente de alimentación, lo más plana posible, para poder dejarla dentro de la PSX.
REFRIGERACIÓN
Es cierto que el proyecto original permite regular la velocidad del ventilador. En mi proyecto, gracias al hilo "CONTROL DEL VENTILADOR RPI3 (RPM SEGÚN TEMPERATURA)", implementaré la idea de poder tener un ventilador que ajuste su velocidad a la temperatura de la PSX. Lo podremos hacer de la siguiente manera:
Con la nueva versión de la libreria wiringpi he necesitado modificar tu código para que funcione. He eliminado la variable GPIO, y la he sustituido por la llamada directa a la función. Queda de la siguiente manera:
Primero necesitamos tener actualizadas las librerías de wiringpi. Seguimos las instrucciones de su página web para comprobarlo (http://wiringpi.com/download-and-install/)
Después crearemos nuestro script, al que se le ha llamado como fancontrol.sh, con
sudo nano fancontrol.sh
, y copiamos dentro el siguiente código:
#!/bin/bash
### BEGIN INIT INFO
# Provides: 		blabla
# Required-Start:	$syslog
# Required-Stop:	$syslog
# Default-Start:	2 3 4 5
# Default-Stop:		0 1 6
# Short-Description: 	fancontrol via Hardware
# Description:
#
# Fancontrol via Hardware PWM for RaspberryPi
### END INIT INFO


# Path
#GPIO=/usr/local/bin/gpio

# Limits
MIN_TEMP=49
MAX_TEMP=69
MIN_FAN=0
MEDIUM_FAN=512
MAX_FAN=1024

# Run forever
while [ 1 ]; do

	# What's the CPU temp?
	temp=$(cat /sys/class/thermal/thermal_zone0/temp)
	temp=$((temp/1000))
	
	# Variable temperature control
	if [ $temp -gt $MIN_TEMP  ] && [ $temp -lt $MAX_TEMP ]; then
		#fan=$(((temp - MIN_TEMP) * MAX_FAN / (MAX_TEMP - MIN_TEMP)))
		fan=$MEDIUM_FAN
		secs=1

	# Maximum fan RPM
	elif [ $temp -ge $MAX_TEMP ]; then
		fan=$MAX_FAN
		secs=1

	# Switch off the fan
	else
		fan=$MIN_FAN
		secs=60
	fi
	
	gpio -g mode 18 pwm
	gpio -g pwm 18 $fan

	# Show current state and pause for a while
	echo "temp: $temp'C | fan: $((fan * 100 / MAX_FAN))% | pause: $secs""s"
	sleep $secs

done
exit 0
Al salir del editor, daremos permisos de ejecución al script con
sudo chmod +x fancontrol.sh
Y lo añadiremos al cron, para que se ejecute en el arranque, mediante:
crontab -e
Y AÑADIMOS AL FINAL DEL ARCHIVO
@reboot /ruta/delscript/fancontrol.sh > /dev/null 2>&1
Ya tenemos nuestra gestión del ventilador en marcha! Solo falta conectar a la GPIO el transistor y el ventilador tal como se especifica en "CONTROL DEL VENTILADOR RPI3 (RPM SEGÚN TEMPERATURA)"
MONTAJE
Evidentemente partimos de una Playstation, en concreto del modelo original. Yo, como no tenía ninguna, conseguí una por Wallapop. Gracias a retro-emulation.com podemos encontrar las piezas necesarias para adaptar la carcasa original de nuestra consola a las necesidades de la raspberry pi. Aquí podeis encontrar los ficheros a imprimir en 3D:
http://www.thingiverse.com/thing:2012518
Adaptación de la carcasa PSX a la Raspberry Pi 3
En mi caso le he encargado el trabajo a un miembro del foro, luzma, que vistos sus trabajos anteriores espero me entregue unas piezas de máxima calidad -y así ha sido, muy recomendable-.

Por desgracia las PSX europeas, o al menos el modelo que ha caído en mis manos, no tienen el interior como la americana de retro-emulation.com, además de que el cableado que he utilizado no se lo he comprado a ellos (porque es carísimo) así que lo compré en aliexpress y amazon y lo adapté. Así que hay alguna piezas que por desgracia no vamos a usar o debemos modificar a mano, ya que no dispongo de impresora 3D.

La dremel ha sido mi mejor amiga y compañera en este proyecto, que junto a la breadboard, han sido herramientas fundamentales para probar todo antes de conectarlo. Paso a comentar las piezas retocadas y las que no he utilizado de http://www.thingiverse.com/thing:2012518, y que por tanto os podéis ahorrar de fabricar. No hace falta que fabriquéis ni la base de la raspberry -que lleva el soporte del ventilador-, ni la pequeña pieza en forma de 'z' que se utiliza en el proyecto original para apoyar su PCB.

La caja para el lector de tarjetas que se atornilla en la parte trasera de la PSX necesita un buen cepillado con la dremel en una de sus esquinas para que una rueda dentada de la tapa de CD de la PSX no roce con ella. Y tendréis que retocar la parte trasera de la caja de conectores USB si no encontráis unos exactos a los que utiliza el proyecto original.

El conector eléctrico lo he recortado en la parte que va más interna de la PSX para hacer espacio a la fuente de alimentación y su agujero agrandado para acoger un enchufe de 220v. Para hacer ésto bien, montad primero la pieza, cerráis la PSX y con un rotulador indeleble marcáis todo el contorno cuadrado del espacio para el enchufe eléctrico. Y a darle a la dremel hasta hacer ese hueco exactamente de ese tamaño. Una vez hecho y con el conector nuevo puesto presentarlo en la caja y seguramente comprobareis que tenéis que hacer agujeros nuevos para los tornillos en la pieza impresa (recordad que dejaremos totalmente de serie la caja de la PSX, nada de hacerle más agujeros o romperla!)

Os recomiendo comprar los cables más pequeños que encontréis. Y con las fundas de los conectores más comedidos. Sobre todo el HDMI, con 20 o 30cm tenéis de sobra. Podeis orientaros por las medidas y tipo de cable que retro-emulation vende para comprar donde os vaya mejor cableado lo más similar posible (https://retro-emulation.com/shop/index. ... &id_lang=1) No hay demasiado espacio, así que unos cm de más en un cable os pueden dar un buen dolor de cabeza a la hora de cerrar la PSX, pero no es lo mismo tenerlos del conector de audio -delgado y muy flexible- que de HDMI. El tamaño aquí importa mucho!

El ventilador que he usado es uno de 50mm, la RP3 tiene 49mm entre sus agujeros de soporte, pero creo que podríais utilizar uno incluso más grande, ya que al final solo usé un agujero para fijar la RP3, ya que queda suficientemente atrapada entre el cableado y un tornillo. Además me permitió que pivotara para ir conectando los cables y poder acoger mejor el HDMI. Lo más importante es que el perfil del ventilador ha de ser mínimo (de 10mm o menos), porque de espacio en altura no vamos nada sobrados. Vigilad que el ventilador al girar no toque la parte inferior de la caja PSX ni la de la RP3. Suelen tener una parte protegida que impedirá que las aspan toquen algo, pero otra no. Para esa parte, si la escogéis para que vaya bajo la RP3 , os recomiendo poner una o dos arandelas de plástico -lo justo para que no rocen las aspas, recordad que no tenemos demasiado espacio-.
20170210_231455.jpg
Para fuente de alimentación compré en amazon un transformador de 2.5a, el más barato y plano que encontré. Deberéis abrirlo y soldarlo al nuevo enchufe de la PSX-pi y a los cables que lleguen al Pololu.

Y por último, cuando compréis el cable extensor de microSD veréis que no cabe en la pieza impresa. Debéis sacarle la caja negra donde se ubica el lector para poder montarlo en la PSX-pi.

Nuestro objetivo es éste:
Imagen

Si no me dejo nada, creo que lo he explicado todo más o menos. Os dejo aquí unas imágenes del montaje y otras en la página 2 de éste hilo, que seguramente valen más que mis explicaciones.
usb.jpg
usb (2).jpg
contra-usb-org.jpg
contra-usb-adap.jpg
Esquema de montaje
Os adjunto un esquema de montaje de todo el cableado interior de la PSX.
Esquema electrico.jpg
Vídeos del resultado final


Ahí la tienes, en el primer arranque comprobando que todo funciona bien

https://www.youtube.com/watch?v=_I4270BPZxE

Y aquí ya acabada, yo en plan demo y mi hija poniendo la banda sonora

https://youtu.be/zkTGh-merL8



Lista de la compra:


- Playstation, en Wallapop :idea:

- Piezas 3D, descargar los ficheros de aquí (http://www.thingiverse.com/thing:2012518) y mandarlos a imprimir (la base de la raspberry y una pequeña pieza en z no son necesario imprimirlas). A mi me lo hizo un forero de aquí, luzma, y tiene su hilo en compra-venta viewtopic.php?f=61&t=1624&p=9568&hilit=luzma#p9567

- Pololu switch 2808 http://www.tme.eu/es/details/pololu-280 ... on/pololu/

- Conector de corriente http://www.tme.eu/es/details/4300.0098/ ... /schurter/

- Extensor para la microSD https://www.amazon.es/gp/product/B01C8C ... UTF8&psc=1

- Cargador de 2.5a https://www.amazon.es/gp/product/B01CSM ... UTF8&psc=1

- 4 cables USB AM/AH de 30cm (reciclé unos que tenía por casa)

- Ethernet Macho Hembra 30cm https://www.amazon.es/gp/product/B01326 ... UTF8&psc=1

- Cable alargador HDMI 30cm https://www.amazon.es/gp/product/B00QV3 ... UTF8&psc=1 -no encontré más pequeño, os recomiendo buscar uno de 0.30m-

- Cable de audio http://www.tme.eu/es/details/avk-184-05 ... bay/97111/

- Pulsador de doble circuito ( lo compré en una tienda de electrónica)

- Transistor 2N3904 ( lo compré en una tienda de electrónica)

- Led RGB, 1 resistencia de 100 y otra de 220 (Aproveche lo que me venia con la breadboard)

- Ventilador para PC, 0.20a, 50mm cuadrado y de 10mm de perfil. (reciclado de un PC viejo) El ventilador va atornillado a la caja PSX con un tornillo de la propia caja, pero necesitareis al menos un tornillo y un par de arandelas de plástico para fijar la raspberry al ventilador.

- Cableado y conectores fastom (yo aproveche los que tenia con un kit de una breadboard)

- Un par de bridas pequeñas.

Creo que no me dejo nada :|

Cualquier duda, aquí me tenéis para ayudaros. Y si queréis que os fabrique una por encargo, todo es hablarlo aunque lo divertido es que lo hagáis vosotros.

Y antes de acabar agradecer la ayuda del foro, sin el que no hubiera podido acabar este proyecto. Un saludo a todos!

+ INFO:

Gestión del POLOU desde Openlec por @Geralt17: link

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 28 Ene 2017, 17:39
por Dawn
Actualizo con el script de on-off y reset invertido.

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 28 Ene 2017, 17:58
por Kike
Buenas tardes!! Mil gracias por presentar este genial proyecto, por si quieres echar un vistazo al Blog de un amigo que hizo algo parecido a lo que presentas por si necesitas coger alguna idea :D

Seguiré el hilo de cerca, un abrazo! :mrgreen:

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 28 Ene 2017, 21:32
por Dawn
Kike escribió:Buenas tardes!! Mil gracias por presentar este genial proyecto, por si quieres echar un vistazo al Blog de un amigo que hizo algo parecido a lo que presentas por si necesitas coger alguna idea :D

Seguiré el hilo de cerca, un abrazo! :mrgreen:
Menudo crack! Muchas gracias por el enlace. Es muy interesante si se quiere utilizar la fuente de alimentación de la PSX para alimentar la rapberry. Pero el gran inconveniente es el mismo que el del vídeo, y es que el apagado es "a la brava", y no es lo que estoy buscando. Por lo demás, vaya currada meter las SD por el puerto de las memory card!

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 30 Ene 2017, 08:29
por Dawn
Ya están fabricadas las piezas para adaptar la raspberry al interior de la PSX. Impaciente por que lleguen!!

Imagen

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 31 Ene 2017, 06:19
por Fulguitron
Yo quería hacer lo mismo pero con una PSX one, uso un convertidor de USB a mandos de PSX pero al soldar los cables no funciona (y lo he probado todo, todo) a ver si con este proyecto me vuelvo a animar.
Gracias por compartirlo y muchisima suerte.

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 31 Ene 2017, 17:03
por Diy-Linux
Dawn escribió: Menudo crack! Muchas gracias por el enlace. Es muy interesante si se quiere utilizar la fuente de alimentación de la PSX para alimentar la rapberry. Pero el gran inconveniente es el mismo que el del vídeo, y es que el apagado es "a la brava", y no es lo que estoy buscando. Por lo demás, vaya currada meter las SD por el puerto de las memory card!
Gracias hombre!

Yo lo que hago para el apagado es un apagado ordenado, primero apago el sistema desde la interfaz de Retropie y luego corto la conexión.

Si lo que buscas es tener un botón que te haga todo en 1, necesitas una solución hardware/software, tienes esquemas por internet, y tambien las tienes ya hechas:

https://www.pi-supply.com/product/pi-su ... er-switch/

Y lógicamente, adaptarlo a la caja/botón que tengas de power. Yo te recomiendo no complicarte y hacer las cosas simples :)

Saludos, Guille

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 01:28
por Ruben16v
Curioso, tengo yo aqui una psone esperandome para exactamente lo mismo, con el Splash screen de PiStation y todo para el arranque y eliminada la imagen inicial, enciende casi casi sin notarse que es una RasPi jejeje
Animo que seguro me daras muchas ideas, de hecho estoy deseando ver como haces para mover la SD hasta el puerto ese xD

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 08:16
por Dawn
Diy-Linux escribió: Yo lo que hago para el apagado es un apagado ordenado, primero apago el sistema desde la interfaz de Retropie y luego corto la conexión.

Si lo que buscas es tener un botón que te haga todo en 1, necesitas una solución hardware/software, tienes esquemas por internet, y tambien las tienes ya hechas:

https://www.pi-supply.com/product/pi-su ... er-switch/

Y lógicamente, adaptarlo a la caja/botón que tengas de power. Yo te recomiendo no complicarte y hacer las cosas simples :)

Saludos, Guille
Muchas gracias Guille. No conocía esa placa, pero he investigado un poco y al parecer no es adecuada para la Pi 3, pues no deja pasar la energía necesaria y tiene problemas de apagados esporádicos. Aquí hay más info https://www.modmypi.com/raspberry-pi/br ... spberry-pi

Existe esta otra http://blog.petrockblock.com/2015/07/04 ... pberry-pi/
Está bastante bien, y se ajusta también a lo que busco, salvo que necesita de un switch y no de un pulsador para realizar el on/off. Tampoco sería un gran problema sustituir mi pulsador por un switch, pero entonces perdería la posibilidad de realizar el reset con el mismo botón.

Entiendo a lo que te refieres con no complicarme. Pero si no quisiera complicarme dejaría la raspberry tal como está :xd Además, me he marcado el objetivo de que la pueda utilizar mi mujer con 0 explicaciones previas. La PSX-pi ha de ser lo más sencilla de utilizar posible, y no puede depender de que el usuario se acuerde o no de apagarla correctamente.

Yo estoy trabajando en una solución propia, y ahí os la dejo... https://circuits.io/circuits/3852989-po ... pi-1-relay
Captura.PNG
Llegados a éste punto, creo que voy a fabricar un prototipo y probarla. Siempre estoy a tiempo de comprar una hecha, aunque me sentiría más feliz con mi diseño.

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 08:31
por Dawn
Otra posibilidad para gestionar el encendido y apagado que he encontrado ahora es la utilización de un botón on-off Pololu, voy a investigar más esta opción, pero de entrada me parece muy interesante porque cumple todos los requerimientos y es económica.

https://www.pololu.com/product/2808

Existe otra opción plug&play, pero con el envío cuesta 27€. Es la opción más fácil y efectiva, pero también la más cara. Pero me la apunto por si al final desespero con ésta cuestión y decido comprarlo hecho.

https://www.msldigital.com/collections/ ... -and-led-1

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 08:55
por Dawn
Ruben16v escribió:Curioso, tengo yo aqui una psone esperandome para exactamente lo mismo, con el Splash screen de PiStation y todo para el arranque y eliminada la imagen inicial, enciende casi casi sin notarse que es una RasPi jejeje
Animo que seguro me daras muchas ideas, de hecho estoy deseando ver como haces para mover la SD hasta el puerto ese xD
Eso va a ser lo más fácil :idea:

Imagen

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 10:41
por Diy-Linux
Dawn escribió: Muchas gracias Guille. No conocía esa placa, pero he investigado un poco y al parecer no es adecuada para la Pi 3, pues no deja pasar la energía necesaria y tiene problemas de apagados esporádicos. Aquí hay más info https://www.modmypi.com/raspberry-pi/br ... spberry-pi

Existe esta otra http://blog.petrockblock.com/2015/07/04 ... pberry-pi/
Está bastante bien, y se ajusta también a lo que busco, salvo que necesita de un switch y no de un pulsador para realizar el on/off. Tampoco sería un gran problema sustituir mi pulsador por un switch, pero entonces perdería la posibilidad de realizar el reset con el mismo botón.

Entiendo a lo que te refieres con no complicarme. Pero si no quisiera complicarme dejaría la raspberry tal como está :xd Además, me he marcado el objetivo de que la pueda utilizar mi mujer con 0 explicaciones previas. La PSX-pi ha de ser lo más sencilla de utilizar posible, y no puede depender de que el usuario se acuerde o no de apagarla correctamente.

Yo estoy trabajando en una solución propia, y ahí os la dejo... https://circuits.io/circuits/3852989-po ... pi-1-relay

Llegados a éste punto, creo que voy a fabricar un prototipo y probarla. Siempre estoy a tiempo de comprar una hecha, aunque me sentiría más feliz con mi diseño.
Nada hombre. Esa es la que quería poner ayer, la de petrock, pero no di con ella en una búsqueda rápida en google, y puse la primera que vi.

Tiene buena pinta tu solución, entiendo que te corta la conexión eléctrica que envías a la raspberry, sino no podrás rearrancar. El problema que le veo, es que no envías una señal de apagado ordenado a la raspi, vamos, es como tener un interruptor.

Puedes buscar la forma de conectar el switch para que envié previamente la señal a la raspi, por ejemplo podrías hacerlo usando acpid (el puerto gpio que necesitas diria que es el 18):

http://www.diy-linux.com/orange-pi-usar ... ra-apagar/

Y otro link de alguien que creo que hace lo que te comento pero de distinta forma, con el esquema de componentes:

http://www.susa.net/wordpress/2012/11/r ... ontroller/

Saludos, Guille

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 13:01
por Dawn
Diy-Linux escribió:

Tiene buena pinta tu solución, entiendo que te corta la conexión eléctrica que envías a la raspberry, sino no podrás rearrancar. El problema que le veo, es que no envías una señal de apagado ordenado a la raspi, vamos, es como tener un interruptor.

Saludos, Guille
El esquema si no lo explico no se entiende bien, pero sí que controlo el apagado correcto. Has estrado en la simulación? Sino lo explico con la captura
Captura.PNG
La primera fuente de alimentación, la de 5v, es la fuente de alimentación original de la raspberry. El led rojo simula ser la raspberry. El led verde simula ser el puerto GPIO que gestiona el apagado/reset. Si entras en la simulación verás que al encender la fuente de alimentación la raspberry permenece apagada (led rojo apagado). Si damos un toque al pulsador, se enciende la raspberry (led rojo encendido). Ahora que tenemos la raspberry encendida, si volvemos a pulsar el botón, se encenderá durante la pulsación el led verde (sginifica que estamos pasando la señal de apagado al GPIO) y la raspberry se apagará. Puedes ver que el led rojo sigue encendido, y es porque en ningún momento le corto la corriente a la raspberry, porque el apagado será por soft, no físico.

Así que éste circuito cumpliría mis espectativas, a falta de añadir al circuito un control temporal para desconectar la corriente o controlar el contacto del primer arranque que también llega al GPIO de la raspberry y no se si puede tener algúna consecuencia -creo que no-.

En cualquier caso, ahora mismo mi opción favorita es el switch Pololu, que tiene pinta de ser la más interesante ya que el arranque es porque se le da energía a la raspberry, y el apagado se realiza también cortando la energía pero esperando a que la raspberry se apague.

https://www.pololu.com/product/2808

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 18:04
por Diy-Linux
Dawn escribió: La primera fuente de alimentación, la de 5v, es la fuente de alimentación original de la raspberry. El led rojo simula ser la raspberry. El led verde simula ser el puerto GPIO que gestiona el apagado/reset. Si entras en la simulación verás que al encender la fuente de alimentación la raspberry permenece apagada (led rojo apagado). Si damos un toque al pulsador, se enciende la raspberry (led rojo encendido). Ahora que tenemos la raspberry encendida, si volvemos a pulsar el botón, se encenderá durante la pulsación el led verde (sginifica que estamos pasando la señal de apagado al GPIO) y la raspberry se apagará. Puedes ver que el led rojo sigue encendido, y es porque en ningún momento le corto la corriente a la raspberry, porque el apagado será por soft, no físico.

Así que éste circuito cumpliría mis espectativas, a falta de añadir al circuito un control temporal para desconectar la corriente o controlar el contacto del primer arranque que también llega al GPIO de la raspberry y no se si puede tener algúna consecuencia -creo que no-.

En cualquier caso, ahora mismo mi opción favorita es el switch Pololu, que tiene pinta de ser la más interesante ya que el arranque es porque se le da energía a la raspberry, y el apagado se realiza también cortando la energía pero esperando a que la raspberry se apague.

https://www.pololu.com/product/2808
No me había fijado en el tema del led verde, tienes razón; btw, como bien dices, el switch ese es una muy buena opción, sobre todo por el precio que tiene

Saludos, Guille

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 01 Feb 2017, 19:39
por Dawn
Ya he encargado un pololu, ya contaré!

Enviado desde mi SM-G935F mediante Tapatalk

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 02 Feb 2017, 00:19
por Ruben16v
Que bueno lo de la SD y eso como lo buscais SD extender o algo asi?? voy a mirarlo :P gracias

EDITO: Pedido y en camino jejejeje

Re: RE: Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 02 Feb 2017, 00:38
por Burgos93
Ruben16v escribió:Curioso, tengo yo aqui una psone esperandome para exactamente lo mismo, con el Splash screen de PiStation y todo para el arranque y eliminada la imagen inicial, enciende casi casi sin notarse que es una RasPi jejeje
Animo que seguro me daras muchas ideas, de hecho estoy deseando ver como haces para mover la SD hasta el puerto ese xD
Has eliminado la pantalla de emulationstation del inicio?

Enviado desde mi Redmi Note 3 mediante Tapatalk

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 02 Feb 2017, 01:32
por Ruben16v
No, es lo que me queda por modificar los pantallazos blancos de Emulation Station y el pantallazo inicial del recovery

Re: RE: Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 02 Feb 2017, 01:33
por Burgos93
Ruben16v escribió:No, es lo que me queda por modificar los pantallazos blancos de Emulation Station y el pantallazo inicial del recovery
Vaya...yo también la quiero quitar y no se como

Enviado desde mi Redmi Note 3 mediante Tapatalk

Re: Playstation con una Raspberry Pi 3 dentro

Publicado: 06 Feb 2017, 11:22
por Dawn
Dawn escribió:Ya he encargado un pololu, ya contaré!

Enviado desde mi SM-G935F mediante Tapatalk
FUNCIONA! Ya tengo el sistema de alimentación resuelto y funcionando! Actualizo el primer post con la info.