Related
Hi!
I am developing an application which connects a Wiimote to a bluetooth enabled android phone/device.
I did this by interfacing with the native bluez bluetooth library directly, rather than via the Android API. The reason for this is that Android API doesn't support HID devices, which a Wiimote is.
A problem now is that on some devices, mostly those sold by HTC, my app simply doesn't work. After calling the hci_get_route(NULL), this function should return an id of the first bluetooth device available (most likely 0), but instead returns ERNODEV (-1) as if no bluetooth device is available.
I suspect it has something to do with our beloved HTC grossly modifying something in the libbluetooth library to make this fail to work.
Has anyone ever done this kind of bluetooth interfacing?
How could I make this work?
Rooting the phone and replacing a library or two would be fine too.
For a list of working and non-working devices, check out the 2nd post of this thread.
HTC support
I just sent a customer service message to HTC about this issue. I hope they can get back to me with a "we'll work on it" message, or something. I really want this on my incredible. I'm new to coding like this, but could you disguise the Wiimote as another kind of device?
Just a response from someone equally interested in a solution. I'm trying to set up a bluetooth keyboard (Freedom Pro) with my gsm Hero running the 1.5 based MCR 3.2. Available drivers (Freedom's own, BlueInput & KeyPro) should work with 1.5, but HTC devices, especially the Hero, seem to be lacking something that is present in most 1.5 builds.
Investigating, I find the same issue of no route to device, because there is no known device. AIUI when bluetooth is turned on hciattach is used to establish a link to the hardware. At that point an hciconfig should list the hci0 device as present but down. However I find this list remains empty at all times.
I found this for keyboards.
Since I can't post the link, it's called "KeyPro for Android"
Google "keypro android" and click the first link.
Maybe that could help. It says it works with any android device above 1.5, however, I did read that some keyboards use a different type of bluetooth profile, SPP rather than HID.
I haven't heard back form HTC yet either.
EDIT: Upon reading your post again, you have tried this. Sorry, my bad.
Thanks for looking though The Freedom Pro is switchable between spp & hid profiles, so I figured I was safe, lol. Not with HTC's butchered 1.5 bt it seems.
Did you ever try to use the most likely id 0 on an HTC device? Even though the call to get the id fails?
Maybe you could use also the Android API to synchronize if a device is present and then use the id that Android API gives you?
Just some thoughts since I would love to see that App running on my Desire with Snesoid
Edit: Double post
tobren said:
Did you ever try to use the most likely id 0 on an HTC device? Even though the call to get the id fails?
Maybe you could use also the Android API to synchronize if a device is present and then use the id that Android API gives you?
Just some thoughts since I would love to see that App running on my Desire with Snesoid
Click to expand...
Click to collapse
Believe it or not, I actually tried this. Unfortunately, the next command (to bind the bluetooth adapter) also fails, and of course every command after that one because the adapter is not bound.
Thanks for the idea anyway.
usb
does the wii remote have usb connectivity? could it be possible to have the communication pass through that connection rather than bluetooth? one advantage of this would be increased battery life and probably better compatibility across models.
i'm sure some people would prefer bluetooth, but i figure i'll always be using it very close to my phone so i can see the screen, so the wired option is actually a bit more attractive (considering battery performance).
i know ps3 has usb connectivity as well, you just might need an adapter (mini to micro).
rubber soul said:
does the wii remote have usb connectivity? could it be possible to have the communication pass through that connection rather than bluetooth?
[snip]
i know ps3 has usb connectivity as well, you just might need an adapter (mini to micro).
Click to expand...
Click to collapse
I'm pretty sure the first answer is no - our wii is round at a friend's atm. However even if it was yes, you'd need more than an adapter. USB operates with one device as master & the other as slave. To allow you to connect slave devices to your phone it would need to be in host mode. Some mobile phone hardware implementations support this, however I don't know of any mainstream Android kernels which do. Even if you workaround that, you're left with the huge issue that slave devices can assume it's safe to draw power from the USB bus which could do nasty things (tm) to a lower power device like a mobile. This can be worked around via a powered hub, but it all gets very messy.
I looked into this a few months ago, hoping I'd be able to use a usb keyboard with my Hero. I ended up with a BT keyboard instead. Of course that doesn't work either but for completely different reasons, as hinted at by this thread. Hopefully a 2.1 ROM will solve that, but that's the subject of numerous other threads.
Uh, just throwing stuff out, what if you have a pc with two bluetooth adapters, it connects to the wii mote, and then broadcasts that in someway the android api can understand?
Also please actually try working on something with a rooted phone, the HTC EVO 4g is rootable, and I will make man love(no homo) if you get it working.
Either one works lol.
Using a PC as a proxy is kind of useless. If you have a wiimote connected to a PC, you might as well play games on the PC itself (there are nes/snes/sega/etc emulators for PCs too).
At this moment, rooting doesn't help with the problem either.
@1 True
@2 That sucks.
Do we think that this will/could be fixed in HTC's Froyo update for 2010 devices? Not looking for definite answers, just a ponderin'.
well if you send the null pairing code to the wiimote from the default bluetooth pairing screen.. it will fail to communicate with the wiimote too
waffles004 said:
Do we think that this will/could be fixed in HTC's Froyo update for 2010 devices? Not looking for definite answers, just a ponderin'.
Click to expand...
Click to collapse
Doesn't it work in stock/vanilla Eclair? I thought the main problem was with Cupcake, though HTC seem to have done weird things to every stock firmware. I read that removing Sense from a 2.1 HTC ROM breaks bluetooth. Go figure. And there was I thinking Sense was a gui enhancement
I contacted HTC about their bluetooth issues and just received this response
My name is Courtney, and I would be glad to assist you today. I understand that you are unhappy with the Bluetooth connectivity on your HTC EVO. HTC is aware of the problems occurring with the EVO and Bluetooth. We are currently investigating this issue and are working on a solution. As soon as we have an update, we will inform our customers. Thank you for contacting HTC America Technical Support. If you need further assistance, please feel free to contact us via email or at 1-866-449-8358. We are open 7 days a week from 6 a.m.-1 a.m. EST. You can also check out our Community and Support pages at htc.com/us and our pages on Facebook and Twitter.
Click to expand...
Click to collapse
I contacted HTC about this issue with my incredible and I basically got the same answer except the guy was more knowledgeable and said that other people were complaining about certain bluetooth issues. I think they know what they did and are waiting to fix it in Froyo to be easy for them. No worries though, should be comin' in a few weeks. I can't freakin' wait. I have soooooooooo much Pokemon and Mario to play.
does anyone know if this works on samsung galaxy s, i dont have my phone yet to test, but as soon as it arrives (sometime next week) i will test this.
All I can say is that my wii controller is working really well on cyanogen on my evolution now!
If someone can/has figured this out I'll buy you a beer.
you can use a wiimote..
Actually, you can't:
forum%xda-developers%com/showpost.php?p=7388551&postcount=7 (account not allowed to post links yet)
It is unclear to me whether this is because the Captivate lacks HID profile support, or because as a BT 3.0 device there is some kind of incompatability (I have heard both).
dirtydaub said:
If someone can/has figured this out I'll buy you a beer.
Click to expand...
Click to collapse
Sorry, never gonna happen. PS3 controller maybe but the 360 controller isn't BT, it uses a proprietary wireless standard.
Why Xbox or Playstation crap is way overpriced!
If you want to use your phone as an emulator that bad you might as well just pay the $10 for a cheapo BT controller. Don't you want something a lot smaller than a bigun PS3 or x360 controller, I'd think something micro would be better suited for travel.
Plus if you're going to be inside to use this (unless your TV is outside), why not just use a PC and out it at 1080 for the real deal? Or is it more for nostalgia
Cool factor only. But it would be neat if I could use the video out to the TV at the shore house and play a game on that. No PC at my shore house:-(
REAVER117 said:
Sorry, never gonna happen. PS3 controller maybe but the 360 controller isn't BT, it uses a proprietary wireless standard.
Click to expand...
Click to collapse
But they also have wired versions that use USB. I don't have a clue about this at all, so I don't know if that's even remotely possible, just throwing one more idea out there. Not as pretty of a solution but if the USB could be sized down to micro and plugged in... Probably not, like I said, just throwing it out there. Would definitely be cool though.
AJerman said:
But they also have wired versions that use USB. I don't have a clue about this at all, so I don't know if that's even remotely possible, just throwing one more idea out there. Not as pretty of a solution but if the USB could be sized down to micro and plugged in... Probably not, like I said, just throwing it out there. Would definitely be cool though.
Click to expand...
Click to collapse
Not really possible because the USB doesn't have host support. If someone could write it into the kernel it would be awesome but then there would be many driver issues to arise.
I would just opt for a mini BT gamepad, I am thinking of getting one and loading some old SNES games on my phone.
Wait... is there an actual mini BT game controller that works? I would simply buy one now. Can you point us?
The zeemote looks complicated, you would think a wireless bluetooth snes style controller without axis controls would be simple enough, although I know everyone wants the ps3 for its controls. But this would be an awesome start.
Hopefully with more buttons than the wiimote so snes games play decent.
I would just use the computer you are posting from for this kinda thing.
http://www.dealextreme.com/details.dx/sku.13760
Some have modded these with a SNES controller. If I had any soldering skills I would try it.
http://www.youtube.com/watch?v=OP8JgqmVES8
decepticon said:
Not really possible because the USB doesn't have host support. If someone could write it into the kernel it would be awesome but then there would be many driver issues to arise.
I would just opt for a mini BT gamepad, I am thinking of getting one and loading some old SNES games on my phone.
Click to expand...
Click to collapse
Yeah, I kinda wondered about that, but like I said, I'm new to Android so I'm still learning what it can and can't do.
Still, a controller, especially wireless would be awesome to have. I have reason to believe from talking to someone involved that the Wiimote may not be totally out of the equation. Even if not on stock ROMs, custom ROMs may be able to make it work. I guess like everything else we'll just have to wait and see.
wiimote wont work with samsung phones. The developer of wiimote controller emailed me and said its because of the way samsungs added junk deals with bluetooth. Apparently they modify how bluetooth is dealt with from the stock android.
Hmmm... Interesting ideas.... I never even thought about a Bluetooth controller, that could possibly be the answer right there. Has anyone ever messed around with one? Would it be easy to set up with the captivate? Basically I just wanna be able to go over to my friends place and be like, "yo dudes, check THIS OUT!" And play old school games from my phone. More of a novelty than anything really.
illl try to set one up tomorrow and let you guys know if a reg bluetooth one will work with our 3.0. i remember hearing that it wont but i'll verify.
My understanding is that the galaxy S phones dont use the standard "BlueZ" stack. which is why it wont work.
Can anyone confirm if that bluetooth controller linked above from DealExtreme would work? So theoretically, a controller made for bluetooth 3.0 devices would work?
dappy15 said:
Can anyone confirm if that bluetooth controller linked above from DealExtreme would work? So theoretically, a controller made for bluetooth 3.0 devices would work?
Click to expand...
Click to collapse
It def. works with Android, but a paid drivers pack from the market is required. Now whether it works with the Galaxy S due to the different Bluetooth stack is the unknown part.
I am not sure how deeply the drivers interact with the bluetooth stack, and if they only work with the stock Android stack. I am planning on buying both the controller above and a SNES controller to mod for use with my PC, and phone if it works.
I am having trouble finding a SNES controller locally but I am told that I can get one on Monday from a buddy at my work.
Just checking to see if anybody has made progress on finding a controller for the captivate/galaxy s?
This is probably one of my most wanted features... get that wiimote working somehow.
I could have sworn when I had my Samsung S2 I would plug in an xbox controller via usb through a USB OTG cable and it would just work in games. This isn't happening with my Verizon LG G2 that I thought supports USB OTG. When I plug in a media card reader for example I actually see a popup like something is working. Nothing pops up when I plug in the xbox controller.
Anyone get a gamepad to work or have suggestions?
Here is someone else with the same issue that seems to have made some progress:
http://android.stackexchange.com/questions/54617/wired-xbox-controller-not-working-with-lg-g2
Where are my fellow Android gamepad gamers? You are all on bluetooth controllers? : )
tahlsr said:
Here is someone else with the same issue that seems to have made some progress:
http://android.stackexchange.com/questions/54617/wired-xbox-controller-not-working-with-lg-g2
Where are my fellow Android gamepad gamers? You are all on bluetooth controllers? : )
Click to expand...
Click to collapse
I'm on Moga and Moga Pro Bluetooth controllers! Don't have a OTG cable. I did get a slimport cable though, and let me tell you, it is sweet playing Modern Combat 4 in 720p on my projector (don't have a 1080p projector) with a wireless controller ON A PHONE!
so you love the Moga? I guess I just figured since I had an xbox controller I'd save the money and only have to worry about battery life on the phone and not the controller. Also the xbox controller is awesome. What to do.... ugh.
Anyone else with gamepad setups they want to share? I guess I'll end up pulling the trigger soon if I can't resolve this. My gaming impatience will get the best of me : )
Another reason why I want wired is to reduce lag etc.. although I don't have experience with bluetooth lag but any perceptible amount is not worth it to me. So check out the email I wrote to LG:
to: LG
How come when I plug in my xbox controller through a usb otg cable it doesn't work? It should. Please see this post:
http://android.stackexchange.com/questions/54617/wired-xbox-controller-not-working-with-lg-g2
By the way, I really love this phone. Just hope you guys can enable gamepad support and pay to click using google wallet and the nfc chip.
Please advise,
Thanks so much,
Tahl
Here was their response... ha:
I apologize that you are having problems with the phone. If your xbox controller is not working with the phone you would have to get repair or troubleshooting information from Customer Care of Xbox.
If you are reading this, hope you had a good laugh too.
I ask LG a solution
tahlsr said:
Another reason why I want wired is to reduce lag etc.. although I don't have experience with bluetooth lag but any perceptible amount is not worth it to me. So check out the email I wrote to LG:
to: LG
How come when I plug in my xbox controller through a usb otg cable it doesn't work? It should. Please see this post:
By the way, I really love this phone. Just hope you guys can enable gamepad support and pay to click using google wallet and the nfc chip.
Please advise,
Thanks so much,
Tahl
Here was their response... ha:
I apologize that you are having problems with the phone. If your xbox controller is not working with the phone you would have to get repair or troubleshooting information from Customer Care of Xbox.
If you are reading this, hope you had a good laugh too.
Click to expand...
Click to collapse
I do the same.
I have no solution to connect my wired xbox 360 controller to my LG G2 (if anybody has one, tell me)
I really like my phone and my controller
I hope LG will reply me in a good way but ...
wait and see.
Please ... tell me there is a solution.
Out of curiosity, did you try an AOSP ROM to see if it worked? I did not at this point.
tahlsr said:
Out of curiosity, did you try an AOSP ROM to see if it worked? I did not at this point.
Click to expand...
Click to collapse
I didn't
I like the Mogas but they Feel similar to a 360.
Personally I think you can't get any better then a PS3 controller. It will work Wired out of the box (haven't tried on the G2) and also wirelessly through bluetooth with the rooted sixaxis app.
The PS3, I think, is a much better controller because of the separated DPad that becomes very very handy in retro gaming. Try playing SNES Mario World with a Moga or 360 and you'll hate it. I currently have 2 Ouya BT Controllers, a 360 Controller w/ Wireless Sync USB, and a PS3 controller.
I'm also curious if the PS4 was ever successfully paired to Android yet. The PS4 is similar to my Ouya Controller in a sense that it has the touchpad built in, which makes it very handy for navigating Android apps on a TV that aren't 100% gamepad compatible.
For gamepads to work, they need the specific .KO file that has the profiles. LG may not have included it. Custom roms should work out of the box though.
player911 said:
For gamepads to work, they need the specific .KO file that has the profiles. LG may not have included it. Custom roms should work out of the box though.
Click to expand...
Click to collapse
Is that possible to include it ?
No answer from LG. I'm furious ! A so good phone and no way to play with a wired controller. I was thinking that the ability was included diectly inside android. Why LG did extract this ability ? Grrrrrrr!!!!!!!!!!!!!!!!!
Whoa I'm not saying they excluded it, but probably did... or goofed it up somehow.
Just do Bluetooth. Wired controllers don't work well anyway.
Are you sure it isn't working? You usually are required to download an app from the play store to really start utilizing the controllers for gamplay.
You can also just root and grab an app to restore the .ko file.
-sent from my LG G2 using XDA Premium 4
player911 said:
Are you sure it isn't working? You usually are required to download an app from the play store to really start utilizing the controllers for gamplay.
Click to expand...
Click to collapse
I'm really sure of it. I use my controller on my acer A200 With a dedicated app. It's really good and it works really well.
player911 said:
You can also just root and grab an app to restore the .ko file.
Click to expand...
Click to collapse
i really want to try this but how can I proceed ?
there is a lot of .ko files and I don't know the one to restore and how to do this.
Hello guys,
recently I've got a fully working usb otg cable and I've tried random devices on it, everything worked (like mouse and keyboard) or usb stick, except the Speedlink cheap controller I've got ... here is the question.
Does anyone knows if there are any mods tweaking it and allowing us to connect a usb controller too?
It will be nice if I could fix it because it will get me out of buying a bluetooth controller.
Have a nice day, George.
Worth the bump,
Can someone please direct me on how can I code it myself or at least discuss with me if it is possible?
It will be wise for the sake of my programming skills to get into it.
Have a nice day, George.
Bump, Im about to start the attemp of creating my own thing about this. Let me known about your useful knownledge about this thing!
EDIT:
I've already found out that it is possible to connect my controller.
Hey guys, this is a bit specific but it could really help me out so if you can answer, please do. I'm trying to connect an Xbox One controller through Bluetooth, but I keep getting an incorrect pin error and therefore can't connect at all. It seems a firmware update for the controller broke connections for a lot of phones, but it also still works for many. I'm running stock nougat with the vegito kernel and I'm wondering if it works with either a different kernel or a different rom. If you have the controller and could test it out, I'd really appreciate it. Alternatively, if you somehow know of a way to get it working through other means, that'll also be a huge help.
Thanks in advance