Thales' cellular IoT products business is now part of Telit Cinterion, find out more.

You are here

Telit Cinterion IoT Developer Community

OTAP PDU Generator

Tutorial, June 17, 2014 - 4:45pm, 12322 views


This tutorial shows an example of the OTAP functionality of the EHS-6.

OTAP (=Over the air provisioning) of Java Applications provides the user a mechanism to install and to delete Java Midlets over the air. Starting OTAP is possible by using AT-commands or by using short messages in PDU mode. Only the second way is described.

security advice: do not use OTAP before setting a password!!! Therefore it is required to send AT^SJOTAP command once.


  • EHS-6 Eval-Board
  • Starter Kit B80
  • antenna cable
  • two usb cable
  • SIM card



  • Terminal Emulator (e.g. HTerm)
  • pduGenerator.html and functions_new.js (download at the end)
  • devcie manager

Getting started:

First of all connect the Starter Kit B80 with the PC via USB (USB and ASC0). Insert a SIM card and connect the antenna cable. Switch on the module. Look up the COM ports of USB (modemport) and ASC0 connection in the device manager. Open HTerm two ***** because it is more comfortable to have a debugging session. Set COM ports in HTerm. In order to have an output on the ASC0 port following settings are mandatory. Otherwise there is no output on this port.

AT^SCFG = "URC/Ringline","asc0"

Furthermore a password must be set because of safety aspects. Type in following AT command:

AT^SJOTAP = "[your password]",,,,,,,,,,,,

followed by twelve commas. All other settings will be set by the PDU generator.

Generating PDU code:

  • copy both files pduGenerator.html and functions_new.js into one common directory
  • open pduGenerator.html and fill in all mandatory and needed parameters
  • depending on the goal click "START INSTALL" or "START DELETE"
  • the PDU code is generated in the textbox on the right-hand-side
  • copy this PDU code
  • at the bottom of the page the length of the PDU is shown. The given length is important for the next step

OTAP PDU Generator

Depending on the length the output consists of one or more short messages. One message can have up to 160 signs. If this message is longer than permitted the script divides the message. Every message contains the platform and the password set with AT^SJOTAP.

"START:INSTALL" or "START:DELETE" start the execution of all previous PDUs. For more detailed information about the PDU mode see the technical specification 3GPP TS 23.040 (PDU format) and in Java User's Guide (SMS format)

Step-by-step instruction:

  • in one HTerm type in AT^SCFG="Trace/Syslog/OTAP","1" in order to start the debugging session


  • in the other HTerm window set the module to PDU mode (AT^CMGF=0)
  • AT+CMGS=[your pdu length] starts the text input. Wait until ">" appears

HTerm sending

  • input generated PDU code, deactivate CRLF (activate None)
  • type in a hexadecimal "1A" behind the PDU code to send the message with "enter"

HTerm Hex

  • after a few seconds "+CMGS:..." appears. This indicates succesful transmission of the MIDlet. See the other HTerm window for detailed information about download and installation of the MIDlet.
  • The module automatically restarts after the OTAP completed.

HTerm successful

  • in HTerm window 2 debugging session starts

output debug

Only 7 bit modus is available with gsm character set. Selecting 8 bit mode has no effect.


I started out with nothing... I still have most of it.

This is it! Exactly this way the tutorials would be made. OTAP is one of the strongest reasons to use Gemalto Java. Customers can easily install and upgrade their applications, even far away.

Antero Markkula
Communication and Mechatronics

Enkom Active Oy –
Upseerinkatu 3 A, 02600 Espoo, Finland
Mobile: +358 400 411368
Office: +358 10 204 0000
Fax: +358 10 204 0010

It would be great if a version for BGS5T from scratch could be done. 

Hi, i have a problem. I would update a BGS5 with pdu generator. I attach file with my configuration, i dont know if my configuration it's ok.  Thanks for your help. pdu.doc


Florian.Hinrichs's picture