0. Noticias
09/12: Ya tenemos Downgrade para PIC! El tutorial aqui: hilo_psdonwgrade-para-psgroopic-y-ps3break_1532872
Ahora mismo ningun firm permie acceder a PlayStation Network
1. Introducción
Este hilo será el oficial para hablar sobre todo lo relacionado con el port de PSGroove para la familia de PICs 18f. Pero empecemos por el principio.
PSGroove es una iniciativa de la scene, para imitar el PSJailbreak, pero de manera libre. Sin embargo se creo inicialmente para chips Atmel.
Tanto
Elsemi como
J1M, decidieron hacer un port al PIC 18F2550, por ser mas fácil de encontrar y tambien mas economico.
2. PICS Soportados
* 18F2550 32kB
* 18F4550 32kB
* 18F2455 24kB
* 18F4455 24kB
* 18F2553 32kB
* 18F4553 32kB
* 18F2458 24kB
* 18F4458 24kB
* 18F2450 16kB
* 18F4450 16kB
Nota: Los pics de 16Kb son una mala elección, ya que al tener menos memoria, nos vemos obligados a recortar el payload, por lo que algun día podria dejar de servir.
3. Eleccion de Dispositivo a crear
A dia de hoy, puedes hacer 2 tipos de PSGrooPIC.
* "
nBTL" O, Sin Bootloader, que son los circuitos en los que cargas el ultimo firmware directamente con el programador de PICs.
* "
wBTL" O, Con Bootloader, que son los que cargas un programa en el pic, que permite que windows lo reconozca al introducirlo en el USB, y cargar el firmware final. La gran ventaja de este tipo es que no necesitas tener el programador de PICs, ya que se puede programar desde windows, siendo mucho mas sencilla su reprogramación. Este es el que vamos a aprender a hacer con este tutorial.
4. Creación del dispositivo
Vamos a empezar por crear el programador de PICs. Si ya tienes uno, salta al paso 4.2
4.1 Creacion del Programador de PICsEl usuario tH0RiN hizo un esquema de un programador JDM Sencillo. Es el mas utilizado en estos foros. (Sin contar los comerciales, tipo TE20...)
Necesitamos:
1x Resistencia 2k3
1x Resitencia 10K
1x Resistencia 22K
1x Conector DB9 Hembra
1x Conector USB Macho
1x Zócalo 28 Pines
Esquema:
4.2 Creacion del PSGrooPICLo que vamos a hacer es una imitiacion de una placa comercial, que se llama BEEPIC
review por J1MNecesitamos:
1x Condensador 220nF
2x Condensador 22pF
1x Condensador 100NF
1x Cristal de 12 Mhz (Sirve cualquiera a en multiplos de 4, desde 4 hasta 20)
1x Resistencia 10K
1x Resistencia 330 Ohm
1x Led Verde (D1)
1x Led Rojo (D2)
1x Pulsador
Esquema: Nota del esquema: Al hacer el esquema con proteus, como el ya se lo sabe, no salen marcados los pines VCC y GND. A si que, es importante saber que, VCC es el PIN 20 y GND los Pines 8 y 19.
Nota 2: este simbolo
Significa VCC, Todo lo que tenga esa terminacion, tiene que ir conectado a VCC. Y este otro
significa GND, o Tierra. Todo lo que tenga esa terminación tiene que ir conectado a GND.
Ejemplo de montaje en placa de Topos:
5. Programando el Bootloader
Esta parte serviria tambien por si queremos hacer un PSGrooPIC sin Bootloader, pero en vez de seleccionar el hex del bootloader, seleccionariamos el hex nBTL.
Como ya hemos visto, el bootloader es un pequeño programa que va al principio del PIC, que permite que windows lo reconozca y podamos cargarle el firmware definitivo.
Para eso, utilizaremos el programa PICPGM. (hay mas, como el Winpic, pero a mi, ese no me va bien)
DescargarNos descargamos el bootloader a usar:
DescargaLo abrimos con picpgm, y en la pestaña "Config Bits" Seleccionamos la velocidad del Cristal. (por defecto esta a 12Mhz, los del tutorial, pero si tenemos otro cristal, lo seleccionamos sin problemas). Y hacemos click en el botón del rayo.
Fotos:
6. Programando el Firmware Final
Una vez programado el pic, lo introducimos en el circuito PSGrooPIC que hemos creado y lo introducimos en el PC.
Como es la primera vez que lo hacemos, y el PIC esta vacío de Firmware, lo reconocerá automaticamente. Además, el LED verde parpadeará de continuo, indicando que estamos en modo bootloader.
Una vez que ha instalado los drivers, nos descargamos lo siguiente.
Si tenemos un sistema operativo en 64Bits, Desinstalamos todos los .net y Visual C++ viejos que tengamos. Luego Descargamos el .net y el Visual C++ 2010 para x64.
.Net 4.0 (x32 y x64)Visual C++ 2010 (x32)Visual C++ 2010 (x64)MiEUSBHIDLoader de Microingeniería (este es un ejecutable, dejalo en algun lugar accesible)Una vez descargado, instalado y reinciado el sistema, abrimos el MiEUSBHIDLoader.exe y veremos que pone "Device Attached". Eso signfica que esta todo listo para cargar el firmware. Le damos al único boton que tiene, que pone "Burn Hex" y buscamos el fichero .hex que queremos meter. (Mas abajo estan todos los ficheros disponibles)
Empezará la grabación del firmware. Una vez terminado, reiniciara el PSGrooPIC y ya estará en modo Programa (ojo, no Programación
)
7. Firmwares Disponibles
Esta sección estará en constante actualización. Pasate por aqui para las ultimas novedades.
Hay otra vía para descargarse las actualizaciones. Es mediante el
PSGroopic Generator, Aplicacion Web creada por nullEX para compilarnos a medida los hex. Los que sirven para nuestra placa son los BEEPIC.
También te los puedes crear a partir de un firmware antiguo y un nuevo payload creado para otra placa, por ejemplo, para Atmel. Basta con
seguir este tutorial.Actualmente hay 2 tipos de Firmware (o payload). Está el PL3 y el creado por Hermes. Es díficil decidir cual usar. Normalemente lo mejor es que pruebes varios hasta que estes agusto con uno. Yo personalmente uso los ultimos PL3, version NUS. (Mas abajo explico cada versión)
Tambien iré colgando las versiones de payload reducido para PIC18f2450 (Lo lleva el PS3Break, por ejemplo)
Ademas de la descarga del hex para grabar, tambien adjunto los SRC, que se compilan con CCS, por si necesitas cambiar algo.
8. Puntos Finales Enlaces de Interés y Agradecimientos
Si has llegado hasta aqui, ¡Enhorabuena! tienes tu PSGrooPIC funcionando. Vamos a intentar mantener el hilo limpio. Todo lo necesario para hacer el PSGrooPIC esta aqui escrito, Leelo, Releelo y vuelvelo a leer. Me he molestado en hacerlo para algo
. Si haces alguna pregunta que esta contestada en estos puntos, seras ignorado y reportado. Es duro, pero es así.
Por normal general, si no te funciona, algo has hecho mal. Ya somos muchos los que nos hemos hecho nuestros propios PSGrooPIC. Si cuando lo enchufas al PC te dice "Dispositivo desconocido" O "Hub de 2 Puertos" Es porque has seleccionado mal el cristal al programar, o has intercambiado los cables D+ y D-.
Podeis visitar las paginas de los distintos desarrolladores:
http://psgroopic.blogspot.com/ La web original de J1M, creador del PSGrooPIC junto a ElSemi
http://pl3groopic.blogspot.com/ Web de Noltari, que integra la creacion de ports directamente desde el GIT de KaKaRoTo
http://nullexpage.com/app01 PSGroopic Generator, web creada por nullEX para generar automaticamente los HEX y SRC desde distintos payloads.
Me despido, no sin antes dar las gracias a todos los que han aportado su granito de arena en todos los hilos relacionados con este tema. No digo nombres, porque seguro que se me olvida alguno y luego me riñen
PD. Es la primera versión del hilo. Seguro que me olvido algo. Dimelo y lo añado.