Port PSGROOVE Payload V3 de Hermes con updates para Arduino

Hola a todos!

Después de estar buscando bastante por ahí y no encontrar nada, ayer me puse manos a la obra y he conseguido hacer un port de la v3 de psgroove de hermes con instalación de updates de juegos para arduino (Duemilanove-atmega328p, Duemilanove-atmega168 y Arduino Mega-atmega1280)
Voy a intentar mantener este hilo actualizado con las nuevas versiones para todos los que tengamos arduino.

Os dejo un enlace con el sorce más abajo y os explico los pasos a seguir para compilarlo y programarlo en el ardunino.

Voy a explicarlo para Linux, si alguien se atreve a hacer lo mismo en Windows que informe como hacerlo.
- Lo primero es identificar el modelo de arduino que tenéis, según el chip "at" que tenga.
- A continuación os he dejado 3 Makefiles que pertenecen a cada chip, renombrar el que corresponda a Makefile.
ej: Makefile.at328 -> Makefile
- Después de esto bajaros el sorce y compilarlo (para ello hace falta tener gcc-avr , avr-libc y avrdude).
- Para compilar haceis: make clean && make
- Esto dará como resultado un fichero psgroove.hex

Hasta aquí ya tenemos el hex del psgroove de hermes v3 para arduino, ahora hay que meterlo dentro de nuestro bicho :-)

- No bajamos el entorno de desarrollo de arduino para Linux: http://arduino.googlecode.com/files/arduino-0021.tgz
- Lo descomprimimos, ejecutamos y configuramos para nuestro modelo de arduino (esto no creo que haga falta explicarlo)
- Una vez funcionando, metemos los ficheros "psgroove.hex" que acabamos de compilar y "psgroove_install_XXXXX.sh" que encontrareis en el zip en "support", en la carpeta de nuestro entorno arduino "arduino-0021". Las XXXXX corresponden a vuestro modelo de "at" de arduino, recordais?
- Y ya sólo queda ejecutar ./psgroove_install_XXXXX.sh con nuestro arduino conectado al ordenador para que se flashee.


Después de esto ya podéis jugar con vuestra ps3 ;-)

ACTUALIZACIÓN 14/10/2010
He añadido la nueva versión de hermes que permite instalar updates de juegos y demos desde el menú "Install package files"


Descargas:
Versión v3 de hermes:
http://www.megaupload.com/?d=3X062DQV

Versión v3 de hermes con fix de updates:
http://www.megaupload.com/?d=OLJSW5HW
Gracias eres un maquina :)
Buenas, estoy intentando compilarlo.. desde Ubuntu, pero me salta este error:

Compiling C: psgroove.c
avr-gcc -c -mmcu=atmega168 -I. -gdwarf-2 -DF_CPU=16000000UL -DF_CLOCK=16000000UL -DBOARD=BOARD_ArduinoDuemilanove -DDEBUG_LEVEL=1 -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fno-inline-small-functions -fpack-struct -fshort-enums -fno-strict-aliasing -Wall -Wstrict-prototypes-Wa,-adhlns=./psgroove.lst -Iusbdrv/ -IBoards/ArduinoDuemilanove -std=c99 -MMD -MP -MF .dep/psgroove.o.d psgroove.c -o psgroove.o
cc1: error: unrecognized command line option "-fno-inline-small-functions"
psgroove.c:1: error: target system does not support the "dwarf-2" debug format
psgroove.c:1: warning: -ffunction-sections may affect debugging on some targets
make: *** [psgroove.o] Error 1

Hago alguna cosa mal?

UN SALUDO!! GRACIASSS!!!

EDITO:
Si no te importa, podrías poner el .hex ya compilado? en mi caso necesito el ATMEGA168, muchas gracias!!
cristianplaybox escribió:Buenas, estoy intentando compilarlo.. desde Ubuntu, pero me salta este error:

Compiling C: psgroove.c
avr-gcc -c -mmcu=atmega168 -I. -gdwarf-2 -DF_CPU=16000000UL -DF_CLOCK=16000000UL -DBOARD=BOARD_ArduinoDuemilanove -DDEBUG_LEVEL=1 -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fno-inline-small-functions -fpack-struct -fshort-enums -fno-strict-aliasing -Wall -Wstrict-prototypes-Wa,-adhlns=./psgroove.lst -Iusbdrv/ -IBoards/ArduinoDuemilanove -std=c99 -MMD -MP -MF .dep/psgroove.o.d psgroove.c -o psgroove.o
cc1: error: unrecognized command line option "-fno-inline-small-functions"
psgroove.c:1: error: target system does not support the "dwarf-2" debug format
psgroove.c:1: warning: -ffunction-sections may affect debugging on some targets
make: *** [psgroove.o] Error 1

Hago alguna cosa mal?

UN SALUDO!! GRACIASSS!!!

EDITO:
Si no te importa, podrías poner el .hex ya compilado? en mi caso necesito el ATMEGA168, muchas gracias!!

Para atmega168 no? ahi tienes, por cierto ya lo has conseguido poner a funcionar??

PD no creo que sea ilegal colgarlo sino me lo decis y lo quito

Adjuntos

no lo he conseguido no... esta noche probaré este que me has pasado y a ver si lo consigo porfin!!

Muchas gracias por la molestia!! un saludo! :p
Snek escribió:
cristianplaybox escribió:Buenas, estoy intentando compilarlo.. desde Ubuntu, pero me salta este error:

Compiling C: psgroove.c
avr-gcc -c -mmcu=atmega168 -I. -gdwarf-2 -DF_CPU=16000000UL -DF_CLOCK=16000000UL -DBOARD=BOARD_ArduinoDuemilanove -DDEBUG_LEVEL=1 -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fno-inline-small-functions -fpack-struct -fshort-enums -fno-strict-aliasing -Wall -Wstrict-prototypes-Wa,-adhlns=./psgroove.lst -Iusbdrv/ -IBoards/ArduinoDuemilanove -std=c99 -MMD -MP -MF .dep/psgroove.o.d psgroove.c -o psgroove.o
cc1: error: unrecognized command line option "-fno-inline-small-functions"
psgroove.c:1: error: target system does not support the "dwarf-2" debug format
psgroove.c:1: warning: -ffunction-sections may affect debugging on some targets
make: *** [psgroove.o] Error 1

Hago alguna cosa mal?

UN SALUDO!! GRACIASSS!!!

EDITO:
Si no te importa, podrías poner el .hex ya compilado? en mi caso necesito el ATMEGA168, muchas gracias!!

Para atmega168 no? ahi tienes, por cierto ya lo has conseguido poner a funcionar??

PD no creo que sea ilegal colgarlo sino me lo decis y lo quito


Pues no estoy seguro... creo que no se pueden poner los .hex, de todas formas el hex que has puesto es de la v3 de hermes, no?
Saludos!
lopst escribió:
Snek escribió:
cristianplaybox escribió:Buenas, estoy intentando compilarlo.. desde Ubuntu, pero me salta este error:

Compiling C: psgroove.c
avr-gcc -c -mmcu=atmega168 -I. -gdwarf-2 -DF_CPU=16000000UL -DF_CLOCK=16000000UL -DBOARD=BOARD_ArduinoDuemilanove -DDEBUG_LEVEL=1 -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fno-inline-small-functions -fpack-struct -fshort-enums -fno-strict-aliasing -Wall -Wstrict-prototypes-Wa,-adhlns=./psgroove.lst -Iusbdrv/ -IBoards/ArduinoDuemilanove -std=c99 -MMD -MP -MF .dep/psgroove.o.d psgroove.c -o psgroove.o
cc1: error: unrecognized command line option "-fno-inline-small-functions"
psgroove.c:1: error: target system does not support the "dwarf-2" debug format
psgroove.c:1: warning: -ffunction-sections may affect debugging on some targets
make: *** [psgroove.o] Error 1

Hago alguna cosa mal?

UN SALUDO!! GRACIASSS!!!

EDITO:
Si no te importa, podrías poner el .hex ya compilado? en mi caso necesito el ATMEGA168, muchas gracias!!

Para atmega168 no? ahi tienes, por cierto ya lo has conseguido poner a funcionar??

PD no creo que sea ilegal colgarlo sino me lo decis y lo quito


Pues no estoy seguro... creo que no se pueden poner los .hex, de todas formas el hex que has puesto es de la v3 de hermes, no?
Saludos!


Si, de tu version pero si me dices que no lo puedo poner lo quito que ya lo tiene

Saludos
Enhorabuena ! Gracias por el trabajo!
¿Hace falta ponerle componentes externos?
CyBeR PeReZ escribió:Enhorabuena ! Gracias por el trabajo!


Por fin lo conseguí, jejeje :P

zastiu escribió:¿Hace falta ponerle componentes externos?


Si, está el esquema que se usa en el fichero comprimido. Te adjunto los esquemas.

Adjuntos

schematic.png (10.76 KB)

Arduino duemilanove
cuacua está baneado por "Cuenta robada"
Hola buenas..... lo siento pero yo y la programacion no nos llevamos ni pa dios... podrias pasarme el .hex del v3 ( para poder instalar actualizaciones).. esque no soy capaz de compilarlo en windows.... mas bien no es que hay que hacer para compilarlo..

Un saludo y gracias..

Pd: ya lo he compilado... pero me funciona todo menos la instalacion de aplicaciones......

A alguien mas le pasa¿?
Aqui dejan el .hex de Hermes v4b para Arduino Mega y Duemilanove. El procedimiento es el mismo, solo que sustituyendo el .hex, así que si alguien quiere actualizar, ahi lo tiene.

http://www.ps3hax.net/2010/10/hermes-v4b-is-released/

EDIT: El enlace está en los comentarios.
Hola lopst,

Estoy empezando con esto de arduino, y no tengo ni idea que es esto de compilar y para que sirve o porque no lo dejais compilado y el source... que es???, cuando intento hacer "make clean && make" no hace nada, tambien me gustaria si saber si se puede hacer el downgrade con arduino.

Muchas gracias
supongo que lo que manda es el atmega no?
Se podría usar el código del duemilanove en el UNO?
Basicamente son la misma placa, mismas características y todo.
13 respuestas