Welcome! Log In Create A New Profile

Advanced

WiiRemote Hack

Posted by Tartaruga 
WiiRemote Hack
December 10, 2009 07:57PM
Hello

I will try to read data from a WiiRemote with a Cortex M3. I use the bluetooth mdoule WT11 from Bluegiga. I connected to the WiiRemote via L2CAP PSM 11 and L2CAP PSM 13. Then all LEDs of the WiiRemote are toggled synchronously but I do not get any info from the remote.

Is the connection of the channels enough in order to communicate with the WiiRemote?

Thanks
Tartaruga

PS: Sorry for my bad english
Re: WiiRemote Hack
December 29, 2009 02:24PM
When you have connected AND configured both the L2CAP channels, you should recieve type 30 reports when any key is pressed.
Re: WiiRemote Hack
January 13, 2010 07:55PM
Hi

Thank you for your answer.

I connected to the WiiRemote successfull, and I get the Rport ID 30 messages when a key is pressed. But I can not send a message to the controller. I also need infomation about the status of the accelerometer an the IR. But answer of the WiiRemote of my messages (for example: 0x52 0x15 0x00), is always 0x03.
The LED's of the Wiimote are flashing all the time.

Thanks
Tartaruga
Re: WiiRemote Hack
January 14, 2010 11:17AM
It sounds like you are not putting the request inside the bluetooth HID wrapper, before adding the L2CAP layer.
[www.bluetooth.com]
Re: WiiRemote Hack
January 19, 2010 05:16PM
Hi

What do you exactly mean? I uses the firmeware of the WT11 modul for the connection. The communication to this module is via UART interface. I built 2 L2CAP channels and if I send in this mode an array (i.e. 52 15 00) over the UART to the WT11, I guess that the WT11 will write this array in the payload of the L2CAP frame. (HID Spec. 7.5 Transport, Figure 9).

Do you think that this is the problem???

Thanks
Tartaruga
Re: WiiRemote Hack
January 20, 2010 01:40PM
I have not used the WT11, so I am not sure how frames are sent. The 52 is the HID command for set report. If you get back 03, it is the HID response for unsupported request. So the L2CAP are connected, but the HID protocol wrong.

Are you sure you are sending on the right channel. You should be sending the bytes to through the control channel ( the first one you set up, PSM = 0x11). The CID is the destination channel ID, the same one you used when configuring the control channel.
Re: WiiRemote Hack
January 26, 2010 06:11PM
Hi

I solved my problem. I sent the messages via the interrupt channel to the Wii because the BT-HID Spec say, that all reports are sent via interrupt channel and only the features are sent via control channel.

Now it is possible to send messages to the wii, and I can finished my project.

Thank you very much for your help
Tartaruga
Re: WiiRemote Hack
January 27, 2010 10:59AM
Pleased to hear you are working.

Are you going to publish your work ? I don't think anyone has done Wiimote on a BlueGiga before.

I am putting articles on the circuitsathome.com website about Wiimote and PS3 game controllers using Bluetooth and USB These may be of use to you or others.

Richard
Re: WiiRemote Hack
February 04, 2010 12:45PM
Hi

I will write a diploma thesis and this project will be a part of this. I also think that I am the first who hack the WiiRemote with a Cortex M3 microprocessor and a Bluegiga bluetooth module. So when i'm finished I could write an articel for you. I call u via PM an we can discuss about the details.

Markus
Re: WiiRemote Hack
March 09, 2010 05:02PM
Tartauga,
I was trying to develop a BT connection as well using L2CAP instead of HCI. Apparently I have to go to the WT21 becuase port 17 and 19 used by the PS3 controller correspond to A2DP.
I wanted to ask you if there is a way that you could give me a hand with HCI and the WT21 since you have already gone down that road.

Philip
Re: WiiRemote Hack
April 01, 2010 12:33AM
Tartauga,

I am trying to get my wii mote to connected to my wt32. I have been able to find the wii mote device through the inquiry command, but I have been using the call L2CAP command and it cant find it. I read that you used two L2CAP channels so I was wondering if you could send me the commands you sent your wt11.

Wingman128
Re: WiiRemote Hack
April 02, 2010 05:08AM
Hello

I was able to get a connection by creating the two L2CAP connections. It turns out it has to use the 17 and 19 on the wt32. Now that is done I am trying to send commands to the wii mote. I was wondering if you could help with this? How were you able to send commands to get the wii mote to send a report. I get the reports for the buttons, but I need help getting the accelerometer data.

Thanks
Re: WiiRemote Hack
April 02, 2010 06:06AM
Hey guys,

I figured out how to send the commands but I found out that only the 13 PSM channel connects. So when I send my commands its to the wrong channel. My question now is how do you connect to two channels at the same time using the bluegiga?

wingman
Re: WiiRemote Hack
April 02, 2010 10:27PM
Hi guys,

Ok using the MUX mode I am able to established two l2cap reports. Now the wt32 uses the 17 and 19 psm, but I get the x30 reports, but I need the accelerometer data so I need report x31. What should I send to psm 17(control) in order to get this report?

Wingman
Re: WiiRemote Hack
April 02, 2010 11:02PM
Hey Guys

I got it working so just ignore my question on this forum. I am able to send commands. The only thing is I am trying to get it to send x31 reports and then it doesnt respond and I have to restart the system.

wingman



Edited 1 time(s). Last edit at 04/02/2010 11:02PM by wingman128.
Re: WiiRemote Hack
April 04, 2010 07:44AM
Hi,

Still having problems with the x31 reports, and I was wondering if anyone as had a problem with iwrap crashing when requesting certain data input reports?

wingman
Re: WiiRemote Hack
April 17, 2010 03:00PM
Hi Wingman

Sorry for my late answer, but I don't get a message to my mail if someone post a message here...

I read that you gone the same way like me. I'm also using the iwrap 3.0 and I have the same problem with my poject. After I connected to my WiiMote in MUX mode, I get the 0x30 report with the data of the buttons. If I want to get other data, like the acc, I send a message with the report ID 0x12 and the date 0x00 and 0x31 to the WiiRemote. Sometimes I get between 10 - 200 byte date from the WiiRemote but after that it will crash. I don't know why. It is not poosible to tun off the WiiMote with the button on the head. The iWrap didn't crash because I can send data to the iWrap, i.e. the list command, and the iWrap send me the correct answer. But I'm not sure if the iWrap is NOT the problem because you have the same problem. I also don't know how to find out if the connection of the iWrap failed or not....

Tartaruga

PS: Sorry for my bad english



Edited 3 time(s). Last edit at 04/17/2010 04:37PM by Tartaruga.
Re: WiiRemote Hack
April 27, 2010 05:18AM
Hey tartaruga,

Thanks for the reply, I am still working on it, but I just getting my project to work with the buttons. Also were you able to get it to autocall a L2CAP connection? I am trying to either to get it autocall or have my PIC send a command though USART and none are working.

Thanks

Wingman
Re: WiiRemote Hack
April 27, 2010 02:57PM
Hi

I never tried to use the autocall function of the iWrap. My application is implemented like the autocall function. Now my own autocall is finished and it works. I have no time to try other functions because I must solve the problem why the WiiMote crashes during sending Acc data.... I have also problems to write to the control register. So I am not able to use the IR or the speaker.
If I have time, I will try the iwrap autocall and I'll tell u if it works or not

Tartaruga
Re: WiiRemote Hack
May 03, 2010 11:06AM
Hi all

I have a problem to write to an EEPROM Register of the WiiRemote. I hope anyone is able to help me because I don't know what I should do.

To read data from the memory is not a problem but to write a byte. I send a string like that to the WiiRemote:
[52 16 04 A2 00 09 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00]
This should be the first sequenz to initialise the speaker. I don't get an response from the controller.

I also tried to send an other string like that:
[52 16 04 A2 00 09 01 01]
but then I get a Handshake response 04. I think ist a response from the HID protocol an means that the packet is wrong.

I hope someone is able to help me, or to tipp me off.

Thank you
Tartaruga
Sorry, only registered users may post in this forum.

Click here to login