bluetooth remote for pc
TRANSCRIPT
-
8/2/2019 Bluetooth Remote for PC
1/21
Bluetooth Remote for PC
Aby Jacob
2008HZ12317
-
8/2/2019 Bluetooth Remote for PC
2/21
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
Introduction
-
8/2/2019 Bluetooth Remote for PC
3/21
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
Technology
-
8/2/2019 Bluetooth Remote for PC
4/21
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
-
8/2/2019 Bluetooth Remote for PC
5/21
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
APIs for Device Management
The LocalDevice Class
The RemoteDevice Class
The DeviceClass Class
Bluetooth Communication
Methodology
-
8/2/2019 Bluetooth Remote for PC
6/21
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
Methodology
-
8/2/2019 Bluetooth Remote for PC
7/21
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(I)
-
8/2/2019 Bluetooth Remote for PC
8/21
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.
Implementation - Server(II)
-
8/2/2019 Bluetooth Remote for PC
9/21
Client (J2ME) Package device
Bluetooth.java
Class responsible for enabling the Bluetooth stack in the client
mobile device
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
Implementation - Client (I)
-
8/2/2019 Bluetooth Remote for PC
10/21
MainList.java
Implements RecordStore
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
Implementation - Client (II)
-
8/2/2019 Bluetooth Remote for PC
11/21
Package remoteclient
Remote.java
Main class in the client side implementation
Package util CommandsTable.java
Holds an instance of the list of applications
Implementation - Client (III)
-
8/2/2019 Bluetooth Remote for PC
12/21
Server Application(I)
Waiting for client to connect Once client is connected
-
8/2/2019 Bluetooth Remote for PC
13/21
Server Application(II)
Once a client is disconnected, waiting
from new connection
Help Menu
-
8/2/2019 Bluetooth Remote for PC
14/21
Server Application(III)
Help Page 1 Help Page 2
-
8/2/2019 Bluetooth Remote for PC
15/21
Client Application (I)
Server SearchingMain Screen Choose Mode
-
8/2/2019 Bluetooth Remote for PC
16/21
Client Application(II)
Mouse Mode HelpMouse Mode Keyboard Mode Help
-
8/2/2019 Bluetooth Remote for PC
17/21
Client Application(III)
Select ApplicationApplication ModeHelp Media Player
-
8/2/2019 Bluetooth Remote for PC
18/21
Client Application(IV)
PowerPointFirefox Utilities
-
8/2/2019 Bluetooth Remote for PC
19/21
Client Application(V)
Application Opened in ServerCommand Screen
-
8/2/2019 Bluetooth Remote for PC
20/21
Client Application(VI)
Message in ServerMessage Screen
-
8/2/2019 Bluetooth Remote for PC
21/21
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.
Summary