Spoofing XBOX + Raspi

Need help? Ask here and someone will help
Post Reply
McD0n3ld
Posts: 9
Joined: Mon Oct 29, 2012 8:30 am

Spoofing XBOX + Raspi

Post by McD0n3ld »

Hi there.

Im trying to make my Raspberry Pi work with GIMX. PS3 works fine and ready to play. Now the problem is XBOX360.

I'm trying to spoof via console with

Code: Select all

usbspoof -p /dev/ttyUSB0 -d
but it's not working.

The 'patron' I use for spoofing is:
1) Connect USB to SERIAL (which is connected to Teensy) to the Raspbi
2) Start usbspoof
3) Connect USB-mini to USB to my laptop (XBOX360 controller is not connected to any XBOX360).

It just doesn't work. I tried many times and nothing. I always get the same values for packets and same libusb_control_transfer errors (-9).
I have been trying to look into the code but could do nothing.

So at this point I wonder: My spoofing patron is wrong? Should I continue trying to fix it by modifying usbspoof.c ?

P.S: I know that XBOX360 is not officially supported, but I'd like to help with this.

Regards,
McD0n3ld
User avatar
Matlo
Posts: 5768
Joined: Wed Jul 06, 2011 7:01 am
Location: France
Contact:

Re: Spoofing XBOX + Raspi

Post by Matlo »

Hi,

Does it work with a PC?
GIMX creator
McD0n3ld
Posts: 9
Joined: Mon Oct 29, 2012 8:30 am

Re: Spoofing XBOX + Raspi

Post by McD0n3ld »

Sorry for double post.

I've been reading this: http://forum.gimx.fr/viewtopic.php?f=20&t=486
I haven't understood it too much, but what I get from that post is that GIMX emulates a bcdDevice in 1.10 and that if my controller is 1.10, spoof wil work fine, but if it's 1.14, I should do those modifications (which I don't know how to do). But what if it's 1.06 ?

This is what I get
Spoiler: show
pi@raspberrypi:~$ sudo lsusb -v -s 1:24

Bus 001 Device 024: ID 045e:028f Microsoft Corp. Xbox360 Wireless Controller
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 255 Vendor Specific Class
bDeviceSubClass 255 Vendor Specific Subclass
bDeviceProtocol 255 Vendor Specific Protocol
bMaxPacketSize0 8
idVendor 0x045e Microsoft Corp.
idProduct 0x028f Xbox360 Wireless Controller
bcdDevice 1.06
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 18
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 93
bInterfaceProtocol 255
iInterface 0
cannot read device status, Broken pipe (32) <-- ???
You also talk about "your firmware" what I guess is the one installed on Teensy. The code for that firmware is public or private?

Also I found this:
ratchet wrote:The way I understand it is:
Connect real controller, usb uart board and teensy to PC.
Press spoof and OK.
After 2-3 seconds connect teensy to xbox??
It's not the way I was doing but it still doesn't work (he was lucky and got it working changing firmware)

EDIT: Just seen your post. I haven't really tested it and I should have done it already. Going to test now.

EDIT2: I have debian installed and followed this tutorial http://gimx.fr/wiki/index.php?title=Dev ... t_on_Linux (the same tutorial as with RasPi) and it's still not working. But... could you please assure me I'm doing it well?

More info: I don't have a XBOX360 Wired Controller. All I have is:
· 045E:028F -> Microsoft Corp. XBOX360 Wireless Controller (genuine)
· 045E:028E -> Microsoft Corp. XBOX360 Controller (but this is not genuine. It's a device that spoofed the device above and it works fine)
· I also don't have a XBOX360, I'm connecting it to the PC with proper drivers installed, so I don't know why it shouldn't work or make the controller believe that it's connected to a XBOX360)
· As a USB to serial I'm using an Arduino without uC, so it only uses the FTDI (this shouldn't be the problem)
· As adapter, I'm using Teensy 2.0 with firmware 0.30 of XBOX360 (29% space used) and I can't debug this so I don't know if this is the problem.

Thanks for everything,
McD0n3ld
User avatar
Matlo
Posts: 5768
Joined: Wed Jul 06, 2011 7:01 am
Location: France
Contact:

Re: Spoofing XBOX + Raspi

Post by Matlo »

The spoofing is not intended to be used for anything else than the Xbox360. And a wired genuine controller is required.
GIMX creator
McD0n3ld
Posts: 9
Joined: Mon Oct 29, 2012 8:30 am

Re: Spoofing XBOX + Raspi

Post by McD0n3ld »

Okay... I thought you were going to say that...

I'm going to try it two or three more days and if it doesn't work I'll try to get a genuine Wired controller and XBOX360 and will let you know if it worked ;)

EDIT:
ratchet wrote:The way I understand it is:
Connect real controller, usb uart board and teensy to PC.
Press spoof and OK.
After 2-3 seconds connect teensy to xbox??
^is this ok?
McD0n3ld wrote: You also talk about "your firmware" what I guess is the one installed on Teensy. The code for that firmware is public or private?
and this?


Thanks,
McD0n3ld
0uistyty
Posts: 54
Joined: Wed Nov 02, 2011 12:35 pm

Re: Spoofing XBOX + Raspi

Post by 0uistyty »

You need to change the firmware on the teensy board to work with the Xbox.
Xbox ans PS3 use different firmware.

Did you change it ?
McD0n3ld
Posts: 9
Joined: Mon Oct 29, 2012 8:30 am

Re: Spoofing XBOX + Raspi

Post by McD0n3ld »

Yes, sure
McD0n3ld wrote:I'm going to try it two or three more days and if it doesn't work I'll try to get a genuine Wired controller and XBOX360 and will let you know if it worked ;)
I found that my controller (XBOX360 Wireless with Play & Charge) does not transmit any data throguh the USB, so it was never going to work. I could've been years trying :roll:
Post Reply