Professional Documents
Culture Documents
Bluetooth Remote For PC
Bluetooth Remote For PC
Bluetooth Remote For PC
Introduction
Bluetooth is unlicensed and globally available. Made impacts in different markets, mainly mobiles. Future expected in Remote Control market Advantages over standard IR remotes
Bluetooth is non-directional Two-way communication possible in remotes, making possible intelligent remotes
PC Remotes presently are dedicated devices with limited functionality. Java and Bluetooth enables mobiles are now very common
Technology
Bluetooth(Hardware)
PC & Mobile 2.45 GHz ISM frequency band RFCOMM Service Discovery Database (SDDB)
J2ME(software)
Java Micro Edition 2 concepts
Configurations (CDC and CLDC) Profiles( eg:- MIDP) - set of APIs which reside on top of a configuration
Midlet
Methodology
Microsoft Bluetooth Stack Desktop (PC) Functionalities
Controls
Media Players(Windows, VLC, Winamp) PowerPoint Browsers( IE, Firefox)
Simulate
Mouse Keyboard
Utilities
Command Line Send Message
Methodology
JSR 82 API
Bluetooth Discovery APIs
APIs for Device Discovery APIs for Service Discovery The UUID Class The SDDB and the ServiceRecord Interface The DataElement Class The LocalDevice Class The RemoteDevice Class The DeviceClass Class Bluetooth Communication
Methodology
Server Connections and Client Connections
Initializing the Bluetooth Application Dealing with Connections Setting up a Bluetooth Server Creating a Service Record Registering the Service and Waiting for Incoming Connections Updating the Service Record Closing the Connection and Removing the Service Record Discovering Nearby Devices and Services Connecting to a Service
Implementation - Server(I)
Server (Java)
Package remoteserver
RemoteServer.java
main() function in the Server component
Package system
Bluetooth.java
Class responsible for enabling the Bluetooth stack in the server PC/laptop
Package keyboardcontrol
KeyboardControl.java
This class takes care of the implementing the virtual key presses
Package mouse
MouseCursor.java
This class is used to keep a track of the mouse cursor
Implementation - Server(II)
Package mousecontrol
MouseControl.java
This class implements the actions to be taken when data is received from the client which is in Mouse mode
Package util
SendAppList.java
In the class, basically a XML parser is implemented.
Package gui
RemoteServerGUI.java
The UI part of the server is handled by this class
About.java
This class displays the details of the application version and developers.
Package gui
AppList.java
lists the set of available applications
Helpform.java
Returns the appropriate help text
DevList.java
Lists out the server devices found out
MainCanvas.java
Gets an instance of the display unit in the mobile device
ModeList.java
lists down the different modes in the application
SendMessage.java
Takes the message to be send to the server as input from the user
SplashScreen.java
Displays info or error message to user
RunCommand.java
Takes the name of the executable to be run in the server
UtilList.java
Lists the options available in Utilities mode (i) Run Command and (ii) Send Message
Package util
CommandsTable.java
Holds an instance of the list of applications
Server Application(I)
Server Application(II)
Help Menu
Server Application(III)
Help Page 1
Help Page 2
Main Screen
Server Searching
Choose Mode
Client Application(II)
Mouse Mode
Client Application(III)
Select Application
Media Player
Client Application(IV)
Firefox
PowerPoint
Utilities
Client Application(V)
Command Screen
Client Application(VI)
Message Screen
Message in Server
Summary
Bluetooth Remote for PC implemented
Controls
Media Players(Windows, VLC, Winamp) PowerPoint Browsers( IE, Firefox)
Simulate
Mouse Keyboard
Utilities
Command Line Send Message
Application List & Shortcuts are customisable. Can be enhanced for greater usability in touch phones.