JKHyun / android-bluez-ime

Automatically exported from code.google.com/p/android-bluez-ime
0 stars 0 forks source link

Support the Steelseries Zeemote Free #192

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago

For any other issue, please delete the lines above.

What version of BluezIME are you using? 1.14

What Android device do you have? What Android version? Motorola Photon 2.3.5

What gamepad are you using? Steelseries Zeemote Free

What steps will reproduce the problem?
1. Connect to the controller from either the Bluez menu or android bluetooth 
options. 
2. Switch the IME to Bluez
3. Select one of the device drivers.

What is the expected output? What do you see instead?

Selecting the Zeemote JS1 driver enables only the joysticks and face buttons. 
The d-pad and shoulder buttons do not function and both joysticks share the 
same function.

Selecting any other driver returns the error "Device or resource busy."

Ideally, one of the drivers would support all of the buttons on the controller. 
The icontrolpad is the most similar in layout but does not work.  

Please provide any additional information below.

Original issue reported on code.google.com by Damianke...@gmail.com on 9 Nov 2012 at 12:26

GoogleCodeExporter commented 9 years ago
Ok, they have probably added some extra stuff to the protocol to get the analog 
sticks in there.
I would like this in Bluez-IME, but I do not have the time (or the physical 
device) for developing this at the moment.

Original comment by kenneth@hexad.dk on 13 Nov 2012 at 9:28

GoogleCodeExporter commented 9 years ago
While I don't have the money to buy you one myself I do have one and am willing 
to help in any way I can if you find the time. If enough people like me that 
are waiting for this are willing to chip in then I am also more than happy to 
help pay for the controller

Original comment by malak...@gmail.com on 8 Jan 2013 at 7:30

GoogleCodeExporter commented 9 years ago
Ditto to malak ^

Original comment by IBrig...@gmail.com on 8 Jan 2013 at 7:31

GoogleCodeExporter commented 9 years ago
Oh I see the .dk if you live near copenhagen you can borrow mine 

Original comment by malak...@gmail.com on 8 Jan 2013 at 7:32

GoogleCodeExporter commented 9 years ago
Issue 202 has been merged into this issue.

Original comment by kenneth@hexad.dk on 15 Jan 2013 at 7:52

GoogleCodeExporter commented 9 years ago
Issue 208 has been merged into this issue.

Original comment by kenneth@hexad.dk on 15 Jan 2013 at 7:52

GoogleCodeExporter commented 9 years ago
I would be willing to pitch in some money for the purchase of the device so you 
can develop the driver/profile.

Original comment by tniet...@gmail.com on 26 Feb 2013 at 7:50

GoogleCodeExporter commented 9 years ago
Issue 221 has been merged into this issue.

Original comment by kenneth@hexad.dk on 27 Feb 2013 at 10:17

GoogleCodeExporter commented 9 years ago
Thanks for the offer to purchase the controller, but I currently have too much 
other work to take on this task.

Original comment by kenneth@hexad.dk on 27 Feb 2013 at 10:22

GoogleCodeExporter commented 9 years ago
I'd also be willing to chip in. How much would it take for you to investigate 
the issue?

Original comment by steve.e....@gmail.com on 12 Mar 2013 at 2:08

GoogleCodeExporter commented 9 years ago
I am too swamped with other projects to work on Bluez-IME in any sensible way.
And the general poor state of Bluetooth on Android has made me prioritize other 
projects.
But, from the reports here, I can gather that Zeemote has not changed the 
communication protocol, so you can gather the needed information for me.

1) Setup ADB with logcat on your machine (or use logcat from Google Play).
2) Select the "Data Dump Reader" as the driver.
3) Connect the Zeemote
4) Press each button in turn, and observe the output in logcat
5) Write down what response you get from each button, i.e. "Button A: 0xA1, 
0x07, 0x01"
6) Send me the list (or write it here)

If I get that list, I will update the Zeemote driver to handle the extra 
buttons.

Original comment by kenneth@hexad.dk on 14 Mar 2013 at 9:27

GoogleCodeExporter commented 9 years ago
I have a SteelSeries Free as well, here's what I ended up with:

DPAD Up:    D/DataDumpReader(25976): Read data: 08 a1 1c 04 fe fe fe fe fe 
DPAD Down:  D/DataDumpReader(25976): Read data: 08 a1 1c 05 fe fe fe fe fe
DPAD Left:  D/DataDumpReader(25976): Read data: 08 a1 1c 06 fe fe fe fe fe 
DPAD Right: D/DataDumpReader(25976): Read data: 08 a1 1c 07 fe fe fe fe fe
Button 1:   D/DataDumpReader(25976): Read data: 08 a1 07 02 fe fe fe fe fe
Button 2:   D/DataDumpReader(25976): Read data: 08 a1 07 03 fe fe fe fe fe
Button 3:   D/DataDumpReader(25976): Read data: 08 a1 07 01 fe fe fe fe fe
Button 4:   D/DataDumpReader(25976): Read data: 08 a1 07 00 fe fe fe fe fe
L Trigger:  D/DataDumpReader(25976): Read data: 08 a1 1c 08 fe fe fe fe fe
R Trigger:  D/DataDumpReader(25976): Read data: 08 a1 1c 09 fe fe fe fe fe
A Button:   D/DataDumpReader(25976): Read data: 08 a1 1c 0b fe fe fe fe fe
B Button:   D/DataDumpReader(25976): Read data: 08 a1 1c 0a fe fe fe fe fe

Each release of a button ended up with: 4th hex number going to fe

Still figuring out the sticks, this is what I think so far.
Sample output:
Left Stick: D/DataDumpReader(25976): Read data: 05 a1 08 00 00 fd
Right Stick: D/DataDumpReader(25976): Read data: 05 a1 08 01 00 c0

Looks like left stick is 4th hex 00, right stick is hex 01
the 5th & 6th hex digits are for x & y asis, but not sure which ones yet. Will 
follow up when I have more time.

Hope this helps!

Original comment by jamesku...@gmail.com on 15 Mar 2013 at 1:42

GoogleCodeExporter commented 9 years ago
Attached is a quick update I did based on your reported button values.
I have not tested it (since I do not have the contoller), but please try it and 
see if it works.
There should be support for all the buttons and both analog pads.

Original comment by kenneth@hexad.dk on 18 Mar 2013 at 3:45

Attachments:

GoogleCodeExporter commented 9 years ago
Ok, tested your update. Here's what I found
WORKS: Left Stick (all directions), Right Stick (all directions), 1,2,3,4 
Buttons, DPAD Up, DPAD Down
DOESN'T WORK: DPAD Left, DPAD Right, L Trigger, R Trigger, A Button, B Button

I first tested with RetroArch, then with a Notepad app and mapping all the 
buttons to letters to see which ones placed any input.

Also, I also had some connection refused issues from switching back and forth 
from IMEs and having the bluetooth reconnect, but I'm pretty sure that it's not 
related.

Original comment by jamesku...@gmail.com on 19 Mar 2013 at 1:13

GoogleCodeExporter commented 9 years ago
Dough, I miscalculated the button stuff.
Attached is a new build with that fixed, it should now correctly support all 
buttons.
Can you try with logcat and press and hold "Button 1" at the then press and 
hold "DPAD UP"?

It should produce something like:
Read data: 08 a1 1c 02 04 fe fe fe fe 

But I do not know if the third value changes. It should be either 1c or 07, but 
it may do something if both buttons are pressed at the same time.

Original comment by kenneth@hexad.dk on 19 Mar 2013 at 1:34

Attachments:

GoogleCodeExporter commented 9 years ago
just tested the newest out with a note app and every button works. i can not 
thank you enough for this you are awesome

Original comment by malak...@gmail.com on 19 Mar 2013 at 7:02

GoogleCodeExporter commented 9 years ago
Ok, here's what I found on your BluezIME-v1.18-zeemote-dev02.apk file.

DPAD UP & Release:
D/DataDumpReader(24019): Read data: 08 a1 07 02 fe fe fe fe fe 
D/DataDumpReader(24019): Read data: 08 a1 07 fe fe fe fe fe fe 

Button 1 & Release:
D/DataDumpReader(24019): Read data: 08 a1 1c 04 fe fe fe fe fe 
D/DataDumpReader(24019): Read data: 08 a1 1c fe fe fe fe fe fe 

DPAD UP & Button 1, then Release:
D/DataDumpReader(24019): Read data: 08 a1 07 02 fe fe fe fe fe 
D/DataDumpReader(24019): Read data: 08 a1 1c 04 fe fe fe fe fe 
D/DataDumpReader(24019): Read data: 08 a1 07 fe fe fe fe fe fe 
D/DataDumpReader(24019): Read data: 08 a1 1c fe fe fe fe fe fe

Original comment by jamesku...@gmail.com on 20 Mar 2013 at 4:21

GoogleCodeExporter commented 9 years ago
I can confirm that the combination buttons are not registering correctly on 
release. I tested Sonic on RetroArch, and when I move right, and then press 
jump, then release jump, I stop moving to the right (DPAD Right held down).

This is a lot further than I was able to get to before though!

Original comment by jamesku...@gmail.com on 20 Mar 2013 at 4:31

GoogleCodeExporter commented 9 years ago
I expected something would happen if you mix "old" and "new" buttons, but your 
logcat data revealed how it works.

Attached is an updated version that handles "new" and "old" buttons separately.

Original comment by kenneth@hexad.dk on 21 Mar 2013 at 8:45

Attachments:

GoogleCodeExporter commented 9 years ago
Did any of you have a chance to try the new build?

Original comment by kenneth@hexad.dk on 2 Apr 2013 at 1:23

GoogleCodeExporter commented 9 years ago
missed a few updates apparently, but yes old+new button presses were borked in 
the old build and yes, it is fixed in the new one. i love ya man <3

Original comment by malak...@gmail.com on 2 Apr 2013 at 1:59

GoogleCodeExporter commented 9 years ago
So fixed as in "Put this build on Google Play" ?

Original comment by kenneth@hexad.dk on 2 Apr 2013 at 2:19

GoogleCodeExporter commented 9 years ago
i can't find any button or combination of them that doesn't work so yes, get it 
out there :)

Original comment by malak...@gmail.com on 2 Apr 2013 at 2:26

GoogleCodeExporter commented 9 years ago
Sorry for the delay in responding! I did try it out quite a bit, and it looks 
like the controls are working great. I tried a platformer, street fighter, and 
a few other games, and it worked as expected. I don't have any of the other 
controllers to test out for you, but I would give the OK for SteelSeries Free.

Original comment by jamesku...@gmail.com on 22 Apr 2013 at 3:49

GoogleCodeExporter commented 9 years ago
Hello. I came across this topic and it addressed the issue I had with my 
steelseries free controller. Is this fix now in the current bluez-ime 
controller on the play store? Thank you for your time!

Original comment by Danielwa...@gmail.com on 21 Sep 2013 at 2:45

GoogleCodeExporter commented 9 years ago
No, the fix has not yet made it to Google Play store. Any day now :)

Original comment by kenneth@hexad.dk on 24 Sep 2013 at 9:20

GoogleCodeExporter commented 9 years ago
Wee, today was the lucky day :)

Uploaded a new build to Google Play with the version found here.

Original comment by kenneth@hexad.dk on 27 Sep 2013 at 9:44

GoogleCodeExporter commented 9 years ago
I know this posting is old but I can't seem to get this to work with spiderman 
2, I'm on the nexus 9 nonroot

Original comment by LAF0...@gmail.com on 4 Mar 2015 at 1:25