Presentation is loading. Please wait.

Presentation is loading. Please wait.

Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -

Similar presentations


Presentation on theme: "Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -"— Presentation transcript:

1 Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion - Israel institute of technology department of Electrical Engineering Final presentation SW application for Motorola g20 cellular engine Part B 30 Apr 2006 1 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory

2 Background: Abstract המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 2  g20 cellular engine supports various operations (sms, data transmission, voice, etc.)  Each operation requires an Input using AT commands  During the integration process, customers need to spend time for accessing and using the cellular engine interfaces

3 Abstract המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 3 Project Goals:  Develop a software API Layer which allows users to control the g20 cellular engine through these APIs  The software API will be used as customer reference code  Develop an easy to use GUI application for executing the most common g20 functionalities

4 Design Guidelines המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  The project’s code will be supplied as a source code package that can be compiled by any  ANSI-C compiler  C++ compiler  The code will be written in a form that can be ported to any Operating system or OS-less environment  Code should be compatible for future products, by adding a set of new commands to dictionary  Upgrading to future products is easy  Driver of RS-232 communication with g20 can be replaced and customized to customers’ own System 4

5 Design Guidelines המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  Code can be customized using g20customization.h file for a specific needed functionalities and for system requirements  All common operations of g20 are supported, divided to the types of command (voice SMS etc.)  High reliability is required (order of commands, error responses, etc.)  Project implementation should use minimum memory resources 5

6 Design Guidelines המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  GUI should implement all common operations for the G20 cellular engine  In case of unsolicited events, GUI will present the required data to the user, and allow him to choose next action accordingly  The use will be notified for errors  GUI will be built in a way that the user will learn about types of AT commands (ease the learning process) 5

7 System architecture המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 6 The Software is implemented in layers:  Driver Layer – Handling the Serial Port I/O  Wrapper Layer for the Serial I/O – interface from the Driver Layer To C language  AT Commands interpreter Layer – Executes commands using the Wrapper layer  API Modules layer – Each module (SMS, voice, etc.) will include all functionalities required  GUI/Shell Layer – an optional layer, for activating the APIs directly during development stage

8 Driver Layer Wrapper Layer /Listener Layer AT Command interpreter SMS API Voice API GPRS API TCP/UDP API PhoneBo ok API More g20 API Script Module Shell Application GUI Application System architecture (2) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 7 Layers Diagram:

9 System architecture (3) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 8 Layers Diagram - interconnections: Wrapper Layer/Listener Layer AT Command interpreter SMS API Voice API GPRS API TCP/UDP API Phonebook API More g20 API Script Module GUI Application Layer Driver Layer

10 System architecture (4) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 9 Driver Layer Wrapper Layer /Listener AT Command interpreter GUI Application API Modules Layer Driver Layer  Handling the Serial Port I/O  This Layer should be supplied by the user, for his specific platform  Main Operations – Open/Close, Read/Write – From/To serial port

11 System architecture (5) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 10 Driver Layer Wrapper Layer /Listener AT Command interpreter GUI Application API Modules Layer Wrapper Layer/Listener Layer  Interface from the Driver Layer functions to C language  Gives a C format to all serial I/O operations, using the driver Layer  All interface definition for user’s driver should be defined on G20Customization.h file  When data is sent by the g20, checks if it’s unsolicited event, and notify the calling environment

12  When sending AT command from the script module, the AT command must be checked before being sent to the g20 (Valid AT command and parameters)  This Layer gets an AT command and checks validity of the command and parameters System architecture (6) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 11 Driver Layer Wrapper Layer/Listener AT Command interpreter GUI Application API Modules Layer AT Command interpreter

13 System architecture (7) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 12 Driver Layer Wrapper Layer /Listener AT Command interpreter GUI Application API Modules Layer AT Command interpreter Check parameters validity Creates the AT command string Parameters Sends the AT command and receive result code Return unsolicited event flag, and event type Return Result to calling environment

14 System architecture (8) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 2 Driver Layer Wrapper Layer /Listener AT Command interpreter GUI Application API Modules Layer  Each type of operations (SMS, Voice, GPRS etc.) is implemented as a separate module  Each module have functions of its common operations  Customer can use the ready made functions supplied for his application  Each module can be included or excluded from the project by changing G20Customization 13

15 System architecture (9) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 14  Special module in this layer is the Script module which allows the user to write any sequence of AT command, check their validity and execute them  The Script module is for development stage only, and is not included in the final customer’s application Driver Layer Wrapper Layer /Listener AT Command interpreter GUI Application API Modules Layer

16 System architecture (10) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory 15 Driver Layer Wrapper Layer /Listener AT Command interpreter Shell Application API Modules Layer Shell Application  The user will be able to use a GUI or a Shell application  This layer is an easy to use GUI/Shell, which allows the user to initiate all supported operations  This Layer is for optional use only and consists of the most common use of the API functions GUI Application

17 System architecture (11) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Multi Threading in the g20 Application SW: The SW includes 2 Threads:  Main thread - in charge of:  GUI application  System initialization  APIs functions calls  Script module  Shell management  I/O thread – manages the information coming from the G20 and unsolicited event recognition

18 System architecture (12) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Driver Layer Wrapper Layer AT Command interpreter SMS API Voice API GPRS API TCP/UDP API Phoneboo k API More g20 API Script Module GUI Application Layer Main Thread Response queue I/O Thread Listener Listener Parser

19 19 Ease of learning – First use המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Days

20 20 Ease of learning – Advanced use המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Days

21 21 Ease of Implementation המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory Days

22 Customization Options המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  User can define whether he would like to work in Debug Mode or Normal Mode  Debug Mode – For development environment  Normal Mode – For Real work environment

23 Customization Options (2) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  It is possible to define which modules will be included in the application  This way developer can reduce code size, and customize code to his specific needs

24 Customization Options (3) המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  User should define his systems’ Synchronization objects  Minor modifications are needed in order to adjust the code for each system

25 Develop an application using G20’s APIs המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  As a basic building block, The developer will use the following functions when developing a G20’s command function:  UpdateArgs – adds the current argument to the end of argument list  CreateG20String - adds (") at the start and the end of a string (string  "string")  FreeBufferMemory – verifies that list of responses is free, for next AT command  CreateAT – for creation of the AT command string  SendCommand – Sends the string that was created by CreateAT

26 המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory  Using those functions allows the user to send any at command to the g20  The Developer can directly use the G20 SW APIs in his code, without the need to be familiar with the AT commands  The Developer will decide what modules to include in his application Develop an application using G20’s APIs

27 GUI Usage - Demonstration המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory

28 Summary המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The SW application for Motorola g20 cellular engine will add an additional value to the g20 product It will allow customers of Motorola to develop applications that using the g20 in much easier process and will save time during the integration process A GUI application or Shell application are available for first steps of usage to get to know the G20 functionalities in a very easy way

29 Summary המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The SW application was built, while trying to make it as flexible as possible The customer can use the source code provided, compiling only the code he needs, while reducing code size The customer can easily replace part of the SW (driver for example) or add his own functions, using the routines that were built for creating and sending the AT commands It is possible to update the g20 SW to maintain usability to future products

30 30 Conclusion המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory In conclusion, the G20 SW project allows any developer to ease the learning of the G20 functionalities, shorten the integration process and reduce time to market


Download ppt "Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -"

Similar presentations


Ads by Google