******************************************************************************
final docs versions will be available in pdf format only.
******************************************************************************

Technical documentation
	
	Introduction

	AcknowledgementS
		javabluetooth project (Christian Lorentz) - code base
		BlueZ - rfcomm code borrowed from them.

	Motivation

	Bluetooth technology overview	
		-lots about Harald - a picture is obligatory!
		-general description (radio, 2.45 GHz, hopping- why, IEEE802.11b comparison)
		-Bluetotoh network topology, ad-hoc, why is it better than other RF networking?
		-SIG
		-where can Bluetooth be usefull (an where not?) (from [12] and [1])
		-layers (short functionality, picture, packet types)
			baseband
			LC
			LM
			HCI
			Transport interface
				-standard (PCMCIA, UART, USB)
				-non-standard (BCSP)
			HCI
			L2CAP
			SDP
			RFCOMM
			OBEX
	
	JSR-82 overview
		[code sniplets, as many as possible]
		Device management

		Discovery

		Communication

	Our implementation of OBEX, RFCOMM & Security
		[commented class diagrams, code sniplets, collaboration diagrams, examples]
		[message exchange with HCI and L2CAP for selected commands - inquiry i.e.]
			
		-BCC - Bluetooth Control Center
			-method setEncryption(boolean) disassembled to individual LM commands
			-other methods listed
			-common usage scenarios (order of function calling for a particular purpose)

		-GAP - Generic Access Profile 
			-methods
			-common usage scenarios (order of function calling for a particular purpose)
		
		-RFCOMM
			-????
		
		-OBEX
			-????


	Installation Guide : Developer mode

	Installation Guide : User mode
				-different jars for different functionality - not everyone has a need for the whole stack

	Installation Guide : Hardware
				-Xircom CBT
				-Serial Modules
				-USB modules

	Conclusion

	Appendix A: Getting commapi to work
	Appendix B: Creating Eclipse Runtime configurations
	Appendix C: Ant build files for SNAP (Small Network Application Platform) and TINI (Tini INternet Interfaces)	
	Appendix D: Eclipse JUnit support - running compliance tests from Eclipse
	Appendix E: Eclipse & CVS - getting them to work together, commit, update & synchronize operations	
	Appendix F: Running midlets with ME4SE		




Literature and resources:

	Books
		[1]Anthony, Hopkins : Blutoooth for Java

	Internet
		[2]javabluetooth on sourceforge, sourceforge.net/projects/javabluetoooth

		[3]link for BlueZ, a linux Bluetooth stack
	
		[4]commapi 
	
		[5]eclipse

		[6]ant manual www.apache.org/ant

		[7]JUnit - www.junit.org

		[8]sixlegs PNG library (classpathu necessity for ME4SE), http://www.sixlegs.com/software/png/

		[9]ME4SE home, http://kobjects.dyndns.org/kobjects/auto?self=$81d91ea1000000f5d0738100

		[10]Eclipse CVSssh2 plugin link

		[11]Using Threads in J2ME Applications, http://developers.sun.com/techtopics/mobility/midp/articles/threading2/

		[12]Deploying Wireless Java Applications,http://developers.sun.com/techtopics/mobility/midp/articles/bluetooth1/

		[13]Wireless Application Programming with J2ME and Bluetooth,http://developers.sun.com/techtopics/mobility/midp/articles/bluetooth2/

		[14]JavaBluetoothStack on Sourceforge, jbs.sourceforge.net
		
		[15]JSR-82 page

Index
	

******************************************************************************
Acceptance test plan

Using JUnit, a set of classes named in the following manner XX_TestName.java.

1.HCI driver test
2.USB driver test
3.Bluetooth Control Center tests
	-setting connectable mode
	-setting discoverable mode
	-setting authentication mode
	-setting encryption mode
	
4.GenericAccessProfile (GAP) tests
	-retrieving local device friendly name
	-retrieving local device address
	-retrieving remote device friendly name
	-retrieving remote device address

5.Device Discovery test
6.Service Discovery test
	-Service registration test
	-browsing services

7.L2CAP communication tests:
	-btspp URL construction
	-accepting RFCOMM connection
	-sending 200k of data
	-receiving 200k of data

8.RFCOMM communication tests:
	-btspp URL construction
	-accepting RFCOMM connection
	-sending 200k of data
	-receiving 200k of data

9.OBEX communication test
	-Object push profile test
	-Synchronization profile

10. (7. over authenticated and encrypted link)
11. (8. over authenticated and encrypted link)
12. (9. over authenticated and encrypted link)

******************************************************************************