silicontrip / SkyReader

A Skylander portal reader/editor/writer for OSX.
87 stars 55 forks source link

Unable to detect portal as a HID device on Ubuntu #4

Closed neilagabriel closed 9 years ago

neilagabriel commented 9 years ago

I tried using both the Skylanders Giants and Swapforce portals and neither are detected by the hidapi package. lsusb shows bDeviceClass and ``bInterfaceClass are 255 (Vendor) instead of 3 (HID). I believe this is why they are not recognized. I believe I installed the hidapi software correctly as the hidtest program that comes with the package is able to detect a USB mouse without issue.

Any advice?

silicontrip commented 9 years ago

Are these Xbox 360 portals?

neilagabriel commented 9 years ago

Indeed.

silicontrip commented 9 years ago

I have heard that xbox 360 usb peripherals contain extra encryption hardware and don't work like regular (Wii, PS3/4, PC) portals. Possibly to prevent 3rd parties from producing xbox peripherals without license from Microsoft.
I am a little bit interested in looking further implementing this since we bought a 360 last Christmas and got Trap Team for it this Christmas. But at the moment Xbox 360 portals are not compatible. Sorry.

neilagabriel commented 9 years ago

Thanks. Btw, I have Trap Team as well. I'll close this issue but do let me know if there is anything you'd like me to try to if you have any pointers on what we can possibly investigate next.

silicontrip commented 9 years ago

I will need to do some searching on how to implement talking to xbox 360 usb devices.

silicontrip commented 9 years ago

I've discovered that the source I based this code on had preliminary support for Xbox 360 portals, however I may not be able to implement it in a cross platform manner. This is the comments taken from that code regarding xbox portal:

// Attempted to add support for XBox portal based on // XBoxSpyroPortal and XBoxSpyroManager in .NET decompilation of // FlashPortal.exe in the drivers from spyrowebportaldriver.exe. // I'm pretty sure the part where I get the handle for the portal is correct, // however, I doubt the code to talk to it as an HID device will work // because the XBox driver does not appear to be an HID device.

Looks like I need to find a cross platform usb library... libusb maybe?