Experiencias y avances con memoria Samsung K8Q2815UQB

Modificaciones al hardware para eliminar problemas con la memoria Samsung QB y el Teensy++:

Vamos a "robar" los 3.3v de la PS3, por lo que todo el cableado es el mísmo de siempre excepto por la parte de alimentación y el regulador de voltaje del Teensy++.

Para modificar la parte de la alimentación, debe hacerse exáctamente lo mísmo que lo explicado en la guía para conversión a 3.3V, excepto que NO HAY QUE PONER EL REGULADOR.
Si ya tenías puesto el regulador, desuéldalo y quítalo. Guía para conversión a 3.3V: http://www.pjrc.com/teensy/3volt.html
Además, un cable(que se dejará al aire) debe ser soldado para obtener 3.3V desde la PS3 hacia el Teensy++. Por favor miren la siguiente imágen para ver las modificaciones necesarias:

http://img213.imageshack.us/img213/9308/3voltmodes.jpg

TODOS LOS PINES Y PADS DE 5V DEL TEENSY++ DEBEN PERMANECER SIN CONECTARSE


Lo que acabamos de hacer fue modificar el Teensy++ para que funcione con 3.3V, pero en lugar de obtenerlos desde el regulador de voltaje, lo haremos mediante el cable que hemos soldado y conectaremos al pad de 3.3V de la NOR en la PS3. Entonces, conecta el Teensy++ a tu memoria NOR como haces siempre. Recuerda soldar el cable que se ha dejado colgando en el Teensy++ al pad de 3.3V de la NOR en la motherboard de la PS3.

AHORA, lee atentamente:

Acciones durante el proceso para eliminar problemas con la memoria Samsung QB y el Teensy++:

1)Identificaremos el modelo de la memoria NOR, si la memoria resulta ser una Samsung QB utilizaremos un método, si no lo es utilizaremos otro distinto.

Identificando el modelo de la memoria:

Condiciones iniciales:
* PS3 APAGADA;
* cable USB(Teensy++ <--> PC) desconectado;


Enciende la PS3 y espera 20 segundos. Asegúrate de que la PS3 no se apague, si lo hace vuelve a encenderla hasta que permanezca encendida correctamente.
Ahora, conecta el cable usb(Teensy++ <--> PC) y dumpea como de costumbre. Lee el modelo de la memoria según lo que el NORway informa y fíjate si la memoria es una Samsung QB, y entonces:

2)a) si la memoria NO ES una Samsung QB, continúa dumpeando/borrando/escribiendo como de costumbre. La parte importante es que la PS3 debe permanecer ENCENDIDA durante todo el proceso.
Listo, fin del tutorial para estos modelos de memorias.


b) si la memoria ES una Samsung QB, presiona y mantiene el botón de encendido de la PS3 hasta que se apague. Desconecta el cable de alimentación de la PS3. NO DESCONECTES EL CABLE USB. Si lo desconectaste vas a perder la alimentación del Teensy++(y la conexión USB) por lo que vuelve al punto 1) e intenta nuevamente.
La parte importante es que aún con la PS3 apagada, el Teensy++ va a recibir alimentación al igual que la memoria.

¡CUIDADO!: el archivo dumpeado en el ítem 1) es sólo para identificar la memoria, elimínalo ya que no puede ser confiable(por estar la PS3 encendida durante el dumpeo).


Ahora, continúa dumpeando/borrando/escribiendo como de costumbre. La parte importante es que la PS3 debe permanecer APAGADA durante todo el proceso.
Listo, fin del tutorial para este modelo de memoria.


=============================================================================================================
POST ORIGINAL

=============================================================================================================

Hola!

Voy a comentarles un poco mi experiencia con una consola PS3 que tengo brickeada y tiene memoria Samsung K8Q2815UQB NOR.
Me he pillado un Teensy++ y lo he soldado a la consola, como demuestra la siguiente imágen:

http://img200.imageshack.us/img200/7421/dsc08982c.jpg

Los resultados han sido bastante desalentadores.

Dumpeando la memoria utilizando la versión oficial del NORway, o bien una modificada(http://pastie.org/2527251) me he cansado de dumpear el firmware. ¡Todo de maravilla! O al menos eso pensé al ver que la data era la que supuestamente debía salir:

http://img193.imageshack.us/img193/9806/parecen.png

Pero no todo lo que brilla es oro. Y se me dió por calcular el MD5 de distintos dumpeos realizados a la memoria. Y ¡zaz!. Todos los MD5 dieron distintos. Al comparar los archivos, vi que había diferencias(pequeñas, centenares de ellas) suficientes como para no poder asegurarme de que lo leído era lo cierto.

http://img231.imageshack.us/img231/6965/perono.png

Esto no hubiese sido nada si no fuese porque al momento de descubrir esto ya había perdido el contenido inicial de la memoria, al haber intentado escribir un firmware parcheado(y fracasado también) tanto como con el NORway v0.3 y el archivo modificado por foobar que supuestamente solucionaba el problema del cuelgue al grabar esta memoria Samsung.

Resumiendo: ningún dump me ha dado el mísmo MD5 dos veces. Difieren en posiciones bastante aleatorias, pero...mirando las diferencias en detalle, he notado que difieren siempre en posiciones pares de Words. Esto puede implicar alguna contención eléctrica en la línea A0, que pronto espero investigar en profundidad.
[*]El comando de grabación que viene con el NORway v0.3 no grabó nada. Sólo borró(seteó a 0xFF) el Bloque0 de la memoria(que es de 4kW), pero se cuelga de lo lindo al intentar grabar y enseguida falla la verificación.
[*]El comando de grabación creado por foobar, que supuestamente funcionaba, lo hace hasta los 128KB. Momento en el cual se cuelga permanentemente(hay justo un cambio de bloque, creo que allí comienza el Bloque09, por la Address 0x10000 (0x20000 en bytes)).

Así que bueno, no habiendo podido ni leer ni escribir correctamente... ¡manos a la obra!. ¡A intentar construir sobre lo que otros han hecho(Y GRACIAS POR ELLO)! Y allí fuí.
He desarrollado una subrutina específica para la Samsung(y creo que debería funcionar con el resto de los modelos de memorias). Dicha subrutina requiere cambiar tanto en el archivo del lado de la PC como el del firmware interno del Teensy++.

Lo bueno es que parece funcionar. Cuando digo "parece" es porque si no logro leer dos veces lo mísmo...¿cómo esperan que pueda verificar la escritura al 100%? Tiene el típico problema de fallar al intentar escribir más allá de la dirección 0x400000(0x800000 en Bytes), es decir, en el segundo chip de la memoria.
Esto dicen que se soluciona conectando la línea A22 del Teensy++ con una resistencia de 3.3k en serie a a 3.3V. Dirán: ¿Para qué me hacen poner eso? ¿Acaso no pueden, mediante software, poner la pata del Teensy++ que comanda el pin A22 a 3.3V? ¿Acaso no es lo que hacen con el resto de los pines? Bueno, evidentemente hay un problema eléctrico. Un problema de cortocircuitos por estar comandando la memoria a la par de la PS3. Problema que puede ser causa de mis lecturas fallidas. He leído por ahí que este modelo de memoria Samsung sólo sería leída y grabada correctamente desoldandola y trabajando con ella por separado, para luego volver a soldarla una vez reprogramada. No me gusta la idea de tener que hacerlo, pero llegado el caso lo haré.

ADVERTENCIA! ASEGÚRENSE DE HABER DUMPEADO VARIAS VECES EL FIRMWARE QUE TIENE SU MEMORIA, Y CALCULEN LOS MD5 DE LOS ARCHIVOS DUMPEADOS. TIENEN QUE DAR EXÁCTAMENTE EL MÍSMO VALOR MD5 ANTES DE PROCEDER A BORRAR Y REESCRIBIR LA MEMORIA

Volviendo, describo brevemente los comandos que he implementado:
El proceso es similar al que se utiliza para trabajar con el Teensy++ y el NORway(lo explíco para Windows. Los que utilizan Linux asumo que la tienen más clara):

Abrir una nueva consola de DOS e ir a la carpeta donde instalaron el Python. Una vez allí la estructura es:

primero, borrar el contenido de toda la memoria:

python.exe [RUTA_A_ARCHIVO_SAMSUNG.PY] [PUERTO] erase_samsung

Ejemplo:

python.exe C:\NORway\samsung.py COM3 erase_samsung

Luego,

python.exe [RUTA_A_ARCHIVO_SAMSUNG.PY] [PUERTO] writeAlt [RUTA_A_ARCHIVO_A_ESCRIBIR] [offset(opcional)]

Ejemplos:

python.exe C:\NORway\samsung.py COM3 writeAlt C:\NORway\final.bin.REV

Ejemplo para grabar sólo el segundo chip(por ahora con la resistencia a positivo que mencioné anteriormente):

python.exe C:\NORway\samsung.py COM3 writeAlt C:\NORway\final.bin.REV 0x400000

Debería grabar toda la memoria en unos 7 minutos.

He modificado varias subrutinas(y una nueva: dumpAlt, que si bien es EXTREMADAMENTE lenta, parece ser la única que no me ha fallado al leer por lo poco que la he probado).
Los archivos están en etapa "beta" y no son definitivos.

Adjunto los archivos necesarios:
<--- Contiene el archivo .hex compatible con mi programa de PC que debe ser cargado en el Teensy++ previo a ejecutar cualquier comando en la PC.
<--- Contiene el archivo que deben ejecutar en la PC para ingresar y ejecutar los comandos especificados.

Éxitos y cualquier avance, comentario o duda no duden en escribir.

Sigo en la lucha...

Links relacionados:
noralizer
ps3devwiki
gracias por tu aporte pero no entendi na
estos downgrades no son tan facil como lo hacen ver en los tutoriales ,parece ser que quien lo logra conseguir es por pura suerte
no me extraña nada que con la longitud de los cables tengas problemas de lectura , cuanto mas cortos mejor
crackmyday que feo lo que te sucedio no se lo deseo a nadie
lei que el tema de los 3.3v jode un poco ,no seria mejor usar una fuente externa?

seguramente tambien tienes una chechl01 con samsung q

yo tengo una chechl1 con pantalla roja desde hace años con firm 2.42 y la he updeteado a 3,41 y downgredeado pero siempre sale el red screen
estaba analizando comprarme un progskeet pero creo que ni eso te asegura poder recuperarla del red screen nisiquiera teniendo un buen dump
LUCKYMAS escribió:no me extraña nada que con la longitud de los cables tengas problemas de lectura , cuanto mas cortos mejor


seria bueno subieran unas fotos de las instalaciones que si an funcionado ,asi se podria giar uno para tomar el ejemplo
e leido que ninguna samsung es compatible con teensy
Aquí otro con el mismo problema.
Tambien tengo una chechl1 con nor samsung y no hay forma de escribir el dump. A mi si me ha salido bien el dump y siempre igual. Pero no ha manera de escribir el dump parcheado. Probado con el teensy 2++
Straith escribió:Aquí otro con el mismo problema.
Tambien tengo una chechl1 con nor samsung y no hay forma de escribir el dump. A mi si me ha salido bien el dump y siempre igual. Pero no ha manera de escribir el dump parcheado. Probado con el teensy 2++

suerte
http://www.ps3news.com/forums/ps3-hacks ... 191-3.html
LUCKYMAS escribió:
Straith escribió:Aquí otro con el mismo problema.
Tambien tengo una chechl1 con nor samsung y no hay forma de escribir el dump. A mi si me ha salido bien el dump y siempre igual. Pero no ha manera de escribir el dump parcheado. Probado con el teensy 2++

suerte
http://www.ps3news.com/forums/ps3-hacks ... 191-3.html

Pues había tenido acceso hasta la beta 5 de la version 4, y aún así no funcionaba. Acabo de probar esta y tampoco vá :S
Hola!
Perdonen la demora.

Miren, la longitud de los cables no se hasta que punto es verdad...
He tenido muchos problemas con la memoria Samsung, y ninguno con otros chips de consolas SLIM. Siempre con la misma longitud de cables...

Yo he podido escribir el dump de las Samsung incluso. He colaborado con la versión actual del Tensy++, y pese a que judges incorporó mi subrutina de aceleración en su nueva versión, sólo he podido grabar las memorias Samsung con mi subrutina que he adjuntado.

Espero en unos días hacer unos experimentos más antes de pensar en utilizar otra herramienta.

Saludos.
CrackMyDay escribió:Hola!
Perdonen la demora.

Miren, la longitud de los cables no se hasta que punto es verdad...
He tenido muchos problemas con la memoria Samsung, y ninguno con otros chips de consolas SLIM. Siempre con la misma longitud de cables...

Yo he podido escribir el dump de las Samsung incluso. He colaborado con la versión actual del Tensy++, y pese a que judges incorporó mi subrutina de aceleración en su nueva versión, sólo he podido grabar las memorias Samsung con mi subrutina que he adjuntado.

Espero en unos días hacer unos experimentos más antes de pensar en utilizar otra herramienta.

Saludos.

oye pero yo escribi en mi teensy con esos archivos que pusiste y el teensy se quedo en modo flasheo todo el tiempo y el archivo samsung.py no hacia nada bueno a lo mejor seria por ese hex que pusiste
Tenés que reprogramar el Teensy++ primero...

Mis archivos funcionan!

Saludos.
pero eso fue lo que dije que escribi con el hex que pusiste y no me funciono el teensy. ahora mismo no tengo otra consola para probar pero ahora me esta dando fallos el teensy no me reconoce las nor
Pronto voy a publicar un tutorial para poder dumpear/borrar/escribir las memorias Samsung QB sin problemas.

Hilo oficial:

http://www.ps3hax.net/showthread.php?p= ... post283870
CrackMyDay escribió:Pronto voy a publicar un tutorial para poder dumpear/borrar/escribir las memorias Samsung QB sin problemas.

Hilo oficial:

http://www.ps3hax.net/showthread.php?p= ... post283870

con que flasher ? con el progskeet se puede sin problemas
Modificaciones al hardware para eliminar problemas con la memoria Samsung QB y el Teensy++:

Vamos a "robar" los 3.3v de la PS3, por lo que todo el cableado es el mísmo de siempre excepto por la parte de alimentación y el regulador de voltaje del Teensy++.

Para modificar la parte de la alimentación, debe hacerse exáctamente lo mísmo que lo explicado en la guía para conversión a 3.3V, excepto que NO HAY QUE PONER EL REGULADOR.
Si ya tenías puesto el regulador, desuéldalo y quítalo. Guía para conversión a 3.3V: http://www.pjrc.com/teensy/3volt.html
Además, un cable(que se dejará al aire) debe ser soldado para obtener 3.3V desde la PS3 hacia el Teensy++. Por favor miren la siguiente imágen para ver las modificaciones necesarias:

http://img213.imageshack.us/img213/9308/3voltmodes.jpg

TODOS LOS PINES Y PADS DE 5V DEL TEENSY++ DEBEN PERMANECER SIN CONECTARSE


Lo que acabamos de hacer fue modificar el Teensy++ para que funcione con 3.3V, pero en lugar de obtenerlos desde el regulador de voltaje, lo haremos mediante el cable que hemos soldado y conectaremos al pad de 3.3V de la NOR en la PS3. Entonces, conecta el Teensy++ a tu memoria NOR como haces siempre. Recuerda soldar el cable que se ha dejado colgando en el Teensy++ al pad de 3.3V de la NOR en la motherboard de la PS3.

AHORA, lee atentamente:

Acciones durante el proceso para eliminar problemas con la memoria Samsung QB y el Teensy++:

1)Identificaremos el modelo de la memoria NOR, si la memoria resulta ser una Samsung QB utilizaremos un método, si no lo es utilizaremos otro distinto.

Identificando el modelo de la memoria:

Condiciones iniciales:
* PS3 APAGADA;
* cable USB(Teensy++ <--> PC) desconectado;


Enciende la PS3 y espera 20 segundos. Asegúrate de que la PS3 no se apague, si lo hace vuelve a encenderla hasta que permanezca encendida correctamente.
Ahora, conecta el cable usb(Teensy++ <--> PC) y dumpea como de costumbre. Lee el modelo de la memoria según lo que el NORway informa y fíjate si la memoria es una Samsung QB, y entonces:

2)a) si la memoria NO ES una Samsung QB, continúa dumpeando/borrando/escribiendo como de costumbre. La parte importante es que la PS3 debe permanecer ENCENDIDA durante todo el proceso.
Listo, fin del tutorial para estos modelos de memorias.


b) si la memoria ES una Samsung QB, presiona y mantiene el botón de encendido de la PS3 hasta que se apague. Desconecta el cable de alimentación de la PS3. NO DESCONECTES EL CABLE USB. Si lo desconectaste vas a perder la alimentación del Teensy++(y la conexión USB) por lo que vuelve al punto 1) e intenta nuevamente.
La parte importante es que aún con la PS3 apagada, el Teensy++ va a recibir alimentación al igual que la memoria.

¡CUIDADO!: el archivo dumpeado en el ítem 1) es sólo para identificar la memoria, elimínalo ya que no puede ser confiable(por estar la PS3 encendida durante el dumpeo).


Ahora, continúa dumpeando/borrando/escribiendo como de costumbre. La parte importante es que la PS3 debe permanecer APAGADA durante todo el proceso.
Listo, fin del tutorial para este modelo de memoria.
gracias por la gran aportacion, con este tutorial dices que va todo sin problemas no? y otra pregunta esto funciona con todos los norway o solo con tus herramientas?
Si, no he tenido mas problemas desde que he descubierto esto. Funciona con todas las versiones del NORway, no sólo las mías. Igualmente, parte de mi versión ha sido migrada por Judges a la suya y ahora están unificadas en la versión oficial.

Saludos.
hay alguna version mas reciente o mas estable que la norway v0.4 beta de judges? esque tengo esa porque ami es la unica que no me daba errores si es asi te agradeceria mucho que me dijeras eesque estuve mirando y no vi mas de v0.3
La última es la v0.4 beta 12. http://www.multiupload.com/FK0ZOV7LJ0

No se ha avanzado más en versiones. Había algunas ganas de implementar la escritura por bancos con judges, pero como es prescindible no se ha hecho. Me quedan algunas ganas de implementar para las memorias NAND, pero realmente no son la mayoría de las consolas y no tengo ninguna para probar.

Saludos.
CrackMyDay escribió:La última es la v0.4 beta 12. http://www.multiupload.com/FK0ZOV7LJ0

No se ha avanzado más en versiones. Había algunas ganas de implementar la escritura por bancos con judges, pero como es prescindible no se ha hecho. Me quedan algunas ganas de implementar para las memorias NAND, pero realmente no son la mayoría de las consolas y no tengo ninguna para probar.

Saludos.


Pues yo encantado de la vida te donaria una maquina si me sobrara una,y siento el offtopic pero me has dado muy buenas impresiones, se te ve con conocimientos al igual que mucha gente aqui,por eso me gustaria proponer un hilo donde aquellas consolas brickeadas fuesen a parar a manos de personas cualificadas...somos 315.670 usuarios sobran ps3 petadas seguro! sobran cabezas, por no decir de aquellas que ya nos han dado sus frutos y que por unos pocos desagradecidos ya no disfrutamos de sus logros,desde estas palabras propongo a esta gran comunidad que se una y aporte a sus desarolladores, y que esto a la vez se unan ((TeAm EoL) He..2pi..Psm..)perdon si a alguien le moleste que lo nombre.

Si alquien cree en ello y le gustaria aportar con su pisapapeles que no lo dude yo colaboraria por ejemplo pagando portes o cualquier cosa que este en mi mano y los comentarios o contestaciones chorras me las enviais por privado que bastante he ensuciado el post.

p.d Un saludo crack! y buen trabajo
aquí en el eol tratamos , de ayudar a los mas necesitados con problemas , , optamos por poder ayudar a miles de usuarios que nos piden nuestra ayuda como en su día la pedimos nosotros , ya tenemos varios hilos sobre el temas , por ejemplo el tema de la actualizacion de sony 3.56v1 que bloqueo miles de usuarios por error de 8002fc25 etc tras cambiar o formatear el hdd de la ps3 , que incluso, se creo una plataforma de afectados y a casi un año de aquello, ya tienen la solucion , en que me incluia yo , ahora intentamos ayudar desde los flasher a poder recuperar o downgradear esos ladrillos y brick que se pensaban que jamas se arreglarian , yo doy las gracias a quien como yo atribuye a ayudar a esta gente con hilos como estos, Saludos.
Bueno, muchas gracias por los comentarios.

Si doy con alguna consola con NAND podría tal vez darle soporte... sería relajante soldar menos cables! ja ja!
Ojalá algún día se arme un buen equipo de scene, de momento sólo soy un solitario mercenario...

Saludos.
una pregunta ahi qe instalar el teensyduino para hacerlo funcionar a los 3.3v¿ es que no lo puedo instala me pide que seleccione el lugar de instalacion y no me activa la opcion next.
juan_uceta escribió:una pregunta ahi qe instalar el teensyduino para hacerlo funcionar a los 3.3v¿ es que no lo puedo instala me pide que seleccione el lugar de instalacion y no me activa la opcion next.


no para el teensy++ eso no hace falta, solo corta la pista de 5v y unes los 2 contactos de 3v y ya esta luego es unir el cable y demas como indica el tutorial
chungui_ escribió:
juan_uceta escribió:una pregunta ahi qe instalar el teensyduino para hacerlo funcionar a los 3.3v¿ es que no lo puedo instala me pide que seleccione el lugar de instalacion y no me activa la opcion next.


no para el teensy++ eso no hace falta, solo corta la pista de 5v y unes los 2 contactos de 3v y ya esta luego es unir el cable y demas como indica el tutorial


Exáctamente. Me alegra haberme podido explicar bien en el tutorial. Por otro lado, veo que la imágen del tutorial no está disponible. Qué raro...Habrá que esperar un poco y sino volveré a subirla.
CrackMyDay escribió:
chungui_ escribió:
juan_uceta escribió:una pregunta ahi qe instalar el teensyduino para hacerlo funcionar a los 3.3v¿ es que no lo puedo instala me pide que seleccione el lugar de instalacion y no me activa la opcion next.


no para el teensy++ eso no hace falta, solo corta la pista de 5v y unes los 2 contactos de 3v y ya esta luego es unir el cable y demas como indica el tutorial


Exáctamente. Me alegra haberme podido explicar bien en el tutorial. Por otro lado, veo que la imágen del tutorial no está disponible. Qué raro...Habrá que esperar un poco y sino volveré a subirla.

el post por CrackMyDay 16 Nov 2011 15:56 debes cogerlo y subirlo al primer hilo en la pagina principal de su creación y todas las actualizaciones también , si no luego la peña se vuelve loca buscando por la mitad de los hilos informacion.
crackmyday perdon por el offtopic, pero es posible controlar relays con el teensy? y como lo haria? es que deseo controlar por lo menos 8 relays lo hacia anteriormente por lpt pero ya no tengo pc con este puerto disponible
ejem.:http://www.ebay.com/itm/USB-8-Channel-Relay-Board-Automation-Control-Port-/150700715224?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item2316766cd8
Hola. Claro que si.

Tendrias que modificar un poco el archivo del microcontrolador para que saque por un puerto el valor que recibe por puerto serial...

No me parece gran desafio. Obviamente necesitaras agregarle la etapa de potencia para controlar relays, con transistores de por medio.

Saludos.
es que el que tengo aki como que no me quiere reconocer del todo las nors y pedi otro y me llega en estos dias entonces me gustaria aprovechar este para dicho tema. entonces ayudame con cuales soft yo lo prepararia¿
Pues para editar/compilar el firmware del uC puedes usar AVR Studio. Tienes que eliminar todo el set de comandos y hacer el tuyo propio. Si sólo te interesa comandar 8 relays pues necesitas sólo leer un byte de entrada y mostrarlo en un puerto de salida del uC.

Saludos.
CrackMyDay escribió:Pues para editar/compilar el firmware del uC puedes usar AVR Studio. Tienes que eliminar todo el set de comandos y hacer el tuyo propio. Si sólo te interesa comandar 8 relays pues necesitas sólo leer un byte de entrada y mostrarlo en un puerto de salida del uC.

Saludos.

jejejej me hablaste en ingles, descargue el soft pero estoy en el aire si un algun dia tienes tiempo y quieres hacer alguna obra caritativa esta seria una muy buena jejeje
pd: si se pueden agregar mas de 8 relay seria un exito
juan_uceta escribió:
CrackMyDay escribió:Pues para editar/compilar el firmware del uC puedes usar AVR Studio. Tienes que eliminar todo el set de comandos y hacer el tuyo propio. Si sólo te interesa comandar 8 relays pues necesitas sólo leer un byte de entrada y mostrarlo en un puerto de salida del uC.

Saludos.

jejejej me hablaste en ingles, descargue el soft pero estoy en el aire si un algun dia tienes tiempo y quieres hacer alguna obra caritativa esta seria una muy buena jejeje
pd: si se pueden agregar mas de 8 relay seria un exito


Parece que quieres controlar los tv del club no? Me interesa mucho para el mío, voy a investigar a ver que encuentro, soy tecnico en electrónica y de la conexion de los relays y demas puedo hacerlo, solo faltaría el soft para manejarlo desde la pc.
papachaca escribió:
juan_uceta escribió:
CrackMyDay escribió:Pues para editar/compilar el firmware del uC puedes usar AVR Studio. Tienes que eliminar todo el set de comandos y hacer el tuyo propio. Si sólo te interesa comandar 8 relays pues necesitas sólo leer un byte de entrada y mostrarlo en un puerto de salida del uC.

Saludos.

jejejej me hablaste en ingles, descargue el soft pero estoy en el aire si un algun dia tienes tiempo y quieres hacer alguna obra caritativa esta seria una muy buena jejeje
pd: si se pueden agregar mas de 8 relay seria un exito


Parece que quieres controlar los tv del club no? Me interesa mucho para el mío, voy a investigar a ver que encuentro, soy tecnico en electrónica y de la conexion de los relays y demas puedo hacerlo, solo faltaría el soft para manejarlo desde la pc.

yo tengo todo pero por lpt entonces tengo mucho problema con ese puerto y no lo puedo portar a usb
yo tengo todo pero por lpt entonces tengo mucho problema con ese puerto y no lo puedo portar a usb


Vamos a ver como lo portamos, estaba averiguando y hay un soft que venden por suramerica que funciona de maravilla, pero cuesta.... en fin, a ver que encuentro para hacerlo con el teensey o algun pic, el problema que veo es el soft , controlar los reley con timer,etc. Si consigo algo te llamo o nos comunicamos por aqui.

hace poco mas de dos años le compre este(www.cyberadmin.net) a un amigo y funciona de maravilla, pues controla las pc y los videojuegos, para los juegos lleva hardware adicional para tumbar los video de la tv como un switch, pero no puedo copiarlo porque le borraron todos los numeros de las piezas, pero es fantastico, ellos lo diseñaron para usarlo por el cable de red o sea se controla con ip, vi otro que era controlado por lpt, en fin, veremos que encuentro.
Ahora mísmo no tengo el AVR Studio instalado, pero es sumamente sencillo modificar el soft para que comanden 8 o 16 relays.

No probé el siguiente código, y puede que tenga algun detalle que corregir para que compile o corra bien. No me hago cargo de las consecuencias de su uso, maluso o abuso... Pero no deberia estar muy lejos de funcionar:

Hacer una copia de la carpeta de la carpeta del codigo fuente del Teensy++ para el Norway. Abrir el proyecto y reemplazar el contenido de Norway.c por este:

/************************************************************************

This code is licensed to you under the terms of the GNU GPL, version 2;
see file COPYING or http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
*************************************************************************
Relay control by CrackMyDay for EOL ----
*************************************************************************/

#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "usb_serial.h"

#define CPU_PRESCALE(n)   (CLKPR = 0x80, CLKPR = (n))

// Define data ports
#define DATA1_PORT   PORTD
#define DATA1_PIN   PIND
#define DATA1_DDR   DDRD

#define DATA2_PORT   PORTC
#define DATA2_PIN   PINC
#define DATA2_DDR   DDRC

// Define address line ports
#define ADDR1_PORT   PORTF
#define ADDR1_PIN   PINF
#define ADDR1_DDR   DDRF

#define ADDR2_PORT   PORTA
#define ADDR2_PIN   PINA
#define ADDR2_DDR   DDRA

#define ADDR3_PORT   PORTB
#define ADDR3_PIN   PINB
#define ADDR3_DDR   DDRB

// Define control port and pins
#define CONT_PORT   PORTE
#define CONT_DDR   DDRE
#define CONT_PIN   PINE

#define   S_IDLE         0
#define   S_SET_PORTA_VALUES   1
#define   S_SET_PORTB_VALUES   2



void bootloader()
{
   cli();
   // disable watchdog, if enabled
   // disable all peripherals
   UDCON = 1;
   USBCON = (1<<FRZCLK);  // disable USB
   UCSR1B = 0;
   _delay_ms(50);

   EIMSK = 0; PCICR = 0; SPCR = 0; ACSR = 0; EECR = 0; ADCSRA = 0;
   TIMSK0 = 0; TIMSK1 = 0; TIMSK2 = 0; TIMSK3 = 0; UCSR1B = 0; TWCR = 0;
   DDRA = 0; DDRB = 0; DDRC = 0; DDRD = 0; DDRE = 0; DDRF = 0;
   PORTA = 0; PORTB = 0; PORTC = 0; PORTD = 0; PORTE = 0; PORTF = 0;

   __asm volatile("jmp 0x1FC00");
}
   

int main(void)
{
   int16_t in_data;
   uint8_t state;

   // set for 8 MHz clock
   CPU_PRESCALE(1);
   // set for 16 MHz clock
   //CPU_PRESCALE(0);

   // Initialize the USB, and then wait for the host to set configuration.
   // If the Teensy is powered without a PC connected to the USB port,
   // this will wait forever.
   usb_init();
   while (!usb_configured()) /* wait */ ;

   // Wait an extra second for the PC's operating system to load drivers
   // and do whatever it does to actually be ready for input
   _delay_ms(1000);


   DATA1_DDR = DATA2_DDR = 0xFF;   // set for output
   ADDR1_DDR = ADDR2_DDR = ADDR3_DDR = 0xFF; //address ports are always output
   ADDR1_PORT = ADDR2_PORT = ADDR3_PORT = 0;
   
   CONT_DDR = 0xFF; //all control ports are always output

   state = S_IDLE;
   while (1) {
      // wait for the user to run client app
      // which sets DTR to indicate it is ready to receive.
      while (!(usb_serial_get_control() & USB_SERIAL_DTR)) /* wait */ ;

      // discard anything that was received prior.  Sometimes the
      // operating system or other software will send a modem
      // "AT command", which can still be buffered.
      usb_serial_flush_input();

      while (usb_configured() && (usb_serial_get_control() & USB_SERIAL_DTR)) { // is user still connected?
         switch (state) {
         case S_IDLE:
            if ((in_data = usb_serial_getchar()) != -1) {
               if(in_data == 'A') state = S_SET_PORTA_VALUES;
               if(in_data == 'B') state = S_SET_PORTB_VALUES;
            }
            break;

         case S_SET_PORTA_VALUES:
            if ((in_data = usb_serial_getchar()) != -1) {
               ADDR2 = in_data;
               usb_serial_putchar('K');
               usb_serial_putchar('A');
               state = S_IDLE;
            }
            break;


         case S_SET_PORTB_VALUES:
            if ((in_data = usb_serial_getchar()) != -1) {
               ADDR3 = in_data;
               usb_serial_putchar('K');
               usb_serial_putchar('B');
               state = S_IDLE;
            }
            break;

         default:
            break;
         }
      }      
   }
}


Compilar y cargar el firm en el Teensy++

Luego, utilizando algun programa como Terminal, enviar por ejemplo los valores:
'A'
0x41, 0x00 pone a bajo todo el portA del Atmel
'B'
0x42, 0x00 pone a bajo todo el portB del Atmel

'A'
0x41, 0xFF pone a alto todo el portA del Atmel
'B'
0x42, 0xFF pone a alto todo el portB del Atmel

'A'
0x41, 0x80 pone en alto A7, [A0;A6] en bajo.


etc...

Si el comando se ejecuta bien el uC responde por serie con:
'O', 'A'
0x4F, 0x41

para los comandos del porta

y

'O', 'B'
0x4F, 0x42

para los comandos del portb

Saludos.
porque siempre me sale esto con la samsung?

NOR chip manufacturer: Samsung (0xec)
NOR chip type: K8Q2815UQB (0x7e0601)

STATUS_TRIST_N: True
STATUS_RESET_N: True
STATUS_READY:   True
STATUS_CE_N:    False
STATUS_WE_N:    True
STATUS_OE_N:    True

Resetting NOR...
Ready.

C:\NOr4>norway.py com4 writewordubm linkflash.bin
NORway.py v0.4 beta - Teensy++ 2.0 NOR flasher for PS3 (judges@eEcho.com)
(Orignal noralizer.py by Hector Martin "marcan" <hector@marcansoft.com>)

Pinging...
Set SB to tristate

NOR chip manufacturer: Samsung (0xec)
NOR chip type: K8Q2815UQB (0x7e0601)

STATUS_TRIST_N: True
STATUS_RESET_N: True
STATUS_READY:   True
STATUS_CE_N:    False
STATUS_WE_N:    True
STATUS_OE_N:    True

Resetting NOR...
Ready.

Writing...
0 KB / 16384 KB (1. Retry)
(2. Retry)
(3. Retry)
(4. Retry)
(5. Retry)
(6. Retry)
(7. Retry)
(8. Retry)
(9. Retry)
(10. Retry)
(11. Retry)
(12. Retry)
(13. Retry)
(14. Retry)
(15. Retry)
(16. Retry)
(17. Retry)
(18. Retry)
(19. Retry)
(20. Retry)
Traceback (most recent call last):
File "C:\NOr4\NORway.py", line 645, in <module>
n.writerange(addr, data, False, True)
File "C:\NOr4\NORway.py", line 512, in writerange
self.program(addr/2, data[:0x20000], wordmode, ubm)
File "C:\NOr4\NORway.py", line 444, in program
raise NORError("Verification failed")
__main__.NORError: Verification failed

C:\NOr4>norway.py
Que version del Norway estas usando? Recuerdo que a mi me salia eso en las primeras betas, por ello implemente parte de las modificaciones que aqui estan publicadas.
el hex y la norway 4, si tienes alguno mas avanzado que me facilites.
Norway 4 pero que beta? beta 12?
CrackMyDay escribió:Norway 4 pero que beta? beta 12?

vi que subiste ese beta unas paginas atras y me funciono sin quitarle el regulador y con el pad 5v que ahora son 3.3v y con la consola encendida
No te sigo bien... Has logrado que funcione o no?
CrackMyDay escribió:No te sigo bien... Has logrado que funcione o no?

si con la beta12 que pusiste anteriormente me funciono a la primera pero con el regulador montado, bueno no probe con el metodo tuyo y este beta.pero me funciono a la primera solo 5 minutos en escritura todo un palo jejejej
Está bien. La beta12 es la que deberías utilizar.

Saludos.
Pues a mi esto me esta volviendo loco: pude hacer el dump bien, lo comprobé con flowrebuilder, borré la flash y por último escribi la nand parcheada, al parecer hice un mal parcheo de la nand porque al iniciar el ps3 me da luz amarilla y se apaga.
Para estar seguro quería escribir la nand original otra vez, pero ahora tengo el siguiente error y no he encontrado solución:



C:\NORway>norway.py com7 writewordubm chichi.bin
NORway.py v0.4 beta - Teensy++ 2.0 NOR flasher for PS3 (judges@eEcho.c
(Orignal noralizer.py by Hector Martin "marcan" <hector@marcansoft.com

Pinging...
Set SB to tristate



NOR chip manufacturer: Spansion (0x01)
NOR chip type: S29GL128 (0x7e2101)

Checking sector protection...
No protected sectors found!

STATUS_TRIST_N: True
STATUS_RESET_N: True
STATUS_READY: True
STATUS_CE_N: False
STATUS_WE_N: True
STATUS_OE_N: True

Resetting NOR...
Ready.

Writing...
0 KB / 16384 KB (1. Retry)
(2. Retry)
(3. Retry)
(4. Retry)
(5. Retry)
(6. Retry)
(7. Retry)
(8. Retry)
(9. Retry)
(10. Retry)
(11. Retry)
(12. Retry)
(13. Retry)
(14. Retry)
(15. Retry)
(16. Retry)
(17. Retry)
(18. Retry)
(19. Retry)
(20. Retry)
Traceback (most recent call last):
File "C:\NORway\NORway.py", line 702, in <module>
n.writerange(addr, data, False, True)
File "C:\NORway\NORway.py", line 512, in writerange
self.program(addr/2, data[:0x20000], wordmode, ubm)
File "C:\NORway\NORway.py", line 444, in program
raise NORError("Verification failed")
__main__.NORError: Verification failed

Por favor diganme algo!!!! :(


update: Solucionado, gracias a Dios!! Luego explico.

Update 2: siguiendo este tutorial he dumpeado una nor qb con rsod, todo parecia correcto pero, a la hora de encender la ps3 se queda sin video ni sonido solo el led verde, la volví a borrar y escribir otra vez y sucede lo mismo, los dumps los he chekeado y comparado como siempre y parecen bueno.
Alguna idea? Algo mas: no parecen funcionar los usb. Saludos

Update 3: Solucionado, gracias de Dios otra vez!! Resulta que no me fijé que la nor era samsung qb e hice los dumbs con la ps3 encendida, tuve mucha suerta que los dumps estaban bien, el problema que al borrar no lo hacia bien y se me ocurrió cargar el hex de crackmyday para borrar las nor y..... efectivamente borró bien , volvi a meter el hex de norway, escribí el dump original y ya funciona, ahora voy a ver que sucede con la pantalla roja. Por cierto, gracias CrackMyDay, sin este tuto no hubiera sido posible. Saludos.
hey crackmyday como estas? felices pascuas. me gustaria saber si ahi algun update para el teensy y el norway, es que tengo en mi poder 3 fat ver-001 con samsung QB y estas no me dejan escribir por nada del mundo
Hola. He grabado todas las QB con el tutorial que está en este hilo. No he tenido más problemas desde que las grabo como menciono en ese tuto. Probaste?

Felices fiestas.
pero estas usando el hex de la beta12 o el que pusiste para el samsung.py? es que ahora que me estoy dando cuenta que con el hex normal no me da los datos de la memoria. puedo escribir con el samsun.py pero la consola me queda en brick osea que escribe pero en blanco.
Perdona la demora.

Siempre con la versión beta 12. Mis aportes han sido integrados en la beta 12 por el autor.

Saludos.
56 respuestas
1, 2