Bluetooth Application Programming?
Comatose51 asks: "I've been desperately trying to create an application that uses Bluetooth over the last month. I've been frustrated by the lack of good books and lack of hardware compatible with readily available Bluetooth APIs. While Microsoft added Bluetooth support into Windows XP since SP1, most hardware vendors do not use the Microsoft Bluetooth Stack. Instead, they use other proprietary stacks that costs money to obtain the SDKs and APIs for. I had to buy the Microsoft Bluetooth Mouse to get their Bluetooth Stack and a compliant adapter, which is still many times cheaper than what some companies charge for their APIs and SDKs. Java is the other (potentially better, easier) option but I haven't found any hardware vendors that state that they're Java (JSR-82) compliant. Is there really no easy way of developing Bluetooth applications for Windows? It is sad because Bluetooth holds so much promise. Thanks in advance." Might Bluetooth's problems stem from the fact that there is no consistent development platform for the technology?
I just think BlueTooth could've been great, but its complexity and the lack of certain levels of standards doomed it.
I actually looked at the specs once, thinking maybe it would be interesting. After getting through the actual modulation used, which I didn't care about, I got to the part about establishing connections and stuff. It's horribly complex, and everything seems to be overdone, like someone had a grand vision, but couldn't figure out exactly how to make it work.
My other main problem with it is that it is missing a certain level of standards, which is the set of standards that would define the services a device offers. It does have a mechanism for indicating the type of device to which you are connected, but it seems only enough to pick an icon, not to decide what to actually say.
What it needs is a set of protocols, preferably XML-based, since XML is 31337, that can transfer files, send/receive photos, take pictures, record audio, dial/talk on phone calls, etcetera. These would be organized into a menu on the device, like "Files", "Pictures", "Voice Recorder", "Phone", etcetera, so devices that do some or all of these would simply show a choice (tabs, maybe) for what feature to use.
Any ideas?
Tired of free iPod sigs? Subscribe to my blacklist
Is it necessary to use Windows for your app, or is it just what's on hand? Is this mass-market or special-purpose?
You might have better luck using Apple's Bluetooth SDK which has been standardized and shipped with the OS since Jaguar.
If it's a special-purpose app, you'll have a better outcome in the long-run by picking a stable API.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
It is sad because Bluetooth holds so much promise.
Ha-ha-ha, that's like so nineteen-ninety-nine. Bluetooth is dead, WiFi killed the guy. Not that there was something wrong with it, it's just that market including Intel and Taiwanese industry started making WiFi, which drove the prices through the floor.
I work for an industrial outfit that manufacturers hardware, and many times the final choice was WiFi instead of Bluetooth, Zigbee, etc. Overkill, but hey, who cares, if you just want to save a few bucks in the product costs.
Bluetooth will be sort of like Apple of the PC world - weird and somewhat exotic, better technology for some solutions, but totally handicapped in terms of price competition and market share.
Bluetooth is dying or dead! No one should write apps for it.
The stories of Bluetooth's feasibility are long over. Basically, standardization was knocked around for so long, WiFi maes and engulfed it. Market factors like the lack of US demand for linked devices from multiple vendors also spelled the end, much like a www.pizzain30minutesorless.com idea. No lack of shame, since it was the best idea at the time, but the increase in wireless bandwidth just isn't coming up to push XML fast enough for more than trivial apps. But that's only what I've heard, since I never used the stuff. I like RPCs way too much to get away from them.
So I am sitting home and I decided to copy this 17 MB file I have via this bluetooth link. Took 45 minutes, my goodness.
Bluetooth is dead? Then how am I going to get all these pictures out of my phone? IR? Jeez. Get your hands on a Mac and install the Developer tools. In /Developer/Examples/Bluetooth you'll find:
m ple
/Developer/Utilities/Bluetooth you'll find:
OBEXSample
OBEXSampleSendVCard
RFCOMMClientSa
RFCOMMServerSample
In
BluetoothMonitor
PacketDecoder2
I never looked at these before, so I checked them out. BluetoothMonitor seems to watche Bluetooth traffic (snort without the data). PacketDecoder2 seems to let you snoop on CMD, EVENTS, RFCOMM, SDP, and other interesting packets.
I spent the day wrestling with XCode and I totally hate it, but it looks like there are tools in here you want, so go spend $129 on Panther.
Not too long and you won't even be able to find a bluetooth mouse.
Bluetooth was laid off a long time ago but due to a glitch it was never informed. We fixed the glitch... It will just work itself out.
Boredom's not a burden anyone should bear.
dead, I tell you!
Bluetooth isn't doing well because there just plain isn't a market for it.
Why does the average consumer want a wireless keyboard? The wired one is more reliable, cheaper, and means that no batteries and recharging are necessary. *He* (unlike the typical Slashdotter) doesn't constantly plug and unplug cables.
May we never see th
So where to from here. If bluetooth is dead and WiFi is taking over then why are there no mobile WiFi devices like cellphones?
Will this make cellphone towers and monthly rates obsolete? How about IP Cellphony. I am quite sure everybody has pondered about this very thought. It would mean a truly global interconnected network where mobile wireless networks can provide anytime anywhere networks. So what's the downside? One word, bandwidth. WiFi currently requires the 802.11b standard which runs 11mbps. 802.11g runs 54mbps which would be a jump, however all should probably wait for 802.11n which should push the bandwidth to over 100mbits to somewhere around 150mbps.
The Matrix Approaches. V / XI / MMIII Can't wait.
Anyway back to reality, so the IEEE and ISO have got standards pretty much under wraps although these standards are a bit buggy and have security holes. Shall we jump on the bandwagon and push the IPv6 development? Definately. With a new IP version we can accomodate more IP's and provide better security(IPv6 currently has alot more security features).
Now the question is how long do we wait for mobile devices to actively support and promote WiFi standards. Many moons Man with Clenched Fists
Try the Widcomm API.
Yes, it has lots of problems, and you have to correspond API==SDK (that is, if you develop w 1.4 SDK it can only run in the 1.4 Stack). But it's fairly easy to program, an it has all that metters (RFCOMM and L2CAP)
I guess compatibility is good (never had any problems)
I've never used the WIndows XP one, but I reckon it's more difficult to use.
how long until
Take a look at my site www.javabluetooth.com, it has almost everything that you're looking for. For instance:
1. It has a list of hardware to get you started in Java Bluetooth development
2. A list of Java Bluetooth SDKs
3. Information on my book, "Bluetooth for Java"
4. A sample chapter from my book
5. All the source code from my book
The folks on Amazon like my book, so you might want to check it out. You don't have to buy the book, but the early chapters explain all the complexities of Bluetooth, and makes it easy for Java and J2ME programmers.
Bruce
A company called Rococo have a development kit which hides the complexity of bluetooth behind an API, they also have a simulation envirnoment so you can test your apps before deploying them on the target devices. As far as I know theres a free download for linux.
Try this: http://javabluetooth.chris-lorenz.com/
It implements JSR-82 through java.comms
I worked on an application for about 4 months, using Bluetooth communication for communication between two Windows PCs (as proof of concept for future devices). The experience was less than stellar. The SDK I used was discontinued while I was coding, but too late to switch to a new one (before funding ran out).
So what's my advice? Have a backup plan. Isolate your network communication procedures so you can easily switch to a new protocol/stack when one comes along. My code has been re-used, ported over to 802.11, because they found a power solution that would allow them to use the more standard protocol.
Bluetooth programming was only marginally more complicated than working with proprietary data transfer protocols I worked with in 1994. But 8 years later, it should have been easier. Call me a cynic, but the OBEX implementation of the stack I worked with caused me too many sleepless nights.
Dan
Cisco makes a WiFi IP phone...but, it does have to be within range of a WiFi network, and somewhere on that network, has to be stuff to make VoIP work.
It's currently about the same price as a regular Cisco VoIP phone is, but it can move away from the desk (i.e. anywhere in the company, not just in the cube.)
I'm looking for a portable battery-powered Bluetooth to WiFi gateway that will allow me to use Wifi Hostpots with my Bluetooth-enabled phone.
Anyone seen this animal?
Also who has the best Bluetooth Access Point?
Thanks!
Bluetooth IS NOT A WIRELESS TCP/IP Alternative! It's a CABLE replacement technology. That is all. Besides other issues with Bluetooth, I am convinced that companies aren't using it because tehy still want to charge you 50 bucks for about 10 bucks worth of cable. They also still want to use non-standard connectors to you have to buy from them and noone else. BT is just starting to take off now. How many times did someone try to kill USB with Firwire? BT complements WiFi. When WiFi is available, you use it. When there isn't WiFi, you use your BT enabled phone.
Gorkman
Sorta OT, but why don't they make mouspads and wrist pads that recharge Bluetooth mice and keyboards via induction while they're in their correct places? That would give you the juice to sit back with the keyboard in your lap as long as you put it back on the desk when you went to lunch.
-- stream of did I lock the front door consciousness
but if you're developing for m$ windoze apps, write it yourself. I'm in the process over the next I don't know how many years of writing in the wireless section for a bluetooth app that's eventually going onto a single board computer and I've found it's much easier (and generates smaller code obviously) to just make a sending and receiving thread and write the whole app yourself. ALl you need to do is get the bluetooth spec and understand the technology, but shouldn't you've done that already?