Weblog
More Bluetooth Fun
We're fans here of Salling, especially their Clicker application.
So we just came across BlueShareWare.com, who do something similar to Salling (Bluetooth Remote control for Mac or PC), plus something different:
- Outlook Dialler (lets you dial someone on your phone directly from within Outlook over Bluetooth)
- LockItNow (uses your mobile as a security token to lock or unlock your PC)
- BeamItNow (auto send photos from mobile to PC)
Nice set of applications. Must ask them if they're using JSR82 (and if not, why not!!! :-)
First Bluetooth Pillows, next-up: Bluetooth Football
The SoundBall: A football (that's a "soccer" ball for our North American friends) with built-in motion sensors. Transmits motion data via Bluetooth to a computer that makes appropriate noises based on the received data.
From Aleksei Stevens : http://www.alekstevens.com/
Bluetooth Pillows anyone? Anyone? Helllooooo?
It probably had to happen - Bluetooth moves in to soft furnishings. Check out the Bluetooth Pillow, eh, cushion thingie. Next up, Bluetooth Pot Pourri?
Cool Projects using JSR82 [4] : Bluecove
Another cool project using JSR82. In fact, in this case, it's a little different, as there are really two projects worth looking at here (BlueCove and MicroEmulator ). We're going to concentrate on BlueCove. Vlad Skarzhevskyy is currently the point-person for this project, which is an open-source implementation of Java APIs for Bluetooth. It's not, officially, JSR82 compliant (yet), as they'll explain themselves, and it's mainly been focused on the desktop / PC arena (as opposed to say, the embedded/mobile area).
As you can see, they've had fun and games with different Bluetooth Stacks, and certain bits of Bluetooth hardware on Windows. We share their pain :-)
As an aside, at Rococo we've looked at the MicroEmulator and think it's great, and we plan to offer an option for our Impronto Simulator users to be able to use MicroEmulator out of the box.
Anyway - over to the BlueCove Team!
1. Give us a brief description of the project. How did it come about - what was the inspiration?
Blue Cove is a Java SE library for Bluetooth. It has JSR-82 interfaces. Blue Cove library is not referred to as an implementation of JSR-82, as it doesn't pass all the JSR-82 TCK tests at this time (but we are really close). The Blue Cove Library is licensed under LGPL so it is possible to link and distribute commercial software with it.
As for the background to it, James Scott, one of the original founders, writes:
Blue Cove was created in 2004 by myself and others who were working at the time at Intel Research Cambridge, a small research lab. We wanted to use Bluetooth in Java under WinXP and WinCE, but no JSR-82 implementation existed allowing J2ME's Bluetooth calls to operate in that environment. Blue Cove was built to support a broader piece of research named Haggle, which is still alive and well (its now a European funded project, and has source code on Sourceforge as well as a webpage at http://www.haggleproject.org/ ). Eben Upton was the lead developer on Blue Cove as he was doing an internship at Intel Research during his PhD. I was supervising the project along with Christophe Diot.
Blue Cove was given its own existence since it was clearly useful to others outside the Haggle effort, and the Intel lab's policy was to publish open source code wherever possible. It proved popular, though unfortunately we had little time to support it ourselves. Ben Hui maintained a website (see benhui.net ) which had a great "howto" about using Blue Cove. Denis Labaye eventually picked up Blue Cove in May 2005 when it was dormant, and asked if he could take it over. And that's where I lose track.
I'm really happy to see continued progress in Blue Cove.
Vlad Skarzhevskyy picks up the trail:
Then the project was maintained by Paul Tötterman and he moved it to Google Code.
I joined the project in 2007 because I wanted to be able to compile and tests J2ME application using real Bluetooth connections. So the best option was to join the project and fix all the bugs. I started from creating test application to ensure interoperability with other JSR-82 implementations. Also now I'm using JSR-82 TCK tests to ensure quality of the product. In spring there was an attempt to make OS X port by Eric Wagner. In May 2007 I fixed all the bugs I was aware of and started adding ability to extend Blue Cove with support for additional Bluetooth stacks on Windows and Linux. Now Broadcom WIDCOMM stack is complete.
Also I decided to support the BlueSoleil Stack. There is ~5% (maybe more?) market coverage for this stack, and since devices for this Stack are really cheap, this attracted attentions of many students to Blue Cove project. In spite of the fact that only limited functionality is available on this stack, support for it got users attention.
2. Tell us a little bit about yourselves. What's your background? What are you working on in general?
Vlad Skarzhevskyy
I graduated Moscow Institute of Physics and Technology in 1993, M. Sc. in Applied Mathematics and Physics. Used to work DIGITAL Equipment Corporation (DEC) now I work for big corporate a provider of software and services for billing, CRM and OSS systems.
I have some Open Source development experience.
Historical: mp3bookhelper, Mp3 management tools http://mp3bookhelper.sourceforge.net/
Project completed in 2004, More than 40,000 download, 3 years since last release and still no serious defects found in application.
Now I 'm helping Bartek Teodorczyk with MicroEmulator. MicroEmulator is a pure Java implementation of J2ME in J2SE. http://www.microemu.org/. I joined project in 2006. Since then we created professionally looking website and changed the image of application.
From my point of view the MicroEmulator is an alternative to Sun's WTK. Together with another pet project (http://pyx4me.com/) collection of tools we are using to simplify J2ME build process in maven 2. This is all I need for j2me application development.
It was my desire to have JSR-82 integrated in MicroEmulator thst originally brought me to Blue Cove project.
3. How long have you been working on the project
Since January I have been working on the project three evenings in a week. This comes to approximately 500 hours, may be more. My experience with JSR-82 is dated back to 2005.
4. What stage is it at now?
The latest release 2.0.0 is really stable and all major functionality is working. The next version 2.0.1 will be very stable and mature. And all implemented functionality will conform to JSR-82 and pass the JSR-82 TCK tests. Anything that does not conform to the standard will be documented.
5. What inspired it. Were there particular limitations of JSR82 or other technology that you were trying to address?
Actually I already answered this while talking about MicroEmulator and James described the root cause. I can also put a different angle here.
I used Blue Cove for prototyping new J2ME application and found the quality of the product is not acceptable. So I bought avetanaBluetooth and was happy with it for some time until I run out of licenses and found some problems in the product that I can't fix. Also as an example, I created very simple obex-maven-plugin to install J2ME MIDlet application on OBEX Bluetooth-enabled phone via OBEX Object Push. This improved my compile/deploy cycle from 3 minutes to 30 seconds. I wanted to share this plugin....
The major reason for Blue Cove is to offer an open-sourced version. The benefit of having Open Source implementation in repository is outstanding.
6. What was the biggest problem or roadblock you had to deal with in the project?
Stability of Microsoft Bluetooth Stack. It took me weeks of running long-running continuous tests until I found that the problem can be solved simply by using different Bluetooth USB dongle D-Link DBT-120 instead of Microsoft Wireless Transceiver for Bluetooth 2.0.
Also I spend two weekends figuring out how to properly integrate with the Broadcom stack. Application was crashing, JVM crashing, I was ready to give-up. By the end solution was very simple: compile switch for C++. I had nobody to ask and nobody to help. If I would have minimum support from Broadcom I would have spent much less time.
7. How do you see the results of the project being used?
I expect to create stable java library that can be used on 99% of Bluetooth enabled desktops. Even if it can't be certified by Motorola and can't be legally called "JSR-82 implementation" it will help to create Java desktop applications that need Bluetooth connections. For example, Medical applications, Monitoring and Connectivity applications.
Also I expect that students are starting to learn JSR-82 using Blue Cove. I'm answering all the question I'm receiving by e-mail no matter how simple they are.
Another hope I have is that if I achieve quality and acceptance of the product this all will improve JSR-82 implementations on Mobile devices.
8. What's next? What do you hope to work on over the next 12 months?
Next would be OBEX, Linux BlueZ and Windows TOSHIBA stack. This way we can cover all JSR-82 PC market :) Also I have an idea of adding JSR-82 emulator so J2ME application communications can be automatically tested and demonstrated on the website together with MicroEmulator.
For now I'm the only one active on the project so it may take some time. But you see how many hand this project had changed.... Hope one day I will receive a letter form a professional like me saying "I'd like to join and I have 5 hours a week to spend on Open Source development".
Recently I contacted big corporation and there was a time when they agreed to help me with Blue Cove, but by the end I still with no support. They just need to give a little more hope into open source and Corporate and Open worlds can mutually beneficially coexist.
Personally I hope not to give up on the project even when Motorola realises JSR-82 RI under the Apache License. I'm committed to quality. I may be busy doing other interesting work but I will keep Blue Cove quality in my hands.
9. Anything else I should have asked you? Anything else you'd like to say?
I would like to thank Motorola for making an efforts to move to open source. Hope that some time in a future my employer also will be joining Open Source movement. I think that future is in the professional Open source.
Ask me what is my dream? One day I come to work and my Manager say: "From now on you should spend 5 hours of you working week on any open source project of your choice".
CSR says things are good. Analysts disagree. CSR is right!
I've mentioned CSR here before, in many ways the poster-child for Bluetooth Technology. Well they've just released their Q2 results, which make interesting reading. As ever, it's a "record" quarter yada yada :-) Some selected highlights:
- Revenue for the quarter is up to $215.9m (Q2 2006: $182.4m)
- Operating Profit is up $44.8m (Q2 2006: $42.4m), but operating margin is down to 20.8% (Q2 2006: 23.2%)
- Non handset segment of the business growing nicely - now 21% of total revenues (H1 2006: 13%)
I also found these comments interesting:
- They reckon they can do average revenue growth of 15% - 20% p.a. over the next five years which implies CSR will reach $2 billion revenue by 2012
- They see attach rates (% of handsets having Bluetooth) growing from 35% (2006) to 40-50% (2007) to 70% ("medium term")
- The non handset areas flagged as opportunities are MP3 and MP4 players, digital televisions, gaming consoles, PCs, cars and cameras.
- As for headsets (where they are dominant): they "expect to maintain our headset market share at above 80% in 2007 and achieve a significant leadership position thereafter."
- They have stacks of cash ($185.1M), DSO is down, Inventory looks pretty well managed
- They have a range new products under development outside of "traditional" Bluetooth (GPS, Ultra low power Bluetooth, Ultra Wideband, etc.)
All in all - I think this is a pretty good story. They have loads of cash, are managing their way out of a) handset dependency and b) Bluetooth dependency, have some new gear in the pipeline, and seem to have reasonably well-managed costs. Will have to watch that margin slippage though, but it's likely that as Bluetooth matures, the margins on that side of the business slip further, especially as China becomes a larger mix in the target market (China kills margins, methinks!!).
The market reacted to the short term guidance (which was at the low to medium end of expectations) by taking the stock down 14%. I think this is probably a buying opportunity :-)
[Disclosure: I own no CSR stock]
Jawbone
Jawbone have a compelling demo on their website of their noise-cancelling Bluetooth headset. If it really works like they say, it's a winner! Nice design too.



