Title: Application Engineering TC45 with GPRS and Java
1Application Engineering TC45 with GPRS and Java
A presentation from ICM WM AE Athanasios
Papacostoulis - Manager Technical Sales
2Content
- TC45 Feature Overview
- DSB 45
- Open Software Platform
- I/O PINs
- OTAP
- Java Development
- Examples
- Summary
- Appendix A GPRS basics
- Appendix B GPIO new AT-Commands
- Appendix C FAQs
3TC45 - Feature Set (1)
- Control via AT commands (GSM 07.07 and 07.05, and
Siemens specific AT-commands) - Dualband E-GSM 900 MHz/ GSM 1800 MHz
- GPRS multi-slot Class8 / Class B
- SIM application tool kit
- Tri-codec (HR, FR, EFR)
- Supply voltage range 3.2...4.5V
- Compact and super-slim (only 3.5 mm)
- Two serial Interfaces
- Digital Audio Interface (DAI)
- FTA (Full type approval)
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
4TC45 - Feature Set (2)
- Open software platform (reserved resources for
the customers application) - Internal TCP/IP stack
- 9 configurable I/O PINs
- Over The Air Provisioning ( OTAP )
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
5DSB 45 - Development Support Box
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
- It supports all necessary interfaces and enables
all relevant activities for the customer
application, including - Development
- Testing
- Adaptation
- Optimization
- Fault detection
- SW update of the module
- Environment for approval of the module
6Open software platform benefits of java
-
- Well proven technology in mobile
devices(available in mobile phones for more than
2 years) - Java is a standard programming language, tools
and documentation are available for free - Java provides a sandbox model security model
to protect firmware - Java implementation
- Applications are independent of HW-platform
- Applications only depend on implementedJava-Virtu
al Machine
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
7Open software platform our solution
- Virtual Machine J2ME
- - for embedded systems
- - less memory effort
- Accessible periphery
- - max. 9 Digital I/O-Pins,
- usable for example as
- Output status LEDs
- Input Emergency Button
- - RS232 usable for example as
- GPS, current meter
- - Autostart function
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
- JVM interfaces to
- - at-commands
- - Flash
- - TCP/IP-services
- - RS232-library
- Memory space for Java programs
- - 300kbyte Flash
- - 100kbyte RAM
8Open software platform your advantages
- no external Microcontroller ( additionally less
power consumption ) - no external ROM
- no external RAM
- internal TCP/IP-Stack (used via IMP 1.0 methods)
- Decrease of costs - Hardware -
HW-development - SW-development
(embedded know-how) - faster Development Cycles
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
9Open Software Platform - architecture
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
10Open software platform overview
- Application runs in Sand Box
- APIs(Application Program Interface)
- RS232 API
- AT-Command API
- File I/O API
- IMP 1.0
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
11Open software platform - AJOF
- AT Java Open source Framework
- Siemens provide an easy to use frame work
- No knowledge of AT-Commands necessary for several
services - One Java method for dedicated services
- Services
- - Mobile engine status- Voice call handling-
CSD call and GPRS connection handling- Short
Message Service- Phonebook features- Pin I/O
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
12I/O PINS
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
13Over the Air Provisioning
- OTAP is a mechanism to install, update and delete
JAVA applications over the air interface. - OTAP is a common practice in the Java world
- OTAP can be fully controlled over SMS
- and also via AT commands
- Requirements for OTAP
- Web server wich contains .jad and .jar files
- OTAP Controller or SMS Sender
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
14What is offered to the customers?
- PC-Development- and Debug-Environment
- Tool to upload application over serial interface
on module - TC45 Modules with integrated Java virtual
machine simple example Framework with simple
to use GSM-functionality
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
15Install java development environment
- Requirement of Development PC
- Operating System WIN2000 or WINXP
- Serial Interface
- Processor min. Pentium I
- Disk space min. 150 MB
- Download Software from http//java/sun.com
- Development Java SDK 1.3.1
- Debugger SunONE
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
16Install java development environment
- Install Java SDK 1.3.1
- Install SunONE
- Install Siemens Environment (delivered CD-ROM)
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
- The following tools will be installed during the
setup - Documentation
- Siemens IMP emulation environment
- Siemens ModuleExchange
- Siemens WINMUX
17Developing a java application
- The 4 steps of developing a Java-Application
- Develop Java-Application on PC
- Debug Java-Application on PC
- Load Java-Application into TC45
- Run Java-Application
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
18Application example (1)
- Positioning andpersonal security
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
Children tracking and emergency systems powered
with Siemens Wireless Modules
19Application example (2)
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
Power metering and remote control systems with
Wireless Modules
- Power Consumption can be exactly measured, traced
and controlled. - Using the internal TCP/IP stack data can easily
be displayed via web page (http)
20Summary
Feature Overview DSB45 GPRS Open SW Platform I/O
PINs OTAP Java Development Examples Summary
- Features
- Software
- Dual band 900/1800 MHz
- GPRS class 8 plus J2ME with interfaces to
- AT Commands
- Flash file system
- TCP/IP-Stack
- RS232-library
- 9 configurable digital I/O-pins
- 50 pin board-to-board connector
- PC-emulator with debug environment
- Additional features
- OTAP (application SW)
- Java library
- Market Position
- Compact GSM/GPRS cellular engine
- with integrated Java technology
- Target Markets
- Telemetry/Telematics, e.g.
- Meter reading
- Security systems
- Fleetmanagement
21- Thank you for your attention
- www.siemens.com/wm
22Appendix A
23What is GPRS ?
- GPRS (General Packet Radio Service) is a step
between GSM and 3G cellular networks. GPRS offers
faster data transmission via a GSM network. - This technology makes it possible for users to
make telephone calls and transmit data at the
same time. - The main benefits of GPRS are that it reserves
radio resources only when there is data to send
and it reduces reliance on traditional
circuit-switched network elements. - With GPRS, an IP data transmission protocol,
which is characteristic of computer networks, is
being introduced to GSM. IP is a data
transmission protocol which is used in Internet.
24MS classes
Mobile class
Description
A
Simultaneous calls (via GSM) and data
transmission (via GPRS)
Automatic switching between the GSM and the GPRS
mode. No GSM GPRS at the same time
B
C
Hand operated switching between the GSM and the
GPRS mode
TC45
25NOM
- Mobile station class B is capable of doing
circuit switched (GSM) and packet (GPRS) transfer - ... either packet or circuit switched transfer at
the same time - ... is reachable (pageable) for both kinds of
traffic at all times - To be pageable for the network during data
transfer, the network must have implemented
paging coordination (NOM I) - Network operating modes
- NOM II no PBCCH, no paging coordination
- NOM III PBCCH implemented, no paging
coordination - NOM I PBCCH and paging coordination implemented
26Multislot classes
TC45
27Possible data rates
28Appendix B
29GPIO
- GPIOs are partitioned in blocks (ASC1 and DAI)
- Configured and controlled by AT Commands
- Usable with Java Java send the AT Command via
AT Command API and without JAVA - Customer application send the AT Command via
ASC0 - Status of the I/Os after start up the module
ASC0
ASC1
DAI
Active (AT interfeace)
Unused
Unused
30GPIO
- Example
- Java isnt running
- Set ASC1 to 2nd serial interface
- Use DAI PINs as GPIOs
- All commands are send to ASC0
ASC0
ASC1
DAI
Active
2nd serial Interface
GPIOs
31GPIO
- Example
- Java isnt running
- Set ASC1 as GPIOs
- Use DAI
- All commands are send to ASC0
ASC0
ASC1
DAI
Active
GPIO
DAI
32GPIO
- Example
- Java is running
- Set ASC1 as RS232 API
- - the RS232 is opened by a method by the java
program(CommConnection)connector.open(parameters
) - DAI PINS are used as GPIO
- - all commands to configure the GPIO are send by
the java program over the ATC API
ASC0
ASC1
DAI
JAVA System.out only
RS232 API
GPIO
33New AT Commands
- AT commands for handling Java applications
- ATSJRA run Java Application
- ATSJNET Set Dialup Network Access Parameters
- ATSJOTAP Over the air provisioning
- AT commands for I/O-port management
- ATSPIO General Purpose IO driver Open/Close
- ATSCPIN Pin configuration
- ATSCPOL Polling configuration
- ATSCPORT Port configuration
- ATSDPORT Delete a port configuration
- ATSGIO Get IO state of a specified pin or port
- ATSHIFM Set IO state of a specified pin or
port - ATSSIO Set IO state of a specified pin or port
34New AT Commands
- Extended AT Commands
- ATSCFG ConfigurationSCFG
.Userware/Autostart ? NEWSCFG
.Userware/Autostart/AppName ? NEWSCFG
.Userware/Autostart/Delay ? NEWSCFG
.Userware/Passwd ? NEWSCFG
.URC/RinglineSCFG .URC/Datamode/Ringline - ATCFUNATCFUN0,1 is supported in Alarm Mode
to restart the TC45 - TC45 goes then to the Full Mode send
the command using the AT Command API of the VM
35Appendix C FAQs
- Support of Power Saving ?
- External use of the TCP/IP stack ?
- Which JAVA Classes provide access to TCP/IP ?
- What kind of approval is recommended ?
- Are FTP services usable / available ?
- What is the difference between a JAR and JAD file
?
36Support of Power Saving ?
- The TC45 support power saving, also when Java is
in use!- switch to sleep mode via ATCFUN-
all threads have to be inactive- sleep modes
provoke a limited access to the interfaces
(typical paging of 2,12sec)
37External use of the TCP/IP stack?
- only the java application has direct access to
the internal TCP/IP stack - possible scenarios
- 1) - java read data using the RS232 API
- java send the data e.g. using GPRS to a
HTTP-Server - 2) - java read data using the RS232 API
- java write the data to the flash file
system - java send the data file e.g. using
GPRS to a HTTP-Server (e.g. every hour)
38Which JAVA Classes provide access to TCP/IP?
- TCP/IP API is part of the IMP1.0
- - IMP 1.0 provides access to TCP/IP with these
interfaces - DatagramConnection
- HttpConnection
- StreamConnection
-
- CSD and GPRS parameters must be defined
separately by the AT command ATSJNET
39What kind of approval is recommended?
- DTA (Delta Type Approval)
- because of the sandbox model it is guaranteed,
that the java programs have no influence to the
harmony to the GSM/GPRS NetworkThat means the
same approval procedure like TC35i/MC35i/MC45 etc.
40Are FTP services usable?
- YES
- IMP1.0 doesnt support such a CLASS, BUT its
possible to implement a own FTP CLASS - example application/Class is available
41What is the difference between a JAR and JAD file?
- JAR ? Java Archive
- the JAR file is a compressed file, which
contains the java program JAD ?Java
Application Descriptor - the JAD file describes the JAR file and its
properties (name, size, version)