Download presentation
Presentation is loading. Please wait.
2
Pundik Dmitry & Blekhman Alexandr 2001/02 Final Presentation Semester A הטכניון - מכון טכנולוגי לישראל המעבדה למערכות ספרתיות מהירות הפקולטה להנדסת חשמל Pundik Dmitry & Blekhman Alexandr Instructor: Konstanin Sinyuk
3
Pundik Dmitry & Blekhman Alexandr 2001/02 Abstract In our project we rebuild the infrastructure of a project that is written by the second team in CE Lab (Haim and Eran). The system is called LIS (Local Information System), and it uses a LAP (LAN Access Point) in order to connect an information service, and transfer data. The connection and transfer is made through BlueTooth wireless communication technology, and we have to replace the current stack, while making minimal changes to the API, in order to minimize the effect on the already running projects.
4
Pundik Dmitry & Blekhman Alexandr 2001/02 BlueTooth Overview Short range wireless technology. Network solution for handheld devices.
5
Pundik Dmitry & Blekhman Alexandr 2001/02 System Overview LAN Client 1Client 2Client 7 BT PC LAP
6
Pundik Dmitry & Blekhman Alexandr 2001/02 Our Project Part A The goal of our project is to develop and integrate a new BT stack in the current application: The previous BT was built for concept demonstration system. This stack only partially implements the BlueTooth standard stack. The implementation of the stack was rather simple and inefficient.
7
Pundik Dmitry & Blekhman Alexandr 2001/02 Project Part A Final Architecture In the end of current project part, we have released two java objects: 1. RFSocket – object, implementing the socket, which transferres the data. 2. RFServerSocket – object, implementing the server of the BT connection. These objects allow transparent use of client/server architecture in Java applications over Bluetooth network.
8
Pundik Dmitry & Blekhman Alexandr 2001/02 Porting To Java Both classes were written in C/C++, and compiled into a Dinamic Link Library (DLL). Their API’s were ported to Java, so the second project team can integrate it in their work. The porting was made using JNI – Java Native Interface.
9
Pundik Dmitry & Blekhman Alexandr 2001/02 JNI The Java Native Interface (JNI) allows Java code to operate with applications written in other languages. You can call functions and methods implemented in other languages, such as C or C++. This can be used in integrating an already existing (legacy) application into a Java application.
10
Pundik Dmitry & Blekhman Alexandr 2001/02 Project Software Design Server Side Digianswer BlueTooth stack API RFServices DLL (C++) User2 Java Objects API JNI
11
Pundik Dmitry & Blekhman Alexandr 2001/02 Project Software Design Client Side Digianswer BlueTooth stack API RFSocket implementation (C++) UserJava Object API JNI
12
Pundik Dmitry & Blekhman Alexandr 2001/02 RFServerSocket Functionality RFServerSocket implements the server side BT connection. Performs the clients search and sets up the connection. It export RFSocket object for data transfer for each client connected. It works on PC devices, and uses the Multi Point connection to clients. RFServerSocket Search Accept Connect RFSocket
13
Pundik Dmitry & Blekhman Alexandr 2001/02 RFSocket Functionality RFSocket Read Write Disconnect RFSocket implements the basic socket stream functions, as object Socket in Java. For the user it has the same API both on the iPaq devices, and the server. This object operates with one BT device, using Point To Point connection with the server. HCI Input Stream HCI Output Stream
14
Pundik Dmitry & Blekhman Alexandr 2001/02 RFServerSocket API Main methods: Connect: initializes the connection, performs inquiry, builds the database of clients and services, creates the connections to all the clients found. Accept: returns a reference to one RFSocket of all alive connections at a time. Close: closes all connections, destroys databases, and exits.
15
Pundik Dmitry & Blekhman Alexandr 2001/02 RFServerSocket Design RFServerSocket is based on DigiAnswer API, supplied with the DigiAnswer BT device. The connection is created through Serial Port Profile, which creates a virtual COM port for every client. The RFServerSocket creates the connection with all the clients found. The device list can be updated. Every connected client has a corresponding RFSocket, stored in a list inside the RFServerSocket. Every RFSocket has a different local service, used by the connection.
16
Pundik Dmitry & Blekhman Alexandr 2001/02 RFServerSocket API Diagram Connected RFSockets, one to every available local service: Connect Accept Close
17
Pundik Dmitry & Blekhman Alexandr 2001/02 RFServerSocket Design Diagram BT hardware Digianswer BlueTooth stack API RFServerSocket Virtual COM port RFSocket UserAPI
18
Pundik Dmitry & Blekhman Alexandr 2001/02 RFSocket API Main methods: GetInputStream: returns the stream, that reads the data. The stream implements Java’s inputStream interface. GetOutputStream: returns the stream, that sends the data. The stream implements Java’s outputStream interface. Disconnect: disconnects the client the object refers to, and notifies the server about the socket termination.
19
Pundik Dmitry & Blekhman Alexandr 2001/02 RFSocket API Diagram Virtual COM port GetInputStream InputStream Read GetOutputStream OutputStream Write Disconnect Call the server for disconnection
20
Pundik Dmitry & Blekhman Alexandr 2001/02 Problems Encountered The server is located on the laptop, because the DigiAnswer BT device is PCMCIA. Difference between BT stack versions on the iPaqs, and the server caused many crashes and connection failures. The Java VM on iPaq is a PersonalJava, which made the porting difficult. Absence of Jbuilder on the laptop made us write the Java code on a PC, and run it on the laptop, without any debugging abilities. General inconveniences, like writing on a laptop, transferring data to PC, and debugging on iPaq.
21
Pundik Dmitry & Blekhman Alexandr 2001/02 Semester B Complete the porting of RFSocket for the client (iPaq) to Java. Run numerous tests on the objects, and fix the bugs found. Integrate the Java objects RFServerSocket and RFSocket in the project of the second team (Haim and Eran) Transfer the LAP to the iPaq from the Laptop.
22
Pundik Dmitry & Blekhman Alexandr 2001/02 Time Table 21.4Completing the RFSocket porting for client side. 1.5Testing and fixing bugs in the existing objects. 21.5Finishing the integration with the second project. 1.6Research and study about Windows CE BT and API. 15.6Operating with the BT API on the iPaq. 15.7Transfer the LAP to iPaq. 1.8Finish testing and fixing the new LAP in iPaq.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.