[Investigación] PsGroove en PSP

gwallace escribió:
shini80 escribió:Buenasssssss, vengo de la calle, algo nuevo?? [chulito] [chulito]

parece que se siguen con problemas a la hora de emular la conexion y desconexion de los dispositivos en el hub virtual usb
de momento nada, pero al cosa va por buen camino :) paciencia que ya queda poco
un saludo


Que impacienciaaaaaaaaaaaa
(mensaje borrado)
(mensaje borrado)
shini80 escribió:Buenasssssss, vengo de la calle, algo nuevo?? [chulito] [chulito]

buenas vengo de hechar un casquete ,alguna novedad?esq manda cojones la cosa.
orenga4 escribió:
shini80 escribió:Buenasssssss, vengo de la calle, algo nuevo?? [chulito] [chulito]

buenas vengo de hechar un casquete ,alguna novedad?esq manda cojones la cosa.


Pues por lo visto tienen problemas para emular los usb o algo asi... así que a esperar todabía
nullEX escribió:
wuepe escribió:...


Lo que te he puesto antes es para emular el HUB exactamente igual que como lo emula el psgroove, y a ver que pasa ... Pero aun queda camino.



Cojonudo, iba a exponer lo mismo... aunque no se si te refieres a la forma de hacerlo o a los datos que se envían (en realidad, poco importa...)

que haya leido, ningun Windows detecta el PSJ como dispositivo conocido, con lo que intentar que win detecte un hub genérico creo que es un paso atrás (bueno, es cojonudo para coger soltura con las funciones del USB de la PSP, pero poco más...).

Segun recuerdo del código del PSGroove, hay diferentes estados dependiendo del paso que se esté dando. Por que no depurar directamente desde la pantalla de la PSP usando la PS3 en lugar de win? No se si lo estais haciendo de esta forma, pero creo que ese es el camino... no es el PC el que debe entrar en "modo debug" (ya no se ni como llamarlo: debug, devel, retail...) sino la PS3.

Saludos.
nullEX escribió:...


Probe lo que digistes, pero en Full, no se puede usar esos parametros, dice el buffer supera para el permitido, para HIGH no da problema.
Haber si podemos sacar la documentacion necesaria, eso que me indicastes me suena haberlo visto, pero en la fuente original del groove no viene esos datos, viene un descriptor.h pero viene en forma de struct.

Bueno, con los printf en el pc, veo por donde va siguiendo, la funcion del sample del mouse, entra en el callback usb_recvctl, que se asemeja al CALLBACK_USB_GetDescriptor, por ello se valida la primera pregunta del sistema, para confirma que esta bien conectado el hub.

Pero bueno, que esto en un PC funcione, no quiere decir que funcione en la ps3. En teoria, la ps3 tendria que detectar un hub, pero no se porta igual que el pc, no llega a entrar en usb_recvctl como hace en el pc, por lo que la ps3 directamente dice que no es un dispositivo compatible.

Esto es importante tambien para poder avanzar, que la ps3 por lo menos detecte el dispositivo y pueda seguir con el codigo, no se obtiene respuesta la conectarlo.

He provado el prx del mouse, y este si lo detecta bien, reconoce la psp como mouse, pero como hub, no responde igual la ps3.

Puede ser por el Código de id de Vendor y id de Produc, que no lo detecta como valido, es extraño, el Vendedor si que es el mismo que el del mouse, y usarlo como mass storage, que es Sony, pero el de producto, en mouse y storage lo coge bien, pero no en hub.

Haber, si avanzais en algo sobre esto, puesto que tambien es importante, que la ps3, reconozca como hub, para poder continuar.
_DeV_ escribió:¿Cómo va la cosa?
Yo no se mucho de programar, pero mi amigo tiene 2 PSP
Si quereis para hacer pruebas, me haceis un resumen del CFM que tiene que tener la PSP, se lo instalo, me dais lo que tenga que probar y ya os digo :)

Saludos!

exterminadorr escribió:Españaaa va perdiendo de 1!!!! Nos van a eliminarrrrrrrrrrr [mamaaaaa] [mamaaaaa] [mamaaaaa] [mamaaaaa] [mamaaaaa]

EDITO: Ahora ganamos de 3 [angelito]

shini80 escribió:Buenasssssss, vengo de la calle, algo nuevo?? [chulito] [chulito]

gwallace escribió:parece que se siguen con problemas a la hora de emular la conexion y desconexion de los dispositivos en el hub virtual usb
de momento nada, pero al cosa va por buen camino :) paciencia que ya queda poco
un saludo

Estoy tratando de tener paciencia pero me lo poneis dificil. ESTAS COSAS NO SE PREGUNTAN AQUÍ. Para este tipo de preguntas está el hilo de debate:

hilo_debate-y-testers-psgroove-en-psp_1480315_s200

Respecto a la gente que simplemente lo hace por joder...
EVITAD RESPONDERLES POR FAVOR!!! SOLO CONSEGUIREIS ALIMENTAR SUS CEREBROS DE MÁS MIERDA Y DE PASO ESTE HILO.

DESPUÉS QUERRÁN USAR EL SISTEMA EN SUS PSP Y PS3 PERO NO HACEN MAS QUE TOCAR LAS PELOTAS...

Edito: He reportado algunos de los últimos mensajes! DEJAD DE TOCAR LOS HUEVOS POR FAVOR!!!

Respecto a la gente que simplemente lo hace por joder...
EVITAD RESPONDERLES POR FAVOR!!! SOLO CONSEGUIREIS ALIMENTAR SUS CEREBROS DE MÁS MIERDA Y DE PASO ESTE HILO. DESPUÉS QUERRÁN USAR EL SISTEMA EN SUS PSP Y PS3 PERO NO HACEN MAS QUE TOCAR LAS PELOTAS...

Edito: He reportado algunos de los ultimo mensajes! DEJAD DE TOCAR LOS HUEVOS POR FAVOR!!!

[/quote]

¿Y tu porque insultas?

Reportate tu tambien y deja a la gente vivir en paz.
keops80 escribió:¿Y tu porque insultas?

Reportate tu tambien y deja a la gente vivir en paz.


Solo si lees lo que he escrito te darás cuenta de que no he ofendido a nadie. No vuelvas a postear para estas cosas o también serás reportado.
¿Es normal que PS3 se cuelgue al encenderla con la PSP enchufada usando el software que habéis subido?
Porque a mi me ha pasado y al iniciar de nuevo me preguntaba si quería informar a Sony del error que ha ocurrido (he seleccionado no xD)
Pregunto yo; ¿no sería posible en vez de emular todos y cada uno de los dispositivos conectándose y desconectándose; mandar el código en bruto? Es decir, primero hacer que se reconozca como un hub y luego mandar el torrente de datos que se supone tiene que significar que los dispositivos se han conectado y desconectado repetidas veces, en vez de simular cómo se conectan y desconectan
wuepe escribió:
nullEX escribió:...


Probe lo que digistes, pero en Full, no se puede usar esos parametros, dice el buffer supera para el permitido, para HIGH no da problema.
Haber si podemos sacar la documentacion necesaria, eso que me indicastes me suena haberlo visto, pero en la fuente original del groove no viene esos datos, viene un descriptor.h pero viene en forma de struct.

Bueno, con los printf en el pc, veo por donde va siguiendo, la funcion del sample del mouse, entra en el callback usb_recvctl, que se asemeja al CALLBACK_USB_GetDescriptor, por ello se valida la primera pregunta del sistema, para confirma que esta bien conectado el hub.

Pero bueno, que esto en un PC funcione, no quiere decir que funcione en la ps3. En teoria, la ps3 tendria que detectar un hub, pero no se porta igual que el pc, no llega a entrar en usb_recvctl como hace en el pc, por lo que la ps3 directamente dice que no es un dispositivo compatible.

Esto es importante tambien para poder avanzar, que la ps3 por lo menos detecte el dispositivo y pueda seguir con el codigo, no se obtiene respuesta la conectarlo.

He provado el prx del mouse, y este si lo detecta bien, reconoce la psp como mouse, pero como hub, no responde igual la ps3.

Puede ser por el Código de id de Vendor y id de Produc, que no lo detecta como valido, es extraño, el Vendedor si que es el mismo que el del mouse, y usarlo como mass storage, que es Sony, pero el de producto, en mouse y storage lo coge bien, pero no en hub.

Haber, si avanzais en algo sobre esto, puesto que tambien es importante, que la ps3, reconozca como hub, para poder continuar.

Se me ocurre que podeis probar a usar datos de un HUB USB verdadero que tengais por casa o del driver de alguno que veais por internet. Quizás cogiendo los datos de un HUB USB real la PS3 se quede conforme y os deje continuar.
wuepe escribió:
nullEX escribió:...


...
Haber si podemos sacar la documentacion necesaria, eso que me indicastes me suena haberlo visto, pero en la fuente original del groove no viene esos datos, viene un descriptor.h pero viene en forma de struct.
...



Si te fijas, en el device_descriptor original (el del PSGroove) hay 18 bytes en forma hex. En la estructura que usais en vuestro código tambien hay 18 bytes, solo que distribuidos en 10 chars y 4 shorts (*2 bytes cada uno, 8). En total 18 también. Por que no ir a saco? me refiero:


//original
const char HUB_Device_Descriptor[] = {
0x12, 0x01, 0x00, 0x02, 0x09, 0x00, 0x01, 0x08,
0xAA, 0xAA, 0xCC, 0xCC, 0x00, 0x01, 0x00, 0x00,
0x00, 0x01,
};




// Propio

struct DeviceDescriptor
{
unsigned char bLength;
unsigned char bDescriptorType;
unsigned short bcdUSB;
unsigned char bDeviceClass;
unsigned char bDeviceSubClass;
unsigned char bDeviceProtocol;
unsigned char bMaxPacketSize0;
unsigned short idVendor;
unsigned short idProduct;
unsigned short bcdDevice;
unsigned char iManufacturer;
unsigned char iProduct;
unsigned char iSerialNumber;
unsigned char bNumConfigurations;
} __attribute__ ((aligned(4)));

struct DeviceDescriptor *descriptor_hi;

//nuevo

memcpy ( descriptor_hi, &HUB_Device_Descriptor, 18 );

//send a saco


no hagais caso a la sintaxis, estoy más que oxidado con C...

Saludos!

Edito: Por cierto, no sigais testeando con windows . En caso de que reconociera el hub, al continuar con los demás dispositivos lo único que haréis será hacer saltar alguna BSOD, ya que en ello consiste el exploit (escribir datos de código en zonas de memoria protegida).

Edito2: La info concuerda, al menos en el primer campo: unsigned char bLength = 0x12 hex => 18 dec...
(mensaje borrado)
soy_miguel_del_tetu está baneado por "faltas de respeto reiteradas"
(mensaje borrado)
(mensaje borrado)
soy_miguel_del_tetu está baneado por "faltas de respeto reiteradas"
exterminadorr escribió:
soy_miguel_del_tetu escribió:El otro dia abri un par de memory card de ps1 para ver si se podia hacer algo con ellas y nada.


Entonces todas las memory's que tengo no sirven para nada?? [mamaaaaa] [buuuaaaa]




Imagen

yo he adaptado un interruptor de psp para hacerle el mod de los 40 NS pero ni aun asi...
er_deivi97 escribió:http://www.ps3hax.net/2010/09/psp-psgroove-port-poc/
Esto que es?????????
saludos ;)


lo mismo que se probo ayer , tiene toda la pinta
(mensaje borrado)
(mensaje borrado)
(mensaje borrado)
Aqui os dejo un pequeño avance de mi investigacion:

http://www.chip-torrent.com/tuto%20ps3/ ... xis/15.JPG

Ire informando.....
Eight está baneado por "adiós!"
es un mando...desguasado?
(mensaje borrado)
buena investigacion nesi_tor pero no dejaria de funcionar el mando? xd
Eight está baneado por "adiós!"
marioga escribió:buena investigacion nesi_tor pero no dejaria de funcionar el mando? xd



pues nop,pero si se consgiue no costara mucho ir al mediamark y comprarse uno de esos baratuchos
marioga escribió:buena investigacion nesi_tor pero no dejaria de funcionar el mando? xd



Ojala y no, pero esto seria lo de menos, podemos conseguir uno de segunda mano y listo.
(mensaje borrado)
nesi_tor escribió:Si hice la prueba ya con un ventilador, pero el atmel que traia era el atmega328 y como era SMD costaba mucho poner el puerto usb y sacarlo de ahi, asi que empece con el mando ps3 del mediamarkt.

tu investigacion me parece muy interesante, podria servir un mando de marca compatible, o tiene que ser un mando original?? que pic hay que buscar??
nesi_tor escribió:Aqui os dejo un pequeño avance de mi investigacion:

http://www.chip-torrent.com/tuto%20ps3/ ... xis/15.JPG

Ire informando.....


Como? Esa imagen no es tuya para nada, la imagen en cuestion es de un Tuto que sacaron hace mas de un año sobre como reparar el jostick del mando, creo recordar que era de esta Fuente: http://www.ps3home.com.ar/playstation-3 ... mando-ps3/ . Te lo digo porque conforme has puesto tu mensaje me das a entender que lo has desmontado tu mismo para investigar, ¿porque sino ya me diras como vas a avanzar viendo una imagen que tiene lo mas importante cubierto?
(mensaje borrado)
soy_miguel_del_tetu está baneado por "faltas de respeto reiteradas"
LoPelut escribió:
wuepe escribió:
nullEX escribió:...


...
Haber si podemos sacar la documentacion necesaria, eso que me indicastes me suena haberlo visto, pero en la fuente original del groove no viene esos datos, viene un descriptor.h pero viene en forma de struct.
...



Si te fijas, en el device_descriptor original (el del PSGroove) hay 18 bytes en forma hex. En la estructura que usais en vuestro código tambien hay 18 bytes, solo que distribuidos en 10 chars y 4 shorts (*2 bytes cada uno, 8). En total 18 también. Por que no ir a saco? me refiero:


//original
const char HUB_Device_Descriptor[] = {
0x12, 0x01, 0x00, 0x02, 0x09, 0x00, 0x01, 0x08,
0xAA, 0xAA, 0xCC, 0xCC, 0x00, 0x01, 0x00, 0x00,
0x00, 0x01,
};




// Propio

struct DeviceDescriptor
{
unsigned char bLength;
unsigned char bDescriptorType;
unsigned short bcdUSB;
unsigned char bDeviceClass;
unsigned char bDeviceSubClass;
unsigned char bDeviceProtocol;
unsigned char bMaxPacketSize0;
unsigned short idVendor;
unsigned short idProduct;
unsigned short bcdDevice;
unsigned char iManufacturer;
unsigned char iProduct;
unsigned char iSerialNumber;
unsigned char bNumConfigurations;
} __attribute__ ((aligned(4)));

struct DeviceDescriptor *descriptor_hi;

//nuevo

memcpy ( descriptor_hi, &HUB_Device_Descriptor, 18 );

//send a saco


no hagais caso a la sintaxis, estoy más que oxidado con C...

Saludos!

Edito: Por cierto, no sigais testeando con windows . En caso de que reconociera el hub, al continuar con los demás dispositivos lo único que haréis será hacer saltar alguna BSOD, ya que en ello consiste el exploit (escribir datos de código en zonas de memoria protegida).

Edito2: La info concuerda, al menos en el primer campo: unsigned char bLength = 0x12 hex => 18 dec...



El codigo que pusistes es bueno o un ejemplo porque eso de entrar a saco no lo cojo
Enhorabuena gente, me gustaria poder ayudar en algo, pero mis nulos conocimientos del medio me lo impiden. Espero que consigais al final entre todos sacar algo en claro. Un saludo.
(mensaje borrado)
(mensaje borrado)
soy_miguel_del_tetu está baneado por "faltas de respeto reiteradas"
(mensaje borrado)
(mensaje borrado)
soy_miguel_del_tetu está baneado por "faltas de respeto reiteradas"
(mensaje borrado)
(mensaje borrado)
nullEX escribió:
wuepe escribió:...


Ahora puedes probar a ponerle tanto en las descripciones de "hi" como "full" los mismos descriptores que manda el PSGroove ;)

/*------------------------------------------------------------------------------*/
/* USB HUB device descriptor                                       */
/*------------------------------------------------------------------------------*/
struct DeviceDescriptor devdesc_hub = {
   .bLength            = 0x12,
   .bDescriptorType    = 0x01,
   .bcdUSB             = 0x0002, //? 0x0200
   .bDeviceClass       = 0x09,
   .bDeviceSubClass    = 0x00,
   .bDeviceProtocol    = 0x01,
   .bMaxPacketSize     = 0x08,
   .idVendor           = 0xAAAA,
   .idProduct          = 0xCCCC,
   .bcdDevice          = 0x0001, //? 0x0100
   .iManufacturer      = 0x00,
   .iProduct           = 0x00,
   .iSerialNumber      = 0x00,
   .bNumConfigurations = 0x01
};

/*------------------------------------------------------------------------------*/
/* USB HUB configuration descriptor                                    */
/*------------------------------------------------------------------------------*/
struct ConfigDescriptor confdesc_hub = {
   .bLength             = 0x09,
   .bDescriptorType     = 0x02,
   .wTotalLength        = 0x1900, //? 0x0019
   .bNumInterfaces      = 0x01,
   .bConfigurationValue = 0x01,
   .iConfiguration      = 0x00,
   .bmAttributes        = 0xE0,
   .bMaxPower           = 0x32
};

/*------------------------------------------------------------------------------*/
/* USB HUB interface descriptor                                    */
/*------------------------------------------------------------------------------*/
struct InterfaceDescriptor interdesc_hub[2] = {
   {
      .bLength            = 0x09,
      .bDescriptorType    = 0x04,
      .bInterfaceNumber   = 0x00,
      .bAlternateSetting  = 0x00,
      .bNumEndpoints      = 0x01,
      .bInterfaceClass    = 0x09,
      .bInterfaceSubClass = 0x00,
      .bInterfaceProtocol = 0x00,
      .iInterface         = 0x00
   },
   { 0 }
};

/*------------------------------------------------------------------------------*/
/* USB HUB endpoint descriptor                                       */
/*------------------------------------------------------------------------------*/
struct EndpointDescriptor endpdesc_hub = {
   .bLength          = 0x07,
   .bDescriptorType  = 0x05,
   .bEndpointAddress = 0x81,
   .bmAttributes     = 0x03,
   .wMaxPacketSize   = 0x100,
   .bInterval        = 0x0C
};

/*------------------------------------------------------------------------------*/
/* USB HUB string description                                       */
/*------------------------------------------------------------------------------*/
static struct StringDescriptor HUBStringDescriptor = { 0x09, 0x29, {0x06, 0xA9, 0x00, 0x32, 0x64, 0x00, 0xff} };


y también añadir un EndPoint más (son 3 los que lleva el PsGroove: control, entrada y salida):
/* Endpoint blocks */
static
struct UsbEndpoint endpoints[3] = {
  { 0, 0, 0 },
  { 1, 0, 0 },
  { 2, 0, 0 }
};


No se si esto ayude pero aqui tienen un ejemplo de un codigo no releacionado a lo que se esta tratando de hacer pero que sirve de referencia en cuanto a los USB Descriptors

http://www.circuitsathome.com/mcu/programming/arduino-usb-host-part-3-descriptors

Por lo que veo hay varias cosas que no concuerdan con lo que tienes en el codigo previo como por ejemplo:

.bcdUSB             = 0x0002,


creo que deberian intentar con "0x0200" o con "0x0100" eso indica la version de USB, por otro lado podrian intentar cambiando esto tambien a que no concuerda:

.bcdDevice          = 0x0001,


por "0x0100" lo que indica el Revision ID.

si se me ocurre algo mas les aviso, por cierto podrias postear o enviarme un MP con el codigo actual para cuando termine de configurar mis herramientas de codificacion poder compilarlo y probarlo con mi PSP. Gracias de antemano.
(mensaje borrado)
Descanso de media hora para relajarse un poco y apuntar infracciones.
[erick] escribió:Descanso de media hora para relajarse un poco y apuntar infracciones.


has tardado mas de media hora :(
DjEloY escribió:
LoPelut escribió:
wuepe escribió:
...
Haber si podemos sacar la documentacion necesaria, eso que me indicastes me suena haberlo visto, pero en la fuente original del groove no viene esos datos, viene un descriptor.h pero viene en forma de struct.
...



Si te fijas, en el device_descriptor original (el del PSGroove) hay 18 bytes en forma hex. En la estructura que usais en vuestro código tambien hay 18 bytes, solo que distribuidos en 10 chars y 4 shorts (*2 bytes cada uno, 8). En total 18 también. Por que no ir a saco? me refiero:


//original
const char HUB_Device_Descriptor[] = {
0x12, 0x01, 0x00, 0x02, 0x09, 0x00, 0x01, 0x08,
0xAA, 0xAA, 0xCC, 0xCC, 0x00, 0x01, 0x00, 0x00,
0x00, 0x01,
};




// Propio

struct DeviceDescriptor
{
unsigned char bLength;
unsigned char bDescriptorType;
unsigned short bcdUSB;
unsigned char bDeviceClass;
unsigned char bDeviceSubClass;
unsigned char bDeviceProtocol;
unsigned char bMaxPacketSize0;
unsigned short idVendor;
unsigned short idProduct;
unsigned short bcdDevice;
unsigned char iManufacturer;
unsigned char iProduct;
unsigned char iSerialNumber;
unsigned char bNumConfigurations;
} __attribute__ ((aligned(4)));

struct DeviceDescriptor *descriptor_hi;

//nuevo

memcpy ( descriptor_hi, &HUB_Device_Descriptor, 18 );

//send a saco


no hagais caso a la sintaxis, estoy más que oxidado con C...

Saludos!

Edito: Por cierto, no sigais testeando con windows . En caso de que reconociera el hub, al continuar con los demás dispositivos lo único que haréis será hacer saltar alguna BSOD, ya que en ello consiste el exploit (escribir datos de código en zonas de memoria protegida).

Edito2: La info concuerda, al menos en el primer campo: unsigned char bLength = 0x12 hex => 18 dec...


El codigo que pusistes es bueno o un ejemplo porque eso de entrar a saco no lo cojo


Si, toda la información del HUB en el archivo de descriptor.h del PsGroove coincide con las estructuras que maneja el sdk de la psp. Así que sería solo ponerlo, que es lo que puesto en el post anterior. En cuanto a esto, no entiendo por qué no son válidos para las descripciones de full, porque son las mismas...

Sobre otra cosa que comenta wuepe, lo siguiente es capturar las request del usb y detectar si están pidiendo un descriptor o no. Dentro del PsGroove son dos funciones separadas (xxx_GetDescriptor y xxx_UnhandledControlRequest):
/* Device request */
static
int usb_recvctl (int arg1, int arg2, struct DeviceRequest *req)
{
   if (req->bRequest == 0x06) {//GetDescriptor Request
     unsigned char DescriptorType = (req->wValue >> 8);
     unsigned char DescriptorNumber = (req->wValue && 0xFF);
     unsigned short wLength = req->wLength;
     void* DataAddress = NULL;   
     unsigned short size = 0;
     
      if ( (size = PsGroove_GetDescription(DescriptorType, DescriptorNumber, wLength, DataAddress)) > 0 ) {
        //Enviar datos de "Address" con el tamaño "size"
      }
   }
   else {
      PsGroove_UnhandledControlRequest(*req);
   }
   return 0;
}


Las funciones de tipo "PsGroove_xxxx" las puedes encontrar dentro de mi código fuente, en el archivo "psgroove.c".
el vista me ha instalado el driver en el PC del ultimo eboot k pusisteis correctamente XD
Es una pena que no tengamos alguien, un dispositivo que ya funcione (ps jailbreak/placa programa con groove), para ver, si al conectarlo al PC, este lo detecta como un hub, o como un dispositivo desconocido, si fuera desconocido, pues habría que probar ya con la propia ps3, y no comprobar en el pc, que si reconoce o no el hub.

También seria bueno, mirar si el original(psj/gv), al conectarlo a la ps3 cuando esta ya esta encendida, si lo recono como hub, o como dispositivo usb no compatible.

Tenemos también para investiga la fuente del N900
http://github.com/kakaroto/PSFreedom/archives/master

Comentar, que ya lo e estado viendo, y este utiliza en las funciones
0x0200, /* bcdUSB */
Puesto que es trabajar con USB 2.0
Cabe mencionar, que solo utiliza el HIGH, no utiliza la interface FULL, esta esta implementa, a 0, para que cuando se le pregunte al hub, le responda que solo trabaja en modo HIGH y no FULL
Se ve en la fuente: psfreedom_machine.c
/**
* psfreedom_is_high_speed:
*
* Determine whether this controller supports high speed or not
* Returns: 1 if supports high speed, 0 otherwise
*/
static int psfreedom_is_high_speed (void)
{
  return 1;
}

/**
* psfreedom_is_low_speed:
*
* Determine whether this controller supports low speed or not
* Returns: 1 if supports low speed, 0 otherwise
*/
static int psfreedom_is_low_speed (void)
{
  return 0;
}


Edito:
Otro apunte a destacar, es mirar que ID Vendor y ID Product tiene los PSJ, puesto que en la PSP, como ya comente el vendor pongas lo que pongas, no lo cambia, al Product si le hace caso, pero el vendor, tendría que poner: 0xAAAA pero, pongas lo que pongas, siempre aparece como VID_054 en id de hardware desde administrador de dispositivos.
Estoy casi seguro al 99% de que al conectar un psj al PC lo detecta como dispositivo desconocido de haberlo leído múltiples veces los primeros días después de que las primeras muestras llegaran a los reviewers
1482 respuestas