|
Documentation
BlueCove documentation.
About BlueCoveBlueCove is a JSR-82 implementation on Java Standard Edition (J2SE) that currently interfaces with the Mac OS X, WIDCOMM, BlueSoleil and Microsoft Bluetooth stack. Originally developed by Intel Research and currently maintained by volunteers. Since version 2.1 BlueCove distributed under the Apache Software License, Version 2.0 Support for Linux BlueZ is added in BlueCove version 2.0.3 as additional GNU General Public License module bluecove-gpl. JSR-82 Emulator added in BlueCove version 2.0.3 as additional module bluecove-emu. BlueCove public contirbutions Wiki Blog about Blue Cove Library APIBlueCove provides an implementation of the JSR 82. Applications should use API defined in JSR-82. See BlueCove JSR-82 API Runtime Requirements
LimitationsL2CAP support available only on Windows WIDCOMM Stack, Linux BlueZ and Mac OS X Stack. Since Microsoft Bluetooth stack only supporting RFCOMM connections, BlueCove also supports only RFCOMM connections on this stack. The Microsoft operating system support is currently limited to Windows XP SP2, Windows Mobile 2003 and newer, because the Microsoft Bluetooth stack is not available on other operating systems. If someone writes code to support another stack and/or operating system, it will be considered for inclusion. TOSHIBA on Win32 and BlueZ using D-Bus are wellcome! For more limitations details see stacks.txt or BlueCove supported stacks. LicenseApache License, Version 2.0 all except bluecove-gpl module GNU General Public License module bluecove-gpl We hope you enjoy using BlueCove. Please note that this is an open-source effort. If you feel the code could use new features or fixes, or the documentation can be improved, please get involved and lend us a hand! The BlueCove developers community welcomes your participation. Keep in mind that (one of two) Linux BlueZ support module is licensed under GNU General Public License. Not Implemented functionality
InstallationBlueCove rely upon already installed native Bluetooth stack that comes with you operating system or Bluetooth USB device. Installation of the binary (already compiled) version of BlueCove is as follows:
For maven2 users see Using maven2 to build application or MIDlet Runtime configurationBluetooth Stack If automatic Bluetooth Stack detection is not enough Java System property "bluecove.stack" can be used to force desired Stack Initialization. Values "widcomm", "bluesoleil" or "winsock". By default winsock is selected if available. Another property "bluecove.stack.first" is used optimize stack detection. If -Dbluecove.stack.first=widcomm then widcomm (bluecove.dll) stack is loaded first and if not available then BlueCove will switch to winsock. By default intelbth.dll is loaded first. If multiple stacks are detected they are selected in following order: "winsock", "widcomm", "bluesoleil". Since BlueCove v2.0.1 "bluecove.stack.first" will alter the order of stack selection. If System property is not an option (e.g. when running in Webstart) create text file "bluecove.stack" or "bluecove.stack.first" containing stack name and add this file to BlueCove or Application jar. (Since v2.0.1) Native Library location
IBM J9 Personal Profile To run BlueCove with IBMs J9 Java VM on Win32 or PocketPC add this system property -Dmicroedition.connection.pkgs=com.intel.bluetooth. On Windows Mobile you may create link to start application. like this bct-j9-ppro10 183#"\Program Files\J9\PPRO10\bin\j9.exe" -Dmicroedition.connection.pkgs=com.intel.bluetooth "-jcl:ppro10" -cp "\Storage Card\bluecove\bluecove-tester-mobile.jar" net.sf.bluecove.awt.Main
Tested on IBM J9 MIDP 2.0 Profile
Use bluecove_ce.dll for WIDCOMM stack on Windows Mobile Use intelbth_ce.dll for Microsoft stack on Windows Mobile
"%J9_HOME%\bin\j9.exe" -jcl:midp20 -Dmicroedition.connection.pkgs=com.intel.bluetooth -cp target\bctest.jar "-jxe:%J9_HOME%\lib\jclMidp20\jclMidp20.jxe" target\bctest.jad On Windows Mobile you may create link to start application. like this bct-j9-MIDP20-sc.lnk 107#"\Program Files\J9\MIDP20\bin\emulator.exe" "-Xdescriptor:\Storage Card\bluecove\bctest.jad" "-Xjam:force"
Tested on SUN CDC
MicroEmulator with JSR-82
CrEme CrEme is using ME4SE (Windows\CrEme\lib\midpx.jar), BlueCove BT connections do not work with ME4SE, you need to create a simple adapter class for Connector. Debug If something goes wrong system property -Dbluecove.debug=true will enable debug prints in BlueCove code If System property is not an option (e.g. when running MIDP application in emulator) create text file "bluecove.debug" containing one line 'true' and add this file to BlueCove.jar. (Since v2.0.2) Bluecove log is redirected to log4j when log4j.jar is available in classpath. Debug can be enabled using log4j configuration. (Since v2.0.2) This can be disabled by -Dbluecove.debug.log4j=false Only one Logger is used "com.intel.bluetooth" by BlueCove. So you may need to add this to your log4.xml <logger name="com.intel.bluetooth">
<level value="info" />
</logger>Configuration options System properties: Since v2.0.2
To enable obex timeouts use javax.microedition.io.Connector.open(String,int, true);
Since v2.0.3
Since v2.1.0
CompilationYou need a C++ compiler and JDK. Tested on Visual C++ 2005 Express Edition SP1 and SDK for Windows Vista or Windows Server 2003 R2 Platform SDK. VC++ and Windows SDK are available for free download from microsoft.com. We are using for Windows Vista SDK for binary distribution:Make sure you have Tools -> Options -> VC++ Directories -> We can't use the same DLL on windows for all implemenations. Since WIDCOMM need to be compile /MD using VC6 and winsock /MT using VC2005intelbth.dll build by VC2005 Configuration "Win32 winsock" bluecove.dll build by VC6 Configuration "Win32 Release" Visual C++ 6.0 SP6 used to build bluecove.dll for WIDCOMM Visual Visual C++ 2005 used to build intelbth.dll for winsock and BlueSoleil More detail on building native code src\main\c\intelbth\ReadMe.txt On Mac OS X Xcode 2.5 or later can be used duirng build on Mac. We use Xcode 3.0 on OSX 10.5.2 to build distribution. Ant or maven2 are used as the build tool for java.
If you are using ant:
We don't use ant for official distributions! build.xml only provided for your convenience SourceAvailable as downloadable packages or at the Subversion repository or for each released version. Organized in:
|
Sign in to add a comment
Comments is not a Discussions group.
Discussions and Questions goes here Goolge Groups bluecove-users