Related
Ok, I really didnt know exactly what to put for the title of this because its a pretty strange request.
A little backbrief: I have a CarPC setup with a 7" touchscreen in my dash, a computer in the trunk, a bluetooth module, a microphone, runs through the car speakers, and running a front end called RoadRunner.
Basically what I'm looking for is:
1) The ability to call out and answer phone calls through the CarPC (full computer). - Using the RoadRunner program there are some interupts built in so that it will automatically stop the music and switch to a screen that has the phone "skin", but I'm not sure what it all entails to make that portion work yet.
2) It must connect through bluetooth
3) The ability to read through the phone's address book and/or store the phonebook in the CarPC.
4) Speach activation would be nice, but not a 100% must have necessarily
5) The ability to read/write text messages would also be nice, but not required
Essentially the skin should be similar to this link:
http://www.mp3car.com/vbulletin/road...oadrunner.html
But the problem with that particular skin is that there is no support for WM devices, that is unless you have another piece of software called phonecontrol.net, but that software is now discontinued, so there's nothing for WM devices.
Now, I'm not asking someone on here to build something for me necessarily (even though that would be nice) but I am not sure what phone protocols there are to connect the bluetooth and use it, or if they are specific to the bluetooth adapters (bluesoiel, microsoft stack, etc) or if its all in the phone, and whatnot. I've got a good coding background, so its possible I can develop something, or modify something to work, but since there is a wealth of knowledge on this forum I figured someone on here might have some know how and ideas.
Thanks
As I am a new user I can't post on specific thread so I post here my test
I installed Spirit PAK ver 01 07 and after turn on all device in my Nexus S I tried apk
Here some photos of test with stock ROM 2.3.4
It can be useful for developmetn ....
http :// imageshack.us/photo/my-images/27/dscf0009hc.jpg/
http :// imageshack.us/photo/my-images/18/dscf0011js.jpg/
http :// imageshack.us/photo/my-images/825/dscf0012su.jpg/
result : Signal are instable and no sound (
If can I help in some other way ....
The technical is in the next post.
Thanks for posting publicly. I prefer open discussion so that everyone can benefit and contribute.
I created my main thread in a forum dedicated to discussing apps, but didn't realise it was under a dev forum and thus users with less than 10 posts couldn't post. I wonder if I should create a 2nd thread...
You can't post full URLs either so here they are:
http://imageshack.us/photo/my-images/27/dscf0009hc.jpg/
http://imageshack.us/photo/my-images/18/dscf0011js.jpg/
http://imageshack.us/photo/my-images/825/dscf0012su.jpg/
BTW, screenshots are great !
The short answer is I don't think the Nexus S is capable of receiving or transmitting FM, but I would never say never without hard proof.
I've been asked a few times over the last several months, and if I recall correctly, every time I've Googled the issue I found no evidence that anyone has EVER made FM work on the Nexus S.
I think my app is probably the closest it will get. It WILL manipulate the FM registers over HCI and it will look like it works, to some extent. But no audio, not even static, will be heard.
And there will be no indications of reception, like a more or less steady RSSI reading on strong channels, and RDS data.
Samsung manufactured this phone, and it seems to be a derivative of the Galaxy S. The Galaxy S, like the Nexus S, has an FM/BT/WiFi combo chip from Broadcom. The stock Galaxy S supports FM, but via a dedicated Silicon Labs FM chip, which the Nexus S does not seem to have. (BTW, the FmTwoO app also works on Galaxy S.)
AFAICT it's not possible to use the Broadcom chip for FM on the Nexus S. The antenna and audio connections are to the Silicon Labs chip and not to the matching pins on the Broadcom chip. If the Nexus S PCB/circuitry is reasonably similar to the Galaxy S, then it probably won't work on the Nexus S either.
There are two Samsung devices that I've been trying to help owners get FM working on. that have a Broadcom chip, but no other chip. Thus far we've had no success with either the Galaxy Tab, or the Spica i5700. There are two problems:
(1) The RSSI signal strength shows strange values and may jump around. I think this is due to no antenna connection and/or some FM RF power pins may not be connected.
(2) No analog audio output has been achieved, not even static, despite trying the 8 or so Audio Methods my app currently supports, and ALSA as well.
(2) might be fixable if I ever achieve digital audio transfer or even direct audio to BT headsets within the chip.
But (1) might only be fixable with much investigation and soldering etc.
Sorry... I'd love to find out I'm wrong about this.
Other info for BCM4329 chip :
http :// www . datasheetdir.com/BCM4329+download
in these datasheet we can read
Code:
Host Interface support
- Host Controller Interface (HCI): High-speed UART
-Audio: PCM
- FM Control: HCI and BSC (I2C-compliant) ports
- FM Audio: Stereo analog input and output, bidirectional
I2S, and PCM ports
In schematic we can notice BT and wifi use same ant , FM has dedicated one ....
But SPI / I2C / I2s are the same of BT and WIFI so it's possible to comunicate with FM part in chip with no problem ....
Code:
FMHost Interface: High-speed UART, I2C for control
.....
if not mistaken spirit apk use only HCI .... not I2C !
magicko said:
Code:
FMHost Interface: High-speed UART, I2C for control
.....
if not mistaken spirit apk use only HCI .... not I2C !
Click to expand...
Click to collapse
All devices that uses the combo chip for Bluetooth support the HCI UART interface. That can be accessed via the BT stack or directly by reasonably standard and common methods.
I don't know what fraction of devices can use the other interface, but some don't. I believe the Galaxy Tab schematic showed a digital connection to the Wolfson audio chip...
The next issue would be accessing the interface, and I think that would require a device driver. If I wanted to support multiple devices and kernels by this method I'd have to create multiple device drivers.
So even if possible, I think the work required would be excessive.
But if somebody can figure this out, I'd be happy to hear about it.
EDIT: A digital audio connection MAY not be as hard as I envision, at least for some devices.
IF the ROM supports a digital / "SCO" connection to the chip, it might be possible to call an audio API to set this up.
I haven't worked with these SCO connections yet, so I don't know how easy or feasible it is, but I'll try to find out.
Hi mikereidis, I don't want flooding to be able write on developers section, as well be superfluous create a new topic on the DroidX tree so I would write here...
I tried the latest SpiritFM version on DroidX CM7. Several times I was able tune to the pre-programmed frequency and receive audio using FM_launch method. In most cases, I only get noise. To get the sound the speaker/headphones button should on and then off. Without such manipulation sound does not appear.
The big problem is that your program give low radio sensitivity. This is not a hardware problem because stock FM program allows 15 radiostations on the my area.
I also tried FM_launch2 but without success.
Here is the catlog with FM_launch, and then FM_launch2. I'm also ready to provide any logs or make any test if it helps you improve SpiritFM for Motorola phones.
evgenln said:
Hi mikereidis, I don't want flooding to be able write on developers section, as well be superfluous create a new topic on the DroidX tree so I would write here...
I tried the latest SpiritFM version on DroidX CM7. Several times I was able tune to the pre-programmed frequency and receive audio using FM_launch method. In most cases, I only get noise. To get the sound the speaker/headphones button should on and then off. Without such manipulation sound does not appear.
The big problem is that your program give low radio sensitivity. This is not a hardware problem because stock FM program allows 15 radiostations on the my area.
I also tried FM_launch2 but without success.
Here is the catlog with FM_launch, and then FM_launch2. I'm also ready to provide any logs or make any test if it helps you improve SpiritFM for Motorola phones.
Click to expand...
Click to collapse
Thanks for the log evgenln. I'll let you know what I find.
Some other people have enabled audio by toggling speaker/headset. It would be a hack, but perhaps I can create an option that toggles it automatically. But it would be better if I figure out what's happening, and fix it right.
Regarding signal strength: My guess would be that there is a function call required to enable the FM antenna, and that you are receiving without an antenna. I'll try to find out.
But since the headphone cable is the antenna, it's possible this is related to audio issues.
evgenln said:
I tried the latest SpiritFM version on DroidX CM7. Several times I was able tune to the pre-programmed frequency and receive audio using FM_launch method. In most cases, I only get noise.
Click to expand...
Click to collapse
It appears something has broken horribly for Texas Instruments FM chips. I can confirm the same errors you are having on my HTC Legend.
I can trigger the errors when I switch headset to speaker, and I'm not sure why yet.
Most phones have Broadcom chips, but I still don't understand why I haven't seen this problem before; it seems to go back at least a month.
Regardless, I've found a workaround that I hope will also work for you. If you deny SuperUser privileges to the app it will use hcitool instead of the daemon. It will consume more CPU/power when RDS is working and the screen is on though.
So, open the SuperUser app and select Spirit FM Radio and press Forget.
Then restart the app and when SuperUser asks for permission, select Deny and Remember.
Let me know, thanks !
I will determine the root cause and a fix.
Here's a preferable workaround for TI chip devices (and reason I wasn't seeing this issue).
This operation is useful for Broadcom based devices on CyanogenMod also because CM tries to use hcitool to set FM volume, so this can avoid some interference:
Remove or rename the hcitool binary. During audio switching, CyanogenMod (and likely some derivative ROMs) calls hcitool for some reason. This causes problems in the daemon mode.
The downside to this is that the CM FM app won't work.
I do this:
adb remount
adb shell mv /system/xbin/hcitool /system/xbin/hcitoo
My app can still use "hcitoo" if needed.
mikereidis said:
I do this:
adb remount
adb shell mv /system/xbin/hcitool /system/xbin/hcitoo
Click to expand...
Click to collapse
I tried this but without success. Still have on and then off the speaker/headphones button to get the sound.
In the attached files logs for the stock FM applications running on stock moto 2.2 and for the current SpiritFM on CM7.
evgenln said:
I tried this but without success. Still have on and then off the speaker/headphones button to get the sound.
In the attached files logs for the stock FM applications running on stock moto 2.2 and for the current SpiritFM on CM7.
Click to expand...
Click to collapse
OK thanks, I'm looking now.
To respond to your PM about Regional Band Russia frequency steps, it works OK for me as 100 KHz.
It's harder to see now though because the frequency up and down buttons have been removed in favor of the graphic thumbwheel. If you carefully nudge the thumbwheel you can see frequency move 0.1 MHz at a time, while for North America it's 0.2 MHz and odd frequencies.
The frequency step for seek might have a problem; it's done by the chip and there may be a problem there.
evgenln said:
I tried this but without success. Still have on and then off the speaker/headphones button to get the sound.
In the attached files logs for the stock FM applications running on stock moto 2.2 and for the current SpiritFM on CM7.
Click to expand...
Click to collapse
I've started a new thread here that should work for people with less than 10 posts: http://forum.xda-developers.com/showthread.php?p=15607830
Technically it's in a paid app forum and it's technically for the paid Unlocker (converts free app to paid app), but unless some moderator decides it's a really bad idea it's open for discussion of the free app also.
This topic is pasted all over the net and it doesn't seem to be getting much attention, however I think it should be brought to a better light.
The idea is simple: Enable your Android Phone or Tablet to become a bluetooth reciever(to replace a headset or bluetooth speakers) and broadcast audio to the device and broadcast microphone from the device.
This could be used in several different applications:
1. Using an Android Tablet as a Car Stereo Interface
(Connect Phone to Tablet Via Bluetooth and use it as a hands free speakerphone, or aux out to your stereo)
2. Multiple Android Phones
(Have a business and personal phone? Answer all your calls from one.)
3. Phone or Tablet as Bluetooth Speaker/Mic
(Skype, PS3, Xbox 360, TV, Google Voice)
I would use several of these options on a daily basis, and would most definitely pay good money for an app like this.
So my questions are:
1. Is this possible?
2. If it is, how hard would it be?
3. If it isn't that hard, why hasn't someone done it yet!?
Bump if you want this too!
Just wanted to bump this because we need to put our heads together here and get this done. I need this capability for number 1 on your list of potential uses. I also would pay good money for an app that enabled this. Phones and tablet are rooted and ready to modify whatever is needed. Ii've bumped a couple other threads today as well.
I would also pay for this!
I have been looking for this for a while. I use an old LG Eve in my car and my Captivate's Wifi connection for GPS but I would love to have it work for calls and music too.
I would pay as well.
bumping this just to say that I'm going to research the rules and process for starting a bounty. obviously the smart people we need to work on this need motivation lol
Sent from my GT-P6210 using XDA Premium HD app
Hi there,
just wanted to leave an incentive kind of post to say that I've also been looking for exactly the same thing.
My hunting on Google play just stopped after finding this post on XDA.
It's a kind of confirmation that there isn't a solution yet.
Since our rooted androids are more than capable of acting as a Bluetooth receiver, whether they may be based on new or older hardware, this seams like a very logical step in their lifecycle instead of getting forgotten in a drawer full of old and unused electronic waste.
Some doubts:
is a2dp required for this?
Is a2dp hardware related or simply a software feature?
Personally, I could live with a simple one way communication from a phone with mobile network (sender ) to the receiver. The used mic could still be the one on the sender side.
Wouldn't even need to have the receiver in a visible place as I would just connect a stereo cable from its headset output to an aux input on a hifi or a car stereo to hear music or acting as a hands-free system.
Hope this gets some real attention.
Cheers
In one year, nobody found a solution??
I can't beleive there is STILL no progress on this. Maybe I'll try asking a dev that has made similar apps the feasibility of this. There are so many practical uses for this that I cannot beleive no one has capitalized on it.
This would be a killer app if done right. Who here doesn't have an old phone laying around gathering dust? This could start off small; simply enabling the phone/tablet to be essentially a Bluetooth speaker, but then gain features and an interface using A2DP, which would evolve it into a killer way to make any car (with at least a tape deck) able to have full Bluetooth integration and control. I really hope someone can do this!
Bump
Bkb -> p -> PC (either wifi/blu/usb)
yeah so a spare bluetooth phone that connects between a keyboard and PC. Acting like a BT dongle. No way I'm spending 10 bucks for that. if an app...maybe a buck but would prefer free.
looking for this too. Wanting to turn this old phone into a bt audio receiver
Wow, endless searching and now this thread and still nothing :/ i need it for the first idea you listed, did you ever find something?
https://android.googlesource.com/pl.../java/android/bluetooth/BluetoothHeadset.java
Currently the Android Car Multimedia receives Bluetooth Stereo Audio from Phones (Andoird/Apple), how they do it?
Any news?
So many years and still nothing?
May be this is not the right way to do.
I know this is a crazy old subject but others have commented so I don't feel so bad.
I want to make my own android system for my car. I have everything I need for it (hardware/software-wise) except for this one thing.
A few years back there used to be an app called Tablet Talk, it's not exactly what we want but I'm still willing to settle for something like that. The way it works is phone->tablet->handsfree Bluetooth speaker. You could make and receive calls (including seeing the contact names/phone numbers on the tablet) from the tablet itself, then the audio/microphone goes to the handsfree device. Another added feature was when a call is happening the app stops all audio coming from the tablet until the call is done.
Like I said before, it's not perfect but at this point, I don't ever see it happening any other way. I found the app a few days ago, it doesn't exist on the app store anymore, unfortunately, I could get it to run. It just kept crashing.
If anyone knows of something then please let us know.
Years later, found just this thread: I want to do similar thing: Use a private phone (for my sake rooted with custom fw) as a hands-free bt device with an unrooted business phone (non-rooted and secure managed with company tool). I also don't want call forwarding or similar. Just do and answer calls, use phone book and call list via bluetooth like my car radio do for years.
Is there still no solution?
I've searched around on the forums for an answer to this but could never find anything that seems to match up to my issue.
I have a A2DP enabled headset and want to use it with apps such as Team Speak 3 beta, Vent, and other apps. But for some reason although phone media happily plays over onto my headset. My phone continues to only use the mic built into the phone instead of the bluetooth headset mic.
Any apps designed to use the headset specifically work (ie. normal phone calls, skype, vlingo) but otherwise apps ignore the headset mic.
I already tried using apps like BT Mono and Super BT Mono Froyo but they seem to only pipe audio to the headset, but don't do anything at all with the headset mic.
Does anybody know how to get the headset mic to be selected by apps instead of just the built-in mic?
My device is a Sumsung Galaxy S II ( I9100 ). Both Stock and CyanogenMod Gingerbread
good good good
Still hoping someone may know how to get the Galaxy S II phone to use a bluetooth headset mic instead of the built-in mic on the phone.
I'm really stumped on how to do this.
I still haven't seemed to have any luck finding a way to forcefully map apps to use the headset mic. I'm beginning to wounder if it's possible with the Android OS.
I have the galaxy s2 as well and I've retired several different things and have been unsuccessful with anything I've tried so far... Really difficult to drive and use vent without a headset.
Yeah I'm wanting to do the same thing.. I don't spose you've found a way in the last couple of months? Surely it can be done - may need to get a dev to write something for it though..
Sorry Lilfellabob, still no luck. I find it odd it's so difficulty to remap audio settings.
Even in Ice Cream Sandwich I can't find a way.
The app would need to be written to accept it. Its not a matter of your phone. Its the apps. Think about it for a min. If it works on apps made to use it but another app doesn't work then where does the problem lay?
The thing is, typically other apps should be able to re-route the app to use the headset mic. Alike how there are apps that can force other apps to use bluetooth audio instead of the phone speaker, even if the phone/headset can't use a2dp.
Dav_Edward said:
The thing is, typically other apps should be able to re-route the app to use the headset mic. Alike how there are apps that can force other apps to use bluetooth audio instead of the phone speaker, even if the phone/headset can't use a2dp.
Click to expand...
Click to collapse
Only if the code is there for it to do it. If they don't code it in then it doesn't work.
I'm having a similar problem but slightly the opposite.
I pair my phone to a Bluetooth device that lets me hear phone output on my car's speakers. However, the phone tries to use Bluetooth for the microphone when none exists. I want to force it to use the on-phone microphone. I can talk and talk but no one can hear me, unless I set the phone output to speaker or handset, which implies setting the phone input to amplified built-in mic, or just built-in mic, respectively.
In the Bluetooth settings I can set to use the Bluetooth device for music or phone, but ideally I would want "Phone" to be separated into "Phone output" and "Phone input" so I could uncheck input (and thus use the built-in mic.) This should be implemented at the Android level so that the setting can apply to all apps.
The same problem occured when I wired (2-stripe phone-to-car audio only, no mic) my Palm Pre directly to my car. I just tried with my GNex and it was smart enough to use the built-in mic when a microphone-less plug was connected.
zelendel said:
Only if the code is there for it to do it. If they don't code it in then it doesn't work.
Click to expand...
Click to collapse
wrong. its in the kernel. the new firmware on the android is is capable to transmit Audio Steam to Headset device as Audio only. i wont go 100% against coding to force it to but if they wanted to theres have to be some kind of exploit to do so. lets say if skype were to find that exploit or code it, it would be probably violate android policy.
HtcEvo4gLTE said:
wrong. its in the kernel. the new firmware on the android is is capable to transmit Audio Steam to Headset device as Audio only. i wont go 100% against coding to force it to but if they wanted to theres have to be some kind of exploit to do so. lets say if skype were to find that exploit or code it, it would be probably violate android policy.
Click to expand...
Click to collapse
Actually, what's going on is Skype is using the 'bluetooth device' hook of some sort, just like other apps that support piping audio to the bluetooth headset. However most apps don't use the bluetooth device API/hook and just dumbly send their audio to 'default output device' and 'default input device' blindly and let the OS or Kernel decide where to send it.
The OS or Kernel when it senses a bluetooth device with the 'media' profile on it is present, it changes the default output device to the headset, but it doesn't seem to bother doing the same for the bluetooth mic for the default input device.
Because apps like Teamspeak 3 just blindly use default audio device because it doesn't use bluetooth APIs in the app itself, I have no way to make it use the headset mic.
I wish someone could make a mod or app that will allow mapping the default input to a bluetooth mic when present.
As far as I know, Skype has problems using the BT mike as well. In fact, they took a user survey regarding the issue for android and iOS users. However, I cannot find the results of that survey / study, and Skype recommendations thereof.
User choice to use BT mike seems so BASIC to me, I wonder how it was overlooked...!
Rooting will crack open the full power of your Android device!
Dav_Edward said:
Sorry Lilfellabob, still no luck. I find it odd it's so difficulty to remap audio settings.
Even in Ice Cream Sandwich I can't find a way.
Click to expand...
Click to collapse
zelendel said:
The app would need to be written to accept it. Its not a matter of your phone. Its the apps. Think about it for a min. If it works on apps made to use it but another app doesn't work then where does the problem lay?
Click to expand...
Click to collapse
Rooting the device would give apps or the user permissions to modify system audio controller's (idk if it is anything like ALSA or anything..) settings to make app use the audio channel for the bluetooth headset... an example for the Galaxy s2 i9100 i have is the radio app "Sprit FM" has a "volume control stream" setting which allows the user to select what volume "control" will control the volume of the app's audio output
anywho... i hope it helps a little
rwong48, I have now the same problem that you have described. Have you solved it with any app for Andorid?
Thanks!
Solution
I found an app that solves this problem on android devices, it's called btmono and you can find it in the Google store. I tried to post the link but I don't have enough posts under my belt...
Anyways, pair your device, open the program (such as ts3), connect to your server and then turn on btmono. Voila!
Well, I tried to delete this after I saw that you had already tried btmono, but I couldn't figure out how so just disregard this message.
I already tried btmono, sadly although it works for the output audio, it does *not* work with the headset mic. Programs like TS3 will still keep using the phone's built-in mic, not the headset mine despite using btmono. The only thing btmono does is pipe the output audio to the headset only.
Thanks for the suggestion though
I can't believe they haven't fixed that yet. It is so basic...
Hey guys I'm going through the same issues with my note 2. Svoice was the only one that works but its painfully slow and inaccurate.
Anyways I've tried utter! robin and aivc. Aivc works pretty good but at least it uses the mic.
Utter is really promising but no Bluetooth mic. The devs have acknowledged it though. So hopefully soon.
Update: AIVC has one downfall. The app can't open if the screen is locked like utter and svoice can when prompted from bluetooth. Also, it only listens automatically the first time. If you close it without killing the app, you'll have to press the mic icon manually every time (which takes away from the purpose of handsfree).
For those of you that haven't heard, Siri Eyes Free is Apple's iPhone intergration with select Honda and Chevy cars.
What happens is that the car's interior microphone and the steering wheel voice button both act as a proxy to funnel input to the phone over bluetooth.
Did anyone hack together an Android app to work with iOS's input api? All I really want is to send text messages / initiate calls using google now voice.
I could get an iphone for testing. I have a laptop and a phone with bluetooth, if those can record the raw bluetooth signal
I picked up a car that has Siri Eyes Free (after a firmware update) and have an Android so I'm bumping this .
Nearly a year later I'll bump this as well. Any ideas here? Just moved from an iPhone and lack of voice integration over Bluetooth is a bummer. Thanks.
A
Another bump on this for visbility and hopefully some additional useful information. Long story made short I recently got a new car, a Ford C-Max with MyFord Touch, that has Siri Eyes Free capability (as of v 3.6/3.8). Sadly the car I upgraded from had a cheap <$100 aftermarket radio that happily activated Google Now through the standard BT voice dial button and allowed me full hands free functionality and would like to get that back.
What I have found upon a little digging is Apple has published developer documentation which covers Eyes Free functionality:
https://developer.apple.com/hardwaredrivers/BluetoothDesignGuidelines.pdf
As someone who can somewhat understand and comprehend this information but couldn't code to save his life, it appears to be fairly simplistic and is just a handful of custom BT serial commands, simple back and forth request/acknowledge commands, and an SCO audio link. Most of the user interface setup seems like it may be on the accessory/head unit end rather than the phone.
I would love to take a whack at this but unfortunately would not know where to begin. My first thought is would something like this with the serial BT communication, establishing an audio link, and triggering Google Now, be able to all be done without root?
If anyone begins on this or also wants to have a go at it, I'd definitely be willing to help where I can including testing and debugging.