MOBILE DEVICES Developers Guide June 18, 2012 Part No. 8000217.
© Copyright 2012 by Psion Inc. 2100 Meadowvale Boulevard, Mississauga, Ontario, Canada L5N 7J9 http://www.psion.com This document and the information it contains is the property of Psion Inc. This document is not to be used, reproduced or copied, in whole or in part, except for the sole purpose of assisting in proper use of Psion manufactured goods and services by their rightful owners and users. Any other use of this document is prohibited.
Return-To-Factory Warranty Psion Inc. provides a return to factory warranty on this product for a period of twelve (12) months in accordance with the Statement of Limited Warranty and Limitation of Liability provided at: www.psion.com/warranty The warranty on Psion manufactured equipment does not extend to any product that has been tampered with, altered, or repaired by any person other than an employee of an authorized Psion service organization. See Psion terms and conditions of sale for full details.
TABLE OF CONTENTS Table of Contents Chapter 1: Introduction 1.1 1.2 1.3 1.4 About This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Text Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Table of Contents 3.14 3.15 Code Samples for Power Management and Smart Batteries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Power Management and Battery API Elements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Chapter 4: Reset 4.1 4.2 4.3 4.4 4.5 4.6 Reset Types and Effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Table of Contents 8.6 8.7 8.8 8.9 Getting Started with Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Code Samples for Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Peripheral API Elements in the Mobile Devices SDK . . . . . . . . . . . .
Table of Contents 13.5 13.6 13.7 13.8 Configuring Scanners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 13.5.1 Configuring Through the GUI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 13.5.2 Configuring Using an SDK Application . . . . . . . . . . .
Table of Contents 14.7 14.8 14.9 Microphone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Audio Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 14.8.
Table of Contents 18.9 18.10 18.11 18.12 18.13 18.14 Controlling Power on all Supplicants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Configuring WLAN Through the User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Ad hoc Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Table of Contents 19.13.7 19.13.8 19.13.9 19.13.10 19.13.11 19.13.12 19.13.13 19.13.14 Processing Voice Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Terminating Voice Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Call Forwarding . . . . . . . . .
Table of Contents 22.5 Light Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 22.5.1 Getting Started with the Light Sensor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 22.5.2 Code Samples for the Light Sensor. . . . . . . . . . . . . . . . . . . . .
INTRODUCTION INTRODUCTION 1.1 1.2 1.3 1.4 About This Manual . . . . . . . . . . . . . . . . . . . . Text Conventions . . . . . . . . . . . . . . . . . . . . . 1.2.1 Command Syntax . . . . . . . . . . . . . . Non-Psion Computers . . . . . . . . . . . . . . . . . . Other Documentation for Application Development 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Introduction About This Manual 1.1 About This Manual This manual provides guidance on creating applications for Psion devices running Microsoft Windows® CE, or Windows Mobile, operating systems. Chapter 1: Introduction provides an overview of this manual, the other documentation available with the SDK, and text conventions used. Chapter 2: Backlight describes how to control the backlights on Psion computers.
Introduction Text Conventions Appendix B: Registry Keys lists and describes certain Workabout Pro registry keys which may be useful when developing applications on Psion computers. 1.2 Text Conventions The following conventions and syntax are followed throughout this document, with the exception of when referencing API commands (see Section 1.2.1: “Command Syntax”): • Instructions to press specific keys on the keypad are indicated with the name or symbol of the key between square brackets. e.g.
Chapter 1: Introduction Other Documentation for Application Development 1.4 Other Documentation for Application Development There are three categories of manuals that should be used when programming Psion computers. This manual, the Developers Guide, provides an overview of the Psion devices. A single Developers Guide covers all libraries and devices. This manual is available in Portable Document Format (PDF). API online help is provided for each language library, in a format appropriate to that language.
2 BACKLIGHT BACKLIGHT 2.1 2.2 2.3 2.4 2.5 Backlighting . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Omnii and EP10. . . . . . . . . . . . . . . . . . 2.1.2 Thresholds . . . . . . . . . . . . . . . . . . . . 2.1.3 Timeouts . . . . . . . . . . . . . . . . . . . . . Backlight Configuration Parameters . . . . . . . . . . . . 2.2.1 Mobile Devices SDK Version 5.4 and Later. . 2.2.2 Mobile Devices SDK Version 5.3 and Earlier . Getting Started with Backlights . . . . . . . . . . . . . .
Chapter 2: Backlight Backlighting 2.1 Backlighting The Mobile Devices SDK provides functions that control the display and keyboard backlights. The intensity of the backlight and the conditions under which it is activated can be queried and set using the SDK. To conserve battery power, you can configure the backlights to switch off, or dim to half intensity, after the computer has been inactive for a selected length of time.
Chapter 2: Backlight Timeouts Windows CE-based computers On Windows CE-based computers, the Display, and Keyboard, Backlight On-time values determine how long the display and keyboard backlights remain on. Any user interaction (key press, touch screen press, scan, etc.) resets both timeout counters back to the beginning. If there has been no user interaction by the end of the keyboard on-time duration, the keyboard backlight turns off.
Chapter 2: Backlight Backlight Configuration Parameters Time (milliseconds) Battery Power Backlight On-time External Power Backlight On-time 180000 Yes Yes 240000 Yes Yes 300000 Yes Yes 360000 No Yes 420000 No Yes 480000 No Yes 540000 No Yes 600000 No Yes 2147483647 (Always On, maximum value) No1 No1 1The setting for Always On is controlled by a checkbox that enables/disables the On-time parameter.
Chapter 2: Backlight Mobile Devices SDK Version 5.3 and Earlier 2.2.2 Parameter Range Of Values Default Value Keyboard dimtime (% of maximum) 0 to 100 50 Keyboard always on for external power (boolean) True / False False Mobile Devices SDK Version 5.
Chapter 2: Backlight Mobile Devices SDK Version 5.
Chapter 2: Backlight Mobile Devices SDK Version 5.
Chapter 2: Backlight Getting Started with Backlights Parameter Computer Range Of Values Default Value NEO True / False False Workabout Pro Windows CE True / False False Workabout Pro Windows Mobile 2003 SE True / False False 1On Windows Mobile devices, reading the default value returns the Battery Power Backlight On-time value of 30000.
3 BATTERIES AND POWER MANAGEMENT BATTERIES AND POWER MANAGEMENT 3.1 3.2 3 Suspend Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Psion Power States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.3 Fully on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.4 Standby Mode (Unattended Mode) . . . . . . . . . . . . . . . . . . . . 3.2.5 Suspend Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.
Chapter 3: Batteries and Power Management Suspend Timeout 3.1 Suspend Timeout The suspend timeout determines how long the computer will wait after any activity (key press, scan, or touch screen event, or a wireless radio transmission) before it goes into suspend mode. When the computer wakes, the device returns to the normal powered state. The backlight, the display, and all peripheral devices turn on and the suspend timer begins counting again.
Chapter 3: Batteries and Power Management Psion Power States 3.2 Psion Power States 3.2.1 Suspend/resume Cycle On all Psion computers there is an intermediate state between fully on and suspend. The process—referred to as the suspend/resume cycle—is as follows: 3.2.
Chapter 3: Batteries and Power Management Suspend with Radio Off Mode (Shutdown Mode) 3.2.6 Suspend with Radio Off Mode (Shutdown Mode) In suspend with radio off mode the computer is in a power-saving state. When the computer is woken from this state, operation resumes within a few seconds continuing from where it stopped on suspend. On waking, all radios that were powered up, before entering suspend with radio off mode, are again powered up. Suspend with radio off mode does not occur automatically.
Chapter 3: Batteries and Power Management Manual Initiation of Standby and Suspend Psion Computer Workabout Pro G2 (7527) (Windows Mobile 6.1 Classic and Pro) Standby Press FN/BLUE, then press and hold ENTER, select Standby, then press ENTER. Note: Through the GUI, you can set an option that suspends the device when FN/BLUE then ENTER is pressed. Workabout Pro3 (7527) (Windows CE 5.0) Press and hold POWER, select Standby, then press ENTER.
Chapter 3: Batteries and Power Management Wake up from Suspend Mode, or Suspend With Radio Off Mode 3.4 Wake up from Suspend Mode, or Suspend With Radio Off Mode When one of the following occurs, a computer that is in suspend mode, or suspend with radio off mode, wakes up: • • • • • • The device is connected to external power. A USB peripheral is connected. The battery is inserted. The battery door is closed. The touch screen is touched.
Chapter 3: Batteries and Power Management Programmatic Control of the Suspend/resume Cycle Value Name Value Type Default Description DlgHideSuspend REG_DWORD 0 Controls display of the Suspend option. The following settings are possible: DlgHideSuspendRadiosOff DlgHideStandby DlgHideShutdown UseSuspendDialog REG_DWORD REG_DWORD REG_DWORD REG_DWORD 1 0 0 1 Value Description 0 Display 1 Hide Controls display of the Suspend with Radios Off option.
Chapter 3: Batteries and Power Management Accelerometer and Gyroscope The first time you enable a wakeup source programmatically, it may not bring the device into the fully on state. The device is in standby mode. For a code sample showing how to deal with this see: community.psion.com/downloads/developer_sdkhdk/m/sample__demo_code/34578.aspx. Usually, after Windows is restarted, an enabled wakeup source brings the device out of suspend mode into fully on. For details see Section 4.
Chapter 3: Batteries and Power Management Battery Information Java and .NET The following power state events are generated by the computer and can be detected by the Mobile Devices SDK. These events are used by Java and .
Chapter 3: Batteries and Power Management Smart Battery Registry Settings 3.11.2 Main Battery and Backup Battery Lifetimes and Remaining Charge The battery lifetime reported by the Mobile Devices SDK may not be accurate as various system configurations, power management settings, and the activity of various peripheral devices all affect the rate that charge is drained from the battery.
Chapter 3: Batteries and Power Management Getting Started with Power Management and Smart Batteries 3.13 Value Name Value Type Default Value ShowPopupOnResume REG_DWORD 1 The Battery Quality dialog appears whenever external power is connected or disconnected—the pop-up is limited to once per minute. This flag allows the pop-up to appear on resume as well. To disable this feature, set it to 0.
4 RESET RESET 4.1 4.2 4.3 4.4 4.5 4.6 Reset Types and Effects . . . . . . . . . . . . Manual Initiation of Resets . . . . . . . . . . Programmatic Initiation of Resets . . . . . . 4.3.1 Controlling Keyboard Resets . . . 4.3.2 Detecting and Identifying Resets Getting Started with Resets. . . . . . . . . . Code Samples for Resets . . . . . . . . . . . Reset API Elements . . . . . . . . . . . . . . 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 4: Reset Reset Types and Effects 4.1 Reset Types and Effects Table 4.1 Location of Operating System Files and Application Files Operating System Operating System Files Application Files Windows CE 5 RAM RAM Windows Mobile SE 2003 Flash Flash Windows Mobile 5.0 Flash Flash Windows Mobile 6.x Flash Flash Windows CE 6.0 Flash Flash Table 4.
Chapter 4: Reset Reset Types and Effects Reset A reset restarts the operating system. This replaces the warm reset available on earlier Psion computers. Registry settings, installed programs, and data files are preserved. Running applications are halted and unsaved data is lost. Flash content is preserved. RAM content is not preserved. The RAM Disk folder is not preserved. Reset is available on the following operating systems: • • • Windows Mobile 5.0 Windows Mobile 6.x Windows CE 6.
4.2 Manual Initiation of Resets Table 4.3 Methods for Resetting Psion Computers Using the Keyboard and Touchscreen Warm Reset Reset Cold Reset Hardware Reset Clean Start Tap Start > Shutdown > Warm Reset or Press and hold BLUE and ENTER for six seconds. Tap Start > Shutdown > Cold Reset or Press and hold Scan, BLUE and ENTER for six seconds. At BooSt menu, press &. Press and hold Scan, BLUE and ENTER for six seconds. At BooSt menu, press !. 8515 (Windows CE 5.
32 Workabout Pro G2 (7527) (Windows CE 5.0) Tap Start > Shutdown > Warm Reset or Press and hold FN/BLUE and ENTER for six seconds. Workabout Pro G2 (7527) (Windows Mobile 6.0, Windows Mobile 6.1) Workabout Pro3 (7527) (Windows CE 5.0) Cold Reset Tap Start > Shutdown > Cold Reset or Press and hold ORANGE, FN/BLUE and ENTER for six seconds. Press and hold FN/BLUE and ENTER for six seconds. Press and hold FN/BLUE and ENTER for six seconds. or Press and hold FN/BLUE and Power for six seconds.
Warm Reset Ikôn (7505) (Windows Mobile 6) Reset Press and hold BLUE and ENTER for six seconds. Cold Reset Hardware Reset Clean Start Press and hold Power, and ENTER for six seconds. Press and hold Left Scan, BLUE and ENTER for six seconds. At BooSt menu: • Alphabetic keyboard: Type .clean, then press ENTER • Numeric keyboard: Type .25326, then press ENTER. Tap Start > Shutdown > Warm Reset or Press and hold FN/BLUE and ENTER for six seconds.
Chapter 4: Reset Programmatic Initiation of Resets 4.3 Programmatic Initiation of Resets Warm reset, reset, and cold reset The Mobile Devices SDK includes APIs that can initiate these resets. WarmBoot: Initiates either a warm reset or a reset, whichever is available on the operating system of the device. ColdBoot: Initiates a cold reset. This is only available on Windows CE systems. Note: To restart Windows use WarmBoot. Warning: ColdBoot reinitializes all the hardware as well as restarting Windows.
Chapter 4: Reset Controlling Keyboard Resets 4.3.2 Detecting and Identifying Resets See the following article for instructions on programmatically identifying warm resets, cold resets, and clean starts after they have occurred: community.psion.com/knowledge/w/knowledgebase/1071.aspx 4.4 Getting Started with Resets For articles on Ingenuity Working that will guide you in getting started with working with resets see: community.psion.com/tags/reset/noteDG 4.
5 DISPLAY DISPLAY 5.1 5.2 5.3 5.4 Display . . . . . . . . . . . . . . . Getting Started with the Display Code Samples for the Display. . Display API Elements . . . . . . 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 5: Display Display 5.1 Display The Mobile Devices SDK provides functions that obtain information on the display hardware that cannot be easily obtained using standard features of the development languages. Display features are available as follows: Psion Computer Screen Size Number of Colours Touchscreen Type 7530 • • • • 240 pixels wide 320 pixels high ¼ VGA 3.5 in. diagonal 65536 Optional Reflective 7535 • • • • 240 pixels wide 320 pixels high ¼ VGA 3.5 in.
Chapter 5: Display Display Psion Computer Screen Size Number of Colours Touchscreen Type Omnii XT10 (7545XV) Omnii XT15 (7545XA) Omnii RT15 (7545XC) • • • • 480 pixels wide 640 pixels high VGA 3.7 in. diagonal 65536 Yes Reflective EP10 (7515) • • • • 480 pixels wide 640 pixels high VGA 3.7 in. diagonal 65536 Yes Reflective Refer to the user manuals for the computers for more information.
Chapter 5: Display Display API Elements 5.4 Display API Elements C++: Information concerning the display on all Psion Windows CE computers is retrieved using the PsionTeklogix::DisplayInformation namespace. Additional display details are obtained using the Windows CE User Interface Services GDI function GetDeviceCaps (). Java Information on the display hardware on all Psion Windows CE computers is retrieved using the com.teklogix.display package. .
6 INDICATORS INDICATORS 6.1 6.2 6.3 6.4 6.5 6.6 6.7 Indicators . . . . . . . . . . . . . . Using LED Colours . . . . . . . . . Controlling Pulses . . . . . . . . . Controlling Illumination Patterns. Getting Started with Indicators . . Code Samples for Indicators . . . Indicator API Elements . . . . . . 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 6: Indicators Indicators 6.1 Indicators Most Psion computers have a LED that can be controlled by applications. Typically, these are used to indicate device activity, data reception, data transmission, error conditions, alerts, and software updates. 6.2 Using LED Colours Each LED emits one or more colours. Some colours are built into the LED. Other colours are created by illuminating two or more built-in colours at the same time.
Chapter 6: Indicators Controlling Pulses 6.3 Controlling Pulses The following terms are used to describe the behaviour of a pulsing LED: Independent colour: On multi-colour LEDs, if the independent colour flag is set, this pulse can add to the colour being displayed by the LED. Extend current pulse: This feature only applies when the independent colour flag is also set.
7 KEYBOARD AND KEYBOARD REMAPPING KEYBOARD AND KEYBOARD REMAPPING 7.1 7.2 7.3 Keyboard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1.1 Supported Keyboards . . . . . . . . . . . . . . . . . . . 7.1.2 Disabling The Keyboard . . . . . . . . . . . . . . . . . . 7.1.3 Getting Started with Keyboards . . . . . . . . . . . . . 7.1.4 Code Samples for Keyboards. . . . . . . . . . . . . . . 7.1.5 Keyboard API Elements . . . . . . . . . . . . . . . . . . Keyboard Remapping . . . . . . . . .
Chapter 7: Keyboard and Keyboard Remapping Keyboard 7.1 Keyboard Microsoft Windows maintains a device-independent keyboard model that enables it to support a variety of keyboards. At the lowest level, each key on the keyboard generates a scan code when the key is pressed and released. The scan code is a hardware-dependent number that identifies the physical location of the key on the keyboard.
Chapter 7: Keyboard and Keyboard Remapping Disabling The Keyboard Computer Keyboard Description Strings 24 Key Keyboard Workabout Pro G1 (7525) 52 Key Keyboard 25 key 31 key 48 key Workabout Pro G2 (7527) & Workabout Pro G3 (7527) 52 key 55 key Unknown Long, 34 key, Alpha Sequence, Numeric Telephony, 12 Fn Long, 36 Key, Alpha Modified, Numeric Calculator, 12 Fn Long, 36 Key, Alpha Modified, Numeric Calculator, 12 Fn Rev1 Long, 36 Key, Alpha Modified, Numeric Calculator, 12 Fn Rev2 Long, 36 Key, Alpha
Chapter 7: Keyboard and Keyboard Remapping Keyboard Remapping 7.1.3 Getting Started with Keyboards For articles on Ingenuity Working that will guide you in getting started with working with keyboards see: community.psion.com/tags/keyboard/noteDG 7.1.4 Code Samples for Keyboards For postings on Ingenuity Working that contain code samples that use keyboards see: community.psion.com/tags/keyboard/codeDG 7.1.
Chapter 7: Keyboard and Keyboard Remapping ORANGE Key and SYM Key Scan code remapping enables applications to perform the following operations: • Create one or more scan code remappings for a scan code table. • Remove a scan code remapping from a scan code table. • Remove all scan code remappings from a scan code table. • Check to see if a particular scan code has been remapped. • Convert the table to a printable string.
Chapter 7: Keyboard and Keyboard Remapping Keyboard Remapping Functions on Psion Computers 7.2.2 Keyboard Remapping Functions on Psion Computers A function in keyboard remapping terminology is an operation that is performed when a particular scan code is generated by a key press. This operation may modify the virtual key code generated, or cause some other effect such as changing the backlight intensity.
Chapter 7: Keyboard and Keyboard Remapping Keyboard Remapping Functions on Psion Computers Function Description VolumeUp Each press of the remapped scan key increases the volume of the beeper/WAV device. This function also releases all one-shots that are set for the modifier keys. The virtual key is ignored. VolumeDown Each press of the remapped scan key decreases the volume of the beeper/WAV device. This function also releases all one-shots that are set for the modifier keys.
Chapter 7: Keyboard and Keyboard Remapping Unicode Values for Psion Proprietary Keys Function Description FunctionWindowsMobileKey The remapped scan key is associated with one of the following Windows Mobile virtual keys: • • • • • • • SendArrowKey VK_APP1 VK_APP2 VK_APP3 VK_APP4 VK_APP5 VK_APP6 VK_DONE When this function is selected, each press of an arrow key generates a virtual key code that depends on the orientation of the device in the vertical plane.
Chapter 7: Keyboard and Keyboard Remapping Unicode Values for Psion Proprietary Keys 56 Psion Key Unicode Value (Hexadecimal) F16 E010 F17 E011 F18 E012 F19 E013 F20 E014 F21 E015 F22 E016 F23 E017 F24 E018 F25 E019 F26 E01A F27 E01B F28 E01C F29 E01D F30 E01E ... ...
Chapter 7: Keyboard and Keyboard Remapping Unicode Values for Psion Proprietary Keys Psion Key Unicode Value (Hexadecimal) Reserved (Legacy 7030 or Internal use) E052 Reserved (Legacy 7030 or Internal use) E053 Reserved (Legacy 7030 or Internal use) E054 Macro 1 E055 Macro 2 E056 Macro 3 E057 Macro 4 E058 Macro 5 E059 Macro 6 E05A Macro 7 E05B Macro 8 E05C Macro 9 E05D Macro 10 E05E ... ...
Chapter 7: Keyboard and Keyboard Remapping Unicode Values for Psion Proprietary Keys 58 Psion Key Unicode Value (Hexadecimal) ANSI Smart Echo Suspend E087 TESS Reset E088 TESS Attention E089 TESS System Request E08A TESS Rollup E08B TESS Rolldown E08C TESS Help E08D TESS Print E08E TESS RBS E08F TESS PA1 E090 TESS PA2 E091 TESS PA3 E092 TESS Clear E093 TESS Test Request E094 TESS Session E095 TESS Host Reset E096 TESS Field Advance E097 TESS Field Backspace E098 TESS
Chapter 7: Keyboard and Keyboard Remapping Windows Mobile, and Windows CE, Virtual Keys 7.2.4 Windows Mobile, and Windows CE, Virtual Keys For information on virtual key codes on Windows Mobile, and Windows CE, systems see msdn.microsoft.com/en-us/library/bb431750.aspx 7.2.5 Windows Mobile Virtual Keys on Psion Computers Some virtual keys, that are available to applications running under Windows CE, are not passed onto applications by Windows Mobile systems.
Chapter 7: Keyboard and Keyboard Remapping Key Insertion API Elements Application Lock-Down Mode When an application is operating in lock-down mode, the Windows task bar is not visible. Normally, when a user is entering alpha characters on a computer with a numeric keyboard ([2ABC], [3DEF], etc.), the intermediate characters are displayed on the Windows task bar until the desired character is selected.
8 PERIPHERALS PERIPHERALS 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Definition of Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Docking Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tether Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Getting Started with Peripherals . . . . . . . . . .
Chapter 8: Peripherals Overview 8.1 Overview The Mobile Devices SDK enables applications to detect and control peripherals—such as docking stations, tethered devices, and cards inserted in card slots—attached to the following Psion computers: • 753x • 8515 • 8525 / 8530 • Workabout Pro (7525) • Workabout Pro G2 (7527) • Workabout Pro3 (7527) • Ikôn (7505) • NEO (PX750) Docking stations and card slots for the following Psion computers are controlled through the corresponding HDKs: • • • • 8.
Chapter 8: Peripherals Tether Ports 8.5 Tether Ports The Mobile Devices SDK can detect the type of peripheral device that is attached to the computer via an external tether port. It can also detect the attachment and removal of a tether port device.
Chapter 8: Peripherals Peripheral API Elements in the Hardware Development Kits (HDK) • Ikôn (7505) • NEO (PX750) C++: The peripherals are controlled using the PsionTeklogix::System::Peripherals namespace. Java: The peripherals are controlled using the com.teklogix.system package. .NET: The peripherals are controlled using the PsionTeklogix.Peripherals namespace. 8.
9 CARD SLOTS CARD SLOTS 9.1 9.1.1 Card Slots . . . . . . . . . . . . . . . . . . . . . . Controlling Power to the Card Slots . . . . . . . 9.1.1.1 Controlling Power Through the GUI . 9.1.1.2 Controlling Power Through the SDK 9.1.2 Getting Started with Card Slots . . . . . . . . . 9.1.3 Code Samples for Card Slots . . . . . . . . . . . 9.1.4 Card Slot Control API Elements . . . . . . . . . 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 9: Card Slots Card Slots 9.1 Card Slots The Mobile Devices SDK provides functions that control the power status of card slots. There are situations, such as in hospitals or airports, where it is necessary to temporarily prevent radios from transmitting. Using SDK functions to disable power to the card slot containing the radio achieves this. Most Psion hand-held and vehicle-mount computers have this feature available on all card slots; however, there are some exceptions.
Chapter 9: Card Slots Card Slots Card Slot Type SDK Hardware Name Software Control Of Power State Cards Accepted Compact Flash PCMCIA Slot0 Yes CF card PCMCIA PCMCIA Slot1 Yes PCMCIA card CF card in adaptor Workabout Pro Card Slot Type SDK Hardware Name Software Control Of Power State Cards Accepted SD-MMC SD-MMC Yes SD card (memory only) MMC card (memory only) CF PCMCIA Slot0 Yes CF card PCMCIA (upgradable on 100-pin connector) PCMCIA Slot13 Yes PCMCIA card 3On the WORKABOUT PR
Chapter 9: Card Slots Controlling Power to the Card Slots Workabout Pro Card Slot Type SDK Hardware Name Software Control Of Power State Cards Accepted SD-MMC SD-MMC Yes SD card (memory only) MMC card (memory only) CF PCMCIA Slot0 Yes CF card PCMCIA (upgradable on 100-pin connector) PCMCIA Slot13 Yes PCMCIA card 3 On the WORKABOUT PRO, when the PCMCIA slot is not installed, calls to the power state setting method for PCMCIA Slot1 throw an exception. 9.1.
Chapter 9: Card Slots Controlling Power to the Card Slots Querying the Power State When the power state of a card slot is queried, the result is interpreted as follows: • • • PowerState_Off — returned when there is no card in the card slot, or when there is a card in the slot and the card slot is powered down. PowerState_On — returned when there is a card in the slot and the card slot is powered on. PowerState_Unknown — returned when the power state of the slot cannot be determined.
10 SERIAL PORTS SERIAL PORTS 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.9 10.10 10.11 10.12 10 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Workabout Pro Serial Port Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7530, 7535, 8525, and 8530 Serial Port Assignments . . . . . . . . . . . . . . . . . . . . . . . . 8515 Serial Port Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 10: Serial Ports Overview 10.1 Overview Serial ports can be dynamically added to, and removed from, Psion computers. Also, on some computers, serial ports can change their physical location. COM ports may be associated with actual physical serial ports, or they may be assigned to a device that acts like a serial port, such as an IrDA port, a USB port, or a Bluetooth device. Serial ports can appear on (attach), or disappear from (detach), a Psion computer dynamically.
Chapter 10: Serial Ports 7530, 7535, 8525, and 8530 Serial Port Assignments Workabout Pro G2 and Workabout Pro3: All ports up to COM99 are available. Serial ports on computers with user-accessible cards are assigned dynamically—at the lowest available COM port number—as the cards are inserted and removed. On the Workabout Pro G2, the maximum baud rate is 921.6 k baud if RTS/CTS hardware flow control is enabled. Psion Serial Endcaps Psion supplies endcaps with serial ports for the Workabout Pro G2 computer.
Chapter 10: Serial Ports NEO Serial Port Assignments Serial Port Default Assignment COM6 RS-232 port A on port replicator. COM7 Bluetooth Command Interpreter (blocked). COM9 UMTS and GSM COM22 Internal Bluetooth radio. COM23 Internal scanner. This port is not visible to the SDK. No ports can be reassigned on this computer. 10.6 NEO Serial Port Assignments Table 10.4 Default NEO Serial Port Assignment Serial Port Default Assignment COM3 Console port (RX and TX data only).
Chapter 10: Serial Ports EP10 (7515) Serial Port Assignments Serial Port Default Assignment COM32 Expansion UART3. COM33 Internal scanner port. Note 1: Pin-9 on COM6: provides power, at 5 V DC and 1 amp, to peripherals plugged into this port on snap module (ST4005) and on vehicle cradle (ST1002). Power to Pin-9 can be enable and subsequently switched on and off using the GUI Scanners applet. No ports can be reassigned on this computer. 10.8 EP10 (7515) Serial Port Assignments Table 10.
Chapter 10: Serial Ports Serial Port API Elements 10.11 Code Samples for Serial Ports For postings on Ingenuity Working that contain code samples that control serial ports see: community.psion.com/tags/serial ports/codeDG 10.12 Serial Port API Elements C++: Serial port information on all Psion computers is obtained, and serial input/output is enabled, using the standard Win32 API serial communications subset that is available for Windows. For information see: • Windows CE and Windows Embedded: msdn.
11 PERMANENT STORAGE PERMANENT STORAGE 11.1 11.2 11.3 11.4 11.5 Permanent Storage . . . . . . . . . . . . . Locking Permanent Storage . . . . . . . . Getting Started with Permanent Storage . Code Samples for Permanent Storage . . Permanent Storage API Elements . . . . . 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 11: Permanent Storage Permanent Storage 11.1 Permanent Storage A small amount of permanent storage is provided on some Psion computers. This storage is accessible through the Mobile Devices SDK, but is not accessible through the GUI. Data stored in permanent storage persists across power failure, all types of reset, and through clean starts.
12 RAS (REMOTE ACCESS SERVICE) RAS (REMOTE ACCESS SERVICE) 12.1 12.2 12.3 12.4 12.5 12.6 12.7 12 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Support for RAS and Windows Connection Manager on Psion Computers RAS Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAS on Windows Mobile (Connection Manager) . . . . . . . . . . . . . . . . Getting Started with RAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 12: RAS (Remote Access Service) Overview 12.1 Overview A computer running one of the following operating systems can function as a RAS server that allows clients to connect to it using a WAN connection: • Windows Mobile 2003 SE • Windows CE .NET 4.2 • Windows CE 5.0 • Windows Embedded CE 6.0 You can use RAS in any computing environment that has a wide area network (WAN) or a virtual private network (VPN).
Chapter 12: RAS (Remote Access Service) RAS Architecture 12.3 Supports RAS Supports Windows Connection Manager Computer Operating System Omnii XT10 (7545XV) Windows Embedded CE 6.0 Yes Omnii XT15 (7545XA) Windows Embedded CE 6.0 Yes Omnii XT15 (7545XA) Windows Embedded Hand-Held 6.5 Omnii RT15 (7545XC) Windows Embedded CE 6.0 Omnii RT15 (7545XC) Windows Embedded Hand-Held 6.5 Yes EP10 (7515) Windows Embedded Hand-Held 6.
Chapter 12: RAS (Remote Access Service) RAS API Elements 12.7 RAS API Elements C++: The RAS server on all Psion computers is controlled using the Microsoft RAS Win32 APIs. Java: The RAS server on all Psion computers is controlled using the com.teklogix.ras package. .NET: The RAS server on all Psion computers is controlled using the PsionTeklogix.RAS namespace.
13 SCANNERS SCANNERS 13.1 13.2 Types Of Scanners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . External Scanners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.2.1 Scanner connected to a USB port . . . . . . . . . . . . . . . . 13.2.2 Scanner connected to a serial port . . . . . . . . . . . . . . . 13.2.3 Scanner Connected To The Tether Port By A Scanner Cable 13.2.4 Scanner Connected To The Tether Port By A Tether Cable . 13.2.5 Querying an External Scanner . . . . . .
13.6.32 Postal - PlaNET Settings . . 13.6.33 Postal - PostNET Settings. . 13.6.34 Postal - Australian Settings. 13.6.35 Postal - Canadian Settings . 13.6.36 Postal - Japanese Settings . 13.6.37 Postal - Kix Settings . . . . . 13.6.38 Postal - Korean Settings. . . 13.6.39 Postal - Royal Settings. . . . 13.6.40 Postal - China Settings . . . 13.7 Reading Bar Codes . . . . . . . . . . . . 13.7.1 Initiating a Bar Code Scan . 13.7.2 Controlling a Bar Code Scan 13.8 Scanner Events . . . . . . . . . . . . . .
Chapter 13: Scanners Types Of Scanners 13.1 Types Of Scanners The Mobile Devices SDK enables applications to use the Psion Scanner Services. Scanner Services supports the following types of bar code scanner: • Non-decoded Laser Scanners • Decoded Laser Scanners • 1D imagers • 2D imagers (for legacy applications only, see Section below) For a list of the scanners supported by your Psion computer, see the user manual for the computer.
Chapter 13: Scanners Scanner connected to a serial port 13.2.2 Scanner connected to a serial port The serial port on some Psion computers has power available on pin 9. See the user manual for your computer to find out if this is available. If power is available on pin 9, you must check that the current and voltage are suitable for powering your scanner. Scanner Services controls the serial port Decoded or non-decoded scanners.
Chapter 13: Scanners Querying an External Scanner Scanner Services controls the serial port when the serial port is enabled on the Ports tab of the GUI Scanners applet. This cannot be done using the Mobile Devices SDK. Bar codes can be read and processed by the Mobile Devices SDK using: • • • C++: PsionTeklogix::Scanner namespace. Java: com.teklogix.scanner package. .NET: PsionTeklogix.Barcode namespace. Tether port behaving as a serial port Decoded scanners only.
Chapter 13: Scanners Internal Scanners 96 Scanner Text Configure as...
Chapter 13: Scanners Symbologies Scanner Text Configure as... Notes Unknown No Internal None 13.4 Symbologies 1D Bar codes represent data in the widths and the spacings of parallel lines. Although 2D systems use symbols other than bars, they are generally referred to as bar codes as well. Symbologies are the rules for encoding the data in bar codes. There are many standard symbologies. Each is preferred for certain types of applications.
Symbol 1223 Symbol 923 Symbol 1224 Symbol 1524 Symbol 2223 Symbol 995 No Yes No No No Yes No EV15 only Yes PDF417 No Yes No No No Yes No EV15 only Yes MSI Plessey Yes No Yes Yes Yes Yes Yes Yes Yes PosiCode No No No No No No No No Yes Postal: Australian No Deprecated No No No No No No Yes Postal: Canadian No Deprecated No No No No No No Yes Postal: Chinese No No No No No No No No Yes Postal: Japanese No Deprecated No No No No N
Chapter 13: Scanners Configuring Using an SDK Application Internal scanners Scanner settings are configured using the Scanners applet in the GUI. Refer to the user manual for the Psion computer for instructions. Most GUI settings can also be configured by an application using the SDK. The most recently set value, from either source, applies. The SDK cannot set the Translations values, or the Ports settings. External scanners You cannot configure external decoded scanners using the GUI Scanners applet.
Chapter 13: Scanners Configuring Scanners Through the Mobile Devices SDK Intermec scanners EV15 & E1022 The configuration bar codes are generated by Easyset. The EV15 configuration bar codes are also used to configure the E1022. Download the latest version of the Easyset setup software as follows: 1. 2. Navigate to the Intermec website at: http://www.intermec.com/products/scanev15/index.aspx Select the Downloads tab.
Chapter 13: Scanners Configuring Scanners Through the Mobile Devices SDK The following .NET code sample illustrates how to get and set scanner variables using the setting key/name methods, and also illustrates how to create a list of all scanner setting index and key/name pairs. // Create an instance of a ScannerServicesDriver object PsionTeklogix.Barcode.ScannerServices.ScannerServicesDriver myScanner = new PsionTeklogix.Barcode.ScannerServices.
102 Configuring Scanner Properties The following scanner behaviours can be configured using the Mobile Devices SDK: • • • • Double-click settings Display settings Beep settings Logging settings Double-click settings A keyboard key and/or a grip trigger can be registered as the trigger for an internal scanner. See Section 7.2 Keyboard Remapping on page 51 for information on how to do this. The double-click time for the trigger associated with the scanner is set as described in this section.
Minimum Maximum Default Values GUI Name Result Time 0s 20 s 0s Scan Result Time Scan Good Beep 0 = off 1 = on 1 Good Scan Beep Scan Failed Beep 0 = off 1 = on 1 Bad Scan Beep Multiple Beep Tones1 0 = off 1 = on 0 Multiple Beep Tones Good Scan Vibrates 0 = off 1 = on 0 Good Scan Vibrates Number of Vibrates for Good Scan 1 3 1 Number of Vibrates Duration of Vibrate for Good Scan 100 ms 600 ms 300 ms Duration of Vibrate Pause between Vibrates for Good Scan 50 ms 200 ms
104 Scanner Setting Name Minimum Maximum Default Values GUI Name Aiming Mode (deprecated) 0 2 0 0 = 0 ms 1 = 200 ms 2 = 400 ms Dot Time Aim Duration 0 30 0 Aim Duration Laser On Time 5 99 50 Laser On Time Continuous Scan1 0 = off 1 = on 0 Continuous Scan Mode Scan Method2 0 4 0 Minimum Cancel Time 0 ms 500 ms 0 ms Power Mode 0 1 1 0 = Con ti nous power 1 = Low power Power Mode Time Delay To Low Power 0 3 0 0 = 30 s 1 = 60 s 2 = 120 s 3 = 180 s Low Power Timeout
Scanner Setting Name Minimum Maximum Default Values GUI Name Scan Data Transmission Format 0 7 0 0 = data (as is) 1 = data 2 = data 3 = data 4 = data 5 =
data 6 = data 7 = data Scan Data Format Prefix 0 0xFF 0 Prefix Suffix 1 0 0xFF 13 Suffix Suffix 2 0 0xFF 10 Suffix Delete Character Set ECIs 0 = off 1 = on 0 Delete Char Set ECIs ECI Decoder 0 = off 1 = on 0 ECI Decoder Note 1: Omnii only.
106 Minimum Maximum Default Values GUI Name Add AIM ID prefix 1 2 1 1 = Disabled 2 = Enabled Add AIM ID Prefix Aiming Beam 0 3 0 0 = Disabled 1 = Enabled 2 = Toggle 3 = Toggle reverse Aiming Beam Aim Duration 0 ms 2550 ms 500 ms Scanner Setting Name Minimum Maximum Default Laser On Time 1s 10 s 4s ContinuousScan 0 = off 1 = on 0 Minimum Cancel Time 0 ms 500 ms 300 ms Time Delay to Low Power 30 s 180 s 30 s Add AIM ID prefix 0 = off 1 = on 0 Prefix Exception 1 0
Minimum Maximum Default TekImager Enabled2 0 = off 1 = on 1 TekImager Enabled ContinuousScanMode2 0 = off 1 = on 0 Continuous Scan Mode OnlyDecodeCenter 0 = off 1 = on 0 Center Barcode Only MaxNumberBarcodes 1 6 1 Max Number Barcodes MinNumberBarcodes 1 6 1 Barcodes Must Decode WindowWidth2 128 1280 900 Window Width WindowHeight2 128 1024 500 Window Height Dot Time2 0 ms 3000 ms 0 ms Dot Time AutoExposure2 0 = off 1 = on 1 Auto Exposure FastConverge2 0 = off
108 Code 39 Settings All Scanner Types Scanner setting key = Barcode\C39\Scs Scanner Setting Name Minimum Maximum Default GUI Name Field Size 0 1400 0 Field Size Minimum Size 0 1400 0 Minimum Size Maximum Size 0 1400 0 Maximum Size Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing Non-decoded Laser Scanner Scanner setting key = Barcode\C39 Scanner Setting Name Minimum Maxim
Scanner Setting Name Minimum Maximum Default GUI Name Convert to Code 32 0 = off 1 = on 0 Convert to Code 32 Code 32 Prefix 0 = off 1 = on 1 Code 32 Prefix Length L1 0 55 1 Set Length L1 Length L2 0 55 55 Set Length L2 Check Digit Verification 0 = off 1 = on 0 Check Digit Verification Transmit Check Digit 0 = off 1 = on 0 Transmit Check Digit Full Ascii Conversion 0 = off 1 = on 0 Full ASCII Decode Performance 0 = off 1 = on 1 Decode Performance Decode Performanc
110 Psion Mobile Devices Developers Guide Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Start Stop Char 0 = off 1 = on 0 Start/Stop Transmit Check Char 0 2 0 Check Char Length Min 0 48 0 Minimum Length Length Max 0 48 48 Maximum Length Append 0 = off 1 = on 0 Append Pharmaceutical 0 = off 1 = on 0 Pharmaceutical Full Ascii 0 = off 1 = on 0 Full ASCII Chapter 13: Scanners Trioptic Code Settings 5x80 Imager Scanner setting
Scanner Setting Key Barcode\Trioptic\HHP 13.6.
112 Scanner Setting Name Minimum Maximum Default Value GUI Name Enabled 0 = off 1 = on 1 Enabled UCC EAN 128 0 = off 1 = on 1 Enable GS1-128/GS1 US ISBT 128 0 = off 1 = on 0 Enable ISBT 128 Decode Performance2 0 = off 1 = on 1 Decode Performance Decode Performance Level2 1 3 1 Decode Perf. Level Note 2: All Psion computers except Omnii.
5x80 Imager Scanner setting key = Bacode\C128\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled ISBT Concatenation 0 = off 1 = on 0 ISBT Concatenation Length Min 0 80 0 Minimum Length Length Max 0 80 80 Maximum Length Imager Scanner setting key = Bacode\C128\Imager 13.6.
114 Minimum Maximum Default Values GUI Name Addendum 0 2 0 0 = Disabled 1 = Optional 2 = Required Addendum Transmit Code ID Character 0 = off 1 = on 0 Transmit Code ID Char Decoded Laser Scanner Scanner setting key = Barcode\EAN13\Decoded Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled EV15 1D Imager And E1022 1D Imager Scanner setting key = Barcode\EAN13\ICSP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on
Imager Scanner setting key = Barcode\EAN13\Imager Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Addendum2 0 2 0 Addendum 2 Digit Addendum1 0 = off 1 = on 0 Not available in the Scanners applet 5 Digit Addendum1 0 = off 1 = on 0 Not available in the Scanners applet Addendum Required1 0 = off 1 = on 0 Not available in the Scanners applet Note 1: Omnii only. Note 2: All Psion computers except Omnii. 13.6.
116 Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled EAN8 Zero Extend 0 = off 1 = on 0 EAN-8 Zero Extend EV15 1D Imager And E1022 1D Imager Scanner setting key = Barcode\EAN8\ICSP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Transmit Check Digit 0 = off 1 = on 1 Transmit Check Digit Transmit as EAN-13 0 = off 1 = on 0 Convert to EAN 13 5x80 Imager Scanner setting key = Barcode\EAN8\HHP Scanner
Scanner Setting Name Minimum Maximum Default GUI Name 5 Digit Addendum1 0 = off 1 = on 0 Not available in the Scanners applet Addendum Required1 0 = off 1 = on 0 Not available in the Scanners applet Note 1: Omnii only. Note 2: All Psion computers except Omnii. 13.6.
118 Scanner Setting Name Minimum Maximum Default Values Enabled 0 = off 1 = on 1 Enabled UPCA Transmit Check Digit 0 = off 1 = on 1 UPC-A Check Digit UPCA Preamble 0 2 1 0 = None 1 = System char 2 = Country code and system char EV15 1D Imager And E1022 1D Imager Scanner setting key = Barcode\UPCA\ICSP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Transmit Check Digit 0 = off 1 = on 1 Transmit Check Digit Transmit Number System 0 =
Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Addendum2 0 2 0 Addendum 2 Digit Addendum1 0 = off 1 = on 0 Not available in the Scanners applet 5 Digit Addendum1 0 = off 1 = on 0 Not available in the Scanners applet Addendum Required1 0 = off 1 = on 0 Not available in the Scanners applet Note 1: Omnii only. Note 2: All Psion computers except Omnii. 13.6.
120 Scanner Setting Name Minimum Maximum Default Values UPCE Enabled 0 = off 1 = on 1 Enable UPC-E UPCE1 Enabled 0 = off 1 = on 0 Enable UPC-E1 UPCE Transmit Check Digit 0 = off 1 = on 1 UPC-E Check Digit UPCE1 Transmit Check Digit 0 = off 1 = on 1 UPC-E1 Check Digit UPCE Preamble 0 2 1 0 = None 1 = System char 2 = Country code and system char UPC-E Preamble UPCE1 Preamble 0 2 1 0 = None 1 = System char 2 = Country code and system char UPC-E1 Preamble Convert UPCE to UPC
Scanner Setting Name Minimum Maximum Default GUI Name Expand 0 = off 1 = on 0 Expand Check Digit 0 = off 1 = on 1 Check Digit Number System 0 = off 1 = on 1 Transmit Number System 2 Digit Addendum 0 = off 1 = on 0 Addendum Add-on 2 5 Digit Addendum 0 = off 1 = on 0 Addendum Add-on 5 Addendum Required 0 = off 1 = on 0 Addendum Required Addendum Separator 0 = off 1 = on 1 Addendum Separator Imager Scanner setting key = Barcode\UPCE\Imager Scanner Setting Name Minimum
122 Scanner Setting Name Minimum Maximum Default Values GUI Name Bookland Enabled 0 = off 1 = on 0 Supplementals 0 2 0 Supplemental Redundancy 2 20 20 Supp.
13.6.
124 Scanner Setting Name Minimum Maximum Default Values GUI Name Enabled 0 = off 1 = on 0 Start Stop Transmission 0 4 0 CLSI Library System 0 = off 1 = on 0 CLSI Library System Check Digit Verification 0 = off 1 = on 0 Check Digit Verification Transmit Check Digit 0 = off 1 = on 0 Transmit Check Digit Length L1 0 255 6 Set Length L1 Length L2 0 255 0 Set Length L2 Length L3 0 255 0 Set Length L3 Length Mode 0 1 0 0 = L1 minimum length 1 = L2, L3, L4 fixed leng
Imager Scanner Setting Key: Barcode\CDB\Imager 13.6.
126 Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Length L1 0 255 1 Set Length L1 5x80 Imager Scanner Setting Key: Barcode\C93\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Length Min 0 80 0 Minimum Length Length Max 0 80 80 Maximum Length Imager Scanner Setting Key: Barcode\C93\Imager Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Chapter
13.6.
128 13.6.
Scanner Setting Name Minimum Maximum Default GUI Name Include Chk 0 = off 1 = on 0 Include Check Transmit Code ID Character 0 = off 1 = on 0 Transmit Code ID Char Decoded Laser Scanner Scanner Setting Key: Barcode\I25\Decoded Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Length L1 0 14 14 Set Length L1 Length L2 0 14 0 Set Length L2 Check Digit Verification 0 = off 1 = on 0 Check Digit Verification Transmit Check Digit 0 = off
130 Scanner Setting Name Minimum Maximum Default Values GUI Name Enabled 0 = off 1 = on 0 Check Digit 0 2 0 Length Min 2 80 4 Minimum Length Length Max 2 80 80 Maximum Length Enabled 0 = None 1 = Validate only 2 = Validate transmit Imager Scanner Setting Key: Barcode\I25\Imager Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Check Digit Verification 0 = off 1 = on 0 Check Digit Verification Include Check 0 = off 1 = on 0 Incl
13.6.
132 Minimum Maximum Default Values GUI Name Transmit Check Digit 0 = off 1 = on 0 Check Digit Algorithm 0 1 1 0 = MOD 10/ MOD 11 1 = MOD 10/ MOD 10 Check Digit Algorithm Values GUI Name Transmit Check Digit EV15 1D Imager and E1022 1D Imager Scanner Setting Key: Barcode\MSI\ICSP Scanner Setting Name Minimum Maximum Default Enabled 0 = off 1 = on 0 Enabled Plessey Enabled1 0 = off 1 = on 0 Enable Plessey Check Digit Verification 1 2 2 Transmit Check Digit 0 = off 1 = on
13.6.
134 Discrete 2 of 5 Settings All Scanner Types Scanner Setting Key: Barcode\D25\Scs Scanner Setting Name Minimum Maximum Default GUI Name Field Size 0 1400 0 Field Size Minimum Size 0 1400 0 Minimum Size Maximum Size 0 1400 0 Maximum Size Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing Non-decoded Laser Scanner Scanner Setting Key: Barcode\D25 Scanner Setting Name Minimum
EV15 1D Imager and E1022 1D Imager Scanner Setting Key: Barcode\D25\ICSP Scanner Setting Name Minimum Maximum Default Values GUI Name Enabled 0 = off 1 = on 0 Standard 2 of 5 Format 0 1 0 0 = Identicaon 1 = Computer identics Standard 2 of 5 Format Check Digit Verification 0 1 0 0 = Disabled 1 = MOD 10 check Check Digit Verification Transmit Check Digit 0 = off 1 = on 0 Transmit Check Digit Length L1 0 255 6 Set Length L1 Length L2 0 255 0 Set Length L2 Length L3 0 255
136 Minimum Maximum Default GUI Name Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing Non-decoded Laser Scanner Scanner Setting Key: Barcode\IATA25 Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Mod Chk Base 0 = off 1 = on 0 MOD 10 Check ItfChk 0 = off 1 = on 0 ITF Check Include Chk 0 = off 1 = on 0 Include Check Transmit Code
Scanner Setting Name Minimum Maximum Default GUI Name Maximum Size 0 1400 0 Maximum Size Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing Values EV15 1D Imager And E1022 1D Imager Scanner Setting Key: Barcode\Telepen\ICSP Scanner Setting Name Minimum Maximum Default Enabled 0 = off 1 = on 0 Format 0 1 0 Length L1 0 255 0 GUI Name Enabled 0 = ASCII 1 = Numeric Format
138 RSS Code Settings & GS1 DataBar Settings All Scanner Types Scanner Setting Key: Barcode\RSSCode\Scs Scanner Setting Name Minimum Maximum Default GUI Name Field Size 0 1400 0 Field Size Minimum Size 0 1400 0 Minimum Size Maximum Size 0 1400 0 Maximum Size Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing Decoded Laser Scanner Scanner Setting Key: Barcode\RSSCode\Decoded Sc
5x80 Imager Scanner Setting Key: Barcode\RSSCode\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled2 0 = off 1 = on 1 Enabled RSS Limited Enabled2 0 = off 1 = on 1 Enable RSS Limited RSS Expanded Enabled2 0 = off 1 = on 1 Enable RSS Expanded RSS Expanded Length Min2 4 74 4 Minimum Length RSS Expanded Length Max2 4 74 74 Maximum Length GS1 DataBar Omni Enabled1 0 = off 1 = on 1 Not available in the Scanners applet GS1 DataBar Limited Enabled1 0 = off 1 = on
140 13.6.
Scanner Setting Name Minimum Maximum Default GUI Name CC-AB Enabled2 0 = off 1 = on 0 Enable CC-AB TLC-39 Enabled2 0 = off 1 = on 0 Enable TLC-39 Values Note 2: All Psion computers except Omnii.
142 TLC-39 Settings All Scanner Types Scanner Setting Key: Barcode\TLC39\Scs Scanner Setting Name Minimum Maximum Default GUI Name Field Size 0 1400 0 Field Size Minimum Size 0 1400 0 Minimum Size Maximum Size 0 1400 0 Maximum Size Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing EV15 1D Imager and E1022 1D Imager Scanner Setting Key: Barcode\TLC39\ICSP Scanner Setting Name
13.6.
144 13.6.
5x80 Imager Scanner Setting Key: Barcode\MicroPDF417\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Length Min 1 366 1 Minimum Length Length Max 1 366 366 Maximum Length Imager Scanner Setting Key: Barcode\MicroPDF417\Imager 13.6.
146 Code 49 Settings 5x80 Imager Scanner Setting Key Scanner Setting Name Minimum Maximum Default GUI Name Barcode\C49\Scs Field Size 0 1400 0 Field Size Minimum Size 0 1400 0 Minimum Size Maximum Size 0 1400 0 Maximum Size Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing Enabled 0 = off 1 = on 0 Enabled Length Min 1 81 1 Minimum Length Length Max 1 81 81 Max
EV15 1D Imager And E1022 1D Imager Scanner Setting Key: Barcode\Codablock\ICSP Scanner Setting Name Minimum Maximum Default GUI Name Codablock A Enabled 0 = off 1 = on 0 Enable Codablock A Codablock F Enabled 0 = off 1 = on 0 Enable Codablock F 5x80 Imager Scanner Setting Key: Barcode\Codablock\HHP 13.6.
148 Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Length Min 1 1500 1 Minimum Length Length Max 1 1500 1500 Maximum Length Imager (Deprecated) Scanner Setting Key: Barcode\DataMatrix\Imager 13.6.
5x80 Imager Scanner Setting Key: Barcode\QRCode\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Length Min 1 3500 1 Minimum Length Length Max 1 3500 3500 Maximum Length Imager (Deprecated) Scanner Setting Key: Barcode\QRCode\Imager Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Inverse Video Mode2 0 = off 1 = on 0 Inverse Video Mode Note 2: All Psion computers except Omnii. 13.6.
150 Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 1 Enabled Length Min 1 150 1 Minimum Length Length Max 1 150 150 Maximum Length Imager (Deprecated) Scanner Setting Key: Barcode\MaxiCode\Imager 13.6.
Scanner Setting Name Minimum Maximum Default GUI Name Length Min 1 3750 1 Minimum Length Length Max 1 3750 3750 Maximum Length Imager (Deprecated) Scanner Setting Key: Barcode\Aztec\Imager 13.6.
152 13.6.
13.6.
154 Minimum Maximum Default GUI Name Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing 5x80 Imager Scanner Setting Key: Barcode\PostalCdn\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Imager (Deprecated) Scanner Setting Key: Barcode\PostalCdn\Imager 13.6.
5x80 Imager Scanner Setting Key: Barcode\PostalJap\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled 0 = off 1 = on 0 Enabled Imager (Deprecated) Scanner Setting Key: Barcode\PostalJap\Imager 13.6.
156 13.6.
13.6.
158 Minimum Maximum Default GUI Name Prefix Char 0 0xFFFF 0 Prefix Char Suffix Char 0 0xFFFF 0 Suffix Char Strip Leading 0 127 0 Strip Leading Strip Trailing 0 127 0 Strip Trailing 5x80 Imager Scanner Setting Key: Barcode\PostalChn\HHP Scanner Setting Name Minimum Maximum Default GUI Name Enabled1 0 = off 1 = on 0 Enabled 1 Length Min 2 80 4 Not available in the Scanners applet Length Max1 2 80 80 Not available in the Scanners applet Note 1: Omnii only.
Chapter 13: Scanners Reading Bar Codes 13.7 Reading Bar Codes 13.7.1 Initiating a Bar Code Scan A bar code scan is initiated for an internal scanner by one of the following: • Pressing the keyboard key that is configured as the scanner trigger. • Using the Scan method, in the Scanner API, of the Mobile Devices SDK. A bar code scan is initiated for an external scanner as follows: • 13.7.2 Pressing the trigger on the pistol grip of the external scanner.
Chapter 13: Scanners Scanner Events Figure 13.2 Software Initiated Scanner Timing Sequence Time Scan beam on time Dot time Typically 0.5 sec. Scan initiated Soft Scan Timeout There are four possible outcomes for a bar code scan: • The scan is successful. • The scan times out. • The scan is cancelled. • The scan fails. The scan is successful: The bar code is scanned and decoded before the scanner trigger is released.
14 AUDIO AUDIO 14.1 14.2 14.3 14.4 14.5 14.6 14.7 14.8 Sound Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . Playing Beeps Using the Mobile Devices SDK . . . . . . . . . . . Playing WAV Audio Format Files Using the Mobile Devices SDK. Getting Started with the Beeper and WAV Files . . . . . . . . . . Code Samples for the Beeper and WAV Files . . . . . . . . . . . . Sound API Elements . . . . . . . . . . . . . . . . . . . . . . . . . . Microphone . . . . . . . . . . . . . . . . . . . . .
Chapter 14: Audio Sound Hardware 14.1 Sound Hardware Psion computers can have beepers and/or speakers. Beepers, which are capable of providing louder sounds than speakers, are useful in environments with high background noise levels. Speakers play waveform audio. Beepers and speakers are available as follows: Computer 14.
Chapter 14: Audio Getting Started with the Beeper and WAV Files • A system sound. • Waveform audio data contained in memory. The following options are available when a WAV file is played: • • • Asynchronous—the sound is played asynchronously and the call returns immediately after beginning the sound. To terminate an asynchronously played waveform sound before it is complete, either another waveform sound must be started, or a call must be made to an API element that stops the playing of sounds.
Chapter 14: Audio Microphone Playing WAV files C++: The playing of WAV files is controlled using the PsionTeklogix::Sound namespace, the Microsoft Win32 APIs, or any other standard C++ WAV APIs. Java: The playing of WAV files is controlled using the com.teklogix.sound package or any other standard Java WAV package. .NET: The playing of WAV files is controlled using the PsionTeklogix.Sound namespace, any other standard .NET WAV APIs. 14.
Chapter 14: Audio Audio Input API Elements 14.9 Audio Input API Elements C++: Audio input is controlled using the Microsoft Win32 APIs, or any other standard C++ audio APIs. Java: Audio input is controlled using any standard Java Audio package. .NET: Audio input is controlled using any standard .NET Audio APIs.
15 SYSTEM INFORMATION SYSTEM INFORMATION 15.1 15.2 15.3 15.4 15.5 15.6 15.7 15.8 15.9 15.10 System Information . . . . . . . . . . . . . . . . . . . . . . . Machine Type . . . . . . . . . . . . . . . . . . . . . . . . . . . Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Unique Machine Identifier . . . . . . . . . . . . . . . . . . . . Psion Build Codes. . . . . . . . . . . . . . . . . . . . . . . . . Psion Version Numbers . . . . . . . . . . . . . . . . . . . . .
Chapter 15: System Information System Information 15.1 System Information The Mobile Devices SDK provides Psion-specific hardware and configuration information. All information, that can be obtained using the System Properties applet on the GUI of your Psion computer, can be obtained as a name/value pair by querying the Mobile Devices SDK. 15.2 Machine Type The machine type is one of the following strings: • • • • • • • • • 15.
Chapter 15: System Information Psion Version Numbers • Ikôn (7505) • NEO (PX750) These codes are constructed as follows: 1. [A-L]—a single letter representing the month of the year from January to December. 2. [01-31]—a two-digit number representing the day of the month. 3. [0-9]—a single digit representing the year. 4. [a-x]—a single letter representing the hour when the software was built. e.g.
Chapter 15: System Information System Information API Elements 15.9 Code Samples for System Information For postings on Ingenuity Working that contain code samples that use system information see: community.psion.com/tags/system/codeDG 15.10 System Information API Elements C++: The system information on all Psion Windows CE computers is accessed using the PsionTeklogix::System::SystemInformation namespace.
16 WINDOWS SHELL WINDOWS SHELL 16.1 16.2 16.3 16.4 16.5 Windows Shell . . . . . . . . . . . . . . . . . Setting Windows Security . . . . . . . . . . Enabling and Disabling the Windows Shell Security Level Change Event . . . . . . . . System Security API Elements . . . . . . . 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 16: Windows Shell Windows Shell 16.1 Windows Shell On Psion computers, the user’s level of access to the Windows shell can be restricted to prevent access to unnecessary or potentially harmful aspects of the system. On Omnii and the EP10 this feature has been replaced by PsionVU. For information see Section 23.3 PsionVU on page 254. The following Windows shell features can be set and queried by the Mobile Devices SDK: • • 16.
17 TRIGGER CONTROL TRIGGER CONTROL 17.1 17.2 17.3 17.4 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . Definition Of Terms. . . . . . . . . . . . . . . . . . . . . . Trigger Consumer Registration. . . . . . . . . . . . . . . Trigger Source IDs . . . . . . . . . . . . . . . . . . . . . . 17.4.1 Virtual Key Codes . . . . . . . . . . . . . . . . 17.5 Trigger Associations . . . . . . . . . . . . . . . . . . . . . 17.5.1 Trigger Control Flags . . . . . . . . . . . . . . 17.6 Double-Clicks .
Chapter 17: Trigger Control Overview 17.1 Overview All Psion computers have one or more keyboard [SCAN] buttons, some have [SCAN] buttons on the side, and some have the option for a pistol grip trigger. Usually, these buttons are all used to initiate a bar code scan or an RFID read cycle. The Mobile Devices SDK allows you to select any keyboard key or the pistol grip trigger as the means of controlling hardware activity. Ownership of the trigger mechanisms can be defined in the Mobile Devices SDK.
Chapter 17: Trigger Control Virtual Key Codes 17.4.1 Virtual Key Codes See the following for a list of virtual key codes: C++: PsionTeklogix::Keyboard::Key enumeration Java: com.teklogix.keyboard.VirtualKey class .NET: PsionTeklogix.Keyboard.Key enumeration 17.5 Trigger Associations In order to receive trigger events, a trigger consumer must be associated with one or more trigger sources. Some hardware components should not be operated simultaneously, due to their heavy power consumption.
Chapter 17: Trigger Control Events between the trigger presses if a double-click event is to be generated. The default double-click time is 0 (zero). A double-click event is generated when both the following are true: • A trigger source is pressed and released within ½ the configured double-click time, and • The trigger source is pressed a second time before the double-click time expires. Each trigger source has its own double-click time.
Chapter 17: Trigger Control Getting Started with Trigger Control 17.8 Event Sequence (> = followed by) Generated When... Trigger-down event > trigger-up event with the single-click event flag set. A trigger source is pressed and released within ½ the configured double-click time. Trigger-down event > trigger-up event with the single-click event flag set > trigger-down event with the double-click flag set > trigger-up event with the double-click flag set.
18 WIRELESS LOCAL-AREA NETWORKING WIRELESS LOCAL-AREA NETWORKING 18.1 Wireless Local-Area Networking (WLAN) . . . . . . . . . . . . 18.2 Supplicants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.2.1 Namespaces . . . . . . . . . . . . . . . . . . . . . . 18.3 Configuring WLAN Radios. . . . . . . . . . . . . . . . . . . . . 18.4 Authentication Modes . . . . . . . . . . . . . . . . . . . . . . . 18.5 Extensible Authentication Protocol (EAP) . . . . . . . . . . . 18.5.
Chapter 18: Wireless Local-Area Networking Wireless Local-Area Networking (WLAN) 18.1 Wireless Local-Area Networking (WLAN) A wireless LAN enables a device to connect to a local-area network (LAN) through a wireless radio connection. The IEEE 802.11 standards define communication protocols on WLANs. The coverage area of a WLAN is dependant on the radio wave frequency, power output and environmental factors that may reflect or absorb radio signals. 18.
Chapter 18: Wireless Local-Area Networking Namespaces Computer Summit DeviceScape Agent Zero Config (WZC) NEO (PX750) No Yes Yes Windows CE: DeviceScape Agent Windows Mobile: WZC Omnii XT10 (7545XV) No Yes Yes DeviceScape Agent Omnii XT15 (7545XA) No Yes Yes Windows CE: Summit Windows Mobile: WZC Omnii RT15 (7545XC) No Yes Yes Windows CE: Summit Windows Mobile: WZC EP10 (7515) No Yes Yes WZC 8515 Only if RA2041 radio installed No Yes Summit (if installed) Default Supplican
Chapter 18: Wireless Local-Area Networking Configuring WLAN Radios Computer Operating System EP10 (7515) Windows Embedded Hand-Held 6.5 8515 Windows Embedded CE 5.0 The WLANEx namespace is not available for the following—if you are using one of these computers, you have to use the WLAN namespace in Mobile Devices SDK versions prior to version 5.0: 18.3 Computer Operating System 753x G0/G1 Windows CE .NET 4.2 Workabout Pro G0/G1 (7525) • Windows Mobile 2003 Second Edition • Windows CE .NET 4.
Chapter 18: Wireless Local-Area Networking Extensible Authentication Protocol (EAP) Mode DSA Summit WZC WPA2_PSK Yes Yes Yes CCKM Yes Yes No 802.1x Yes WPA_EAP Yes WPA2_EAP Yes 18.5 Extensible Authentication Protocol (EAP) 18.5.
Chapter 18: Wireless Local-Area Networking Encryption for Data Transmission EAP Mode Can take... TLAS User certificate or CA certificate. LEAP Username and password only. Fast Username and password with a special pacfilename and pacpassword. PEAP-GTC Username and password, and a CA certificate. PEAP_MSCHAP Username and password, and a CA certificate. Devicescape Agent Certificates are specified in one of the following: • ROOT of the device. • USER store on the device.
Chapter 18: Wireless Local-Area Networking Using WLANEx to Obtain Network Information 18.7 Using WLANEx to Obtain Network Information While the primary purpose of the WLANEx namespace is to programmatically configure and control a network connection, you can also use it to obtain network information from the surrounding access points. This information is available even when the device is not connected to the network.
Chapter 18: Wireless Local-Area Networking Ad hoc Networks Configuration utilities are available as follows: GUI Utility Summit Radio RA2040 Summit Client Utility Yes No No Wireless Zero Config Yes Yes Yes RA2041 RA2043 Wi-fi Config Odyssey Access Client No No Motorola ab9 NEO Raptor Stingray EP10 Yes Yes Yes Yes No Summit Client Utility The Summit Client Utility (SCU) is an application for end users, and administrators, of mobile devices that use a radio manufactured by Summit Data
Chapter 18: Wireless Local-Area Networking WLAN API Elements 18.14 WLAN API Elements C++: WLAN on all computers is controlled using the PsionTeklogix::WLANEx namespace. Java: WLAN on all computers is controlled using the com.teklogix.wlan package. .NET: WLAN on all computers is controlled using the PsionTeklogix.WLANEx namespace. Microsoft provides an API library for Wireless Zero Config.
19 WIRELESS WIDE-AREA NETWORKING 19.1 19.2 19.3 19.4 19.5 19.6 19.7 19.8 19.9 19.10 19.11 19.12 19.13 WIRELESS WIDE-AREA NETWORKING 19 Wireless Wide-Area Networking (WWAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195 WWAN on Devices Supported by the Mobile Devices SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195 WWAN on Devices not Supported by the Mobile Devices SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19.13.3 19.13.4 19.13.5 19.13.6 19.13.7 19.13.8 19.13.9 19.13.10 19.13.11 19.13.12 19.13.13 19.13.14 Closing Voice Over WWAN . . . . . . . . . . . . . Making a Phone Call . . . . . . . . . . . . . . . . . Voice Call States . . . . . . . . . . . . . . . . . . . Receiving a Phone Call . . . . . . . . . . . . . . . Processing Voice Calls. . . . . . . . . . . . . . . . Terminating Voice Calls . . . . . . . . . . . . . . . Call Forwarding . . . . . . . . . . . . . . . . . . . . Dual-Tone Multifrequency (DTMF) .
Chapter 19: Wireless Wide-Area Networking Wireless Wide-Area Networking (WWAN) 19.1 Wireless Wide-Area Networking (WWAN) The Mobile Devices SDK gives access to WWAN features that are available to a computer using a radio-based network, but which are not available to, or are not needed by, a computer on a wired network. Wireless Wide-Area Networks are wireless networks that cover large geographic areas.
Chapter 19: Wireless Wide-Area Networking Supported WWAN Modems 19.4 Computer Operating System Ikôn (7505) • Windows Mobile 6.0 Professional • Windows Mobile 6.1 Professional Omnii XT15 (7545XA) • Windows Embedded Hand-Held 6.5 Omnii RT15 (7545XC) • Windows Embedded Hand-Held 6.5 EP10 (7515) Windows Embedded Hand-Held 6.5 Supported WWAN Modems Psion computers support a number of WWAN modems.
Chapter 19: Wireless Wide-Area Networking Virtual Serial Port 19.4.2.1 Using the Virtual Serial Port The WWAN driver provides a virtual serial port so that other applications such as Windows CE dial-up networking can access the WWAN modem concurrently with the WWAN user interface. The main purpose is to support dial-up data connections in a more convenient manner.
Chapter 19: Wireless Wide-Area Networking Dial-up Data Connections 15. Type the AT command ATE1 followed by ENTER to enable command echo, which will allow you to see the subsequent commands you type. The terminal window is now connected to the modem, allowing you to enter AT commands. When you are finished entering commands, close the terminal window. 19.4.3 Dial-up Data Connections The following dial-up connections are available through the WWAN driver: • • • • 19.4.3.
Chapter 19: Wireless Wide-Area Networking Packet Data 19.4.3.3 Dial-up Data in CDMA Networks No additional configuration is required. The modem should select the highest possible speed (9.6kbps or 14.4kbps) automatically. 19.4.3.4 Dial-up Data in iDEN Networks The AT command “+WS46=23;+FCLASS=0” has to be added under the GUI Properties -> Configure… -> Call Options -> Extra Settings. 19.4.4 Packet Data The WWAN driver should be used for packet data connections.
Chapter 19: Wireless Wide-Area Networking Initializing WWAN • Windows Mobile 2003 Second Edition • Windows Mobile Classic 6.x It is intended that it will work with future expansion board radios.
Chapter 19: Wireless Wide-Area Networking WWAN Driver Status Flags Shutdown This flag is set when the WWAN driver detects that the modem has been shut down. If the modem power has been removed through the GUI Power applet, or through the SDK then the shutdown flag is expected. In most other cases, the modem requires a repair. Possible reasons for a modem shutdown are: • • • • • An over voltage has occurred—Siemens, and Cinterion, modems only—this should occur only in the case of a hardware failure.
Chapter 19: Wireless Wide-Area Networking Initializing the WWAN Driver 19.5.3 Initializing the WWAN Driver Note: Each Initialize call must be paired with a Shutdown call. See Section 19.6 Closing WWAN on page 205 for details. Warning: If you call Initialize several times WITHOUT calling the Shutdown method, eventually a call to Initialize will fail. Before WWAN can be initialized again, the computer must be reset; a warm reset is recommended. The driver is initialized as follows: 1. Call Initialize.
Chapter 19: Wireless Wide-Area Networking Initializing the WWAN Driver ~WWANReadyStateListener() { if (WwanReadyEvent != 0) { CloseHandle(WwanReadyEvent); WwanReadyEvent = 0; } } HANDLE GetWwanReadyEvent(){ return WwanReadyEvent; } virtual void OnReadyState( const WWAN_READY_STATE &ReadyState ) { if ((ReadyState.
Chapter 19: Wireless Wide-Area Networking Initializing the WWAN Driver // Wait for it to become ready: // Create and register the listener object to receive events WWANReadyStateListener* myReadyStateListener = new WWANReadyStateListener(); WirelessWAN::SetIndicationsListener(myReadyStateListener); WirelessWAN::SetIndicationsState(true); // To prevent a race condition, check to see if the event occured between the // time last check for the WWAN ready state and registration for the event.
Chapter 19: Wireless Wide-Area Networking Closing WWAN wwanReadyStatePtr); if (retVal == WwanRequestStatus.NotInitialized) { if (WirelessWAN.Initialize() != WwanRequestStatus.Success) { return false; } } int count = 60; while (count > 0) { Thread.Sleep(1000); // Get the ready state again.... retVal = WirelessWAN.GetReadyState(wwanParameters, wwanReadyStatePtr); if ( (retVal != WwanRequestStatus.Success) || (wwanParameters.resultCode != WwanResult.
Chapter 19: Wireless Wide-Area Networking Connecting to the Internet 19.7 Connecting to the Internet A WWAN modem must initiate a connection. This behaviour is similar to a dial-up connection but different from an Ethernet interface which connects automatically. When a WWAN modem is attached to a network and powered up, it detects the network, but is unable to transfer packets to the network until a packet data connection is set up. Figure 19.
Chapter 19: Wireless Wide-Area Networking Windows Embedded CE 5.0, Windows Embedded CE 6.0, Windows Mobile 2003 SE, and Windows CE .NET 4.2 Note: You must initialize WWAN before making the connection. See Section 19.5 Initializing WWAN on page 200 for details. See also Section 19.7.3 The DbGprs.csv File on page 209 for information that may need to be provided to complete the connection. Note: It is recommended that the application wait for a Packet Service Status (see Section 19.7.
Chapter 19: Wireless Wide-Area Networking Windows Mobile and Windows Embedded Hand-Held if (hRasComm != NULL) { RasHangUp(hRasComm); hRasComm = NULL; } return FALSE; } return TRUE; } // // Window's Message handler (WndProc) // case WM_RASDIALEVENT: { RASCONNSTATE rasconnstate = (RASCONNSTATE) wParam; DWORD dwError = (DWORD) lParam; } return TRUE; The following example uses the RAS namespace for the Mobile Devices SDK to make the Internet connection.
Chapter 19: Wireless Wide-Area Networking The DbGprs.csv File Note: It is recommended to wait for a Packet Service Status (see Section 19.7.4) of Wwan AttachStateAttached before attempting a connection through Connection Manager. The following example shows how to connect to the Internet using the Connection Manager: // pinvoke region required to access native Connection // Manager not included here. // const int _syncConnectTimeout = 60000; // 60 seconds string url = "http://msdn2.microsoft.
Chapter 19: Wireless Wide-Area Networking Roaming if (packetService.AttachState == WwanAttachStateAttached) { // Packet data is now enabled. WWAN communication can start... } else if (packetService.AttachState == WwanAttachStateDetached) { // Packet data is NOT enabled, which means that either // the service provider does not have packet data enabled, // or the WWAN driver did not automatically select a network // at startup, and it must be selected manually here. } } 19.7.
Chapter 19: Wireless Wide-Area Networking Connecting to a VPN 19.7.8 Connecting to a VPN A VPN (Virtual Private Network) can be used to connect a WWAN modem to a corporate network. Some third-party VPN clients work correctly only in conjunction with the Microsoft ASYNCMAC driver. In the standard Mobile Devices SDK implementation of WWAN, ASYNCMAC is not used. Psion proprietary modules complete the communication between NDIS and the WWAN modem.
Chapter 19: Wireless Wide-Area Networking Controlling the Interaction with the GUI Set PIN Access Flag When the Set PIN access flag is enabled, the PIN cannot be entered through the GUI. If this flag is set during driver initialization, then the user interface does not prompt the user for a PIN or a PUK. The initialization progress status remains at Initializing modem until the application that set the flag handles the PIN initialization.
Chapter 19: Wireless Wide-Area Networking WWAN API Elements back function. A SetSignalSuggestion feature is implemented which indicates to the driver how often the signal strength should be measured. Often signal strength is reported using a bar graph. A callback is only necessary when the increment to the next graphed level is reached. Callbacks prevent excessive activity on the processor and the modem.
Chapter 19: Wireless Wide-Area Networking Using SMS (Short Message Service) 19.11 Using SMS (Short Message Service) SMS (Short Message Service) is available on GSM networks. It allows text messages of up to 160 characters to be sent and received through the network operator’s SMS gateway. If the receiver is powered off or out of range, messages are stored in the network and delivered at the first opportunity. On Psion systems, SMS messages are stored on a SIM card, or in the WWAN modem.
Chapter 19: Wireless Wide-Area Networking Voice Service States Explicit Call Transfer This service allows a subscriber who has two calls to connect the other parties in those calls, and at the same time disconnect themselves from the call. This service is only supported by the HC25 modem.
Chapter 19: Wireless Wide-Area Networking Initializing WWAN Operating System Support Windows Mobile 6.x Professional Windows Embedded Hand-Held 6.5 The Mobile Devices SDK does not support these operating systems. For more information on voice calls on the following, see MSDN (http://msdn.microsoft.com/en-us/library/bb416512.aspx): • • • • • • 19.13.
Chapter 19: Wireless Wide-Area Networking Initializing Voice Over WWAN break; case VoiceCallStatus_Held: break; case VoiceCallStatus_Dialing: break; case VoiceCallStatus_Alerting: break; case VoiceCallStatus_Incoming: break; case VoiceCallStatus_Waiting: break; case VoiceCallStatus_NoAnswer: break; case VoiceCallStatus_NoCarrier: break; case VoiceCallStatus_Busy: break; case VoiceCallStatus_SupplementaryAccepted: break; case VoiceCallStatus_NormalTermination: break; default: break; } if ( (newFlags & Voice
Chapter 19: Wireless Wide-Area Networking Closing Voice Over WWAN 19.13.3 Closing Voice Over WWAN The following steps close voice over WWAN: 1. 2. 3. Free all allocated resources. If the application has been controlling the call notifications, return control to the GUI applet. See Section 19.8 Access Flags on page 211 for details. Call Shutdown.
Chapter 19: Wireless Wide-Area Networking Voice Call States switch(newStatus) { case VoiceCallStatus_Active: break; case VoiceCallStatus_Held: break; case VoiceCallStatus_Dialing: break; case VoiceCallStatus_Alerting: break; case VoiceCallStatus_Incoming: break; case VoiceCallStatus_Waiting: break; case VoiceCallStatus_NoAnswer: break; case VoiceCallStatus_NoCarrier: break; case VoiceCallStatus_Busy: break; case VoiceCallStatus_SupplementaryAccepted: break; case VoiceCallStatus_NormalTermination: break; de
Chapter 19: Wireless Wide-Area Networking Voice Call States Voice calls on Psion computers use the GSM standard. This standard allows a subscriber to have the following calls, at the same time: • One active call • One held call • One waiting call Either the active call or the held call can be a multiparty call with up to five participants. Active Applies to: incoming and outgoing calls The computer is connected to another party over the WWAN network: end-to-end conversation is possible.
Chapter 19: Wireless Wide-Area Networking Receiving a Phone Call Supplementary Accepted Applies to: outgoing calls Supplementary services can be configured using codes entered on the keypad of a telephone. These codes are numerals preceded by *#. An application can insert these codes into a dialing string. This status indicates that the network accepted one of these codes. For a list of supplementary services see Section 19.12 WWAN Supplementary Services on page 214.
Chapter 19: Wireless Wide-Area Networking Processing Voice Calls L"Answer incoming call from: \"%s\"?\r\nPress NO to reject the call.", incomingCall.GetOtherPartyCallerId().c_str()); // Please note: It is not recomended that you block this thread, // the next event will not be received untill this handler returns. // This blocking message box is here to keep this demo app simple.
Chapter 19: Wireless Wide-Area Networking Terminating Voice Calls Holding Calls The Mobile Devices SDK supports holding calls; although, holding calls are only available when the computer is associated with a WWAN network that provides a held calls service. A held call is a call that has been active, but is temporarily interrupted. It can be resumed, made active, again.
Chapter 19: Wireless Wide-Area Networking Call Forwarding Terminating One Selected Call Use the VoiceCall function HangUp to terminate one selected call. The behaviour of HangUp depends on the WWAN modem. The MC75 terminates a call in any state. The HC25 terminates calls in the active and held states. 19.13.
Chapter 19: Wireless Wide-Area Networking Audio for Voice Over WWAN 19.13.13 Audio for Voice Over WWAN Playing A Ring Tone Use PlayRepeatingWave, in the Sound namespace, to play a repeating tone. This is shown in the following example: try { // Play a ring tone to notify the user of an incoming call. // From PsionTeklogix::Sound namespace. PlayRepeatingWave(std::wstring(L"\\windows\\ring.
Chapter 19: Wireless Wide-Area Networking Voice Over WWAN API Elements Last Event The voice call is terminated—no more events will be generated for this call. See Section 19.13.8 Terminating Voice Calls on page 223 for details. Withheld Incoming Number This is an incoming call where the caller withheld the phone number. See Section 19.13.12 Blocking Caller ID on Outgoing Calls on page 224 for details. 19.13.14.
Chapter 19: Wireless Wide-Area Networking Data Coding Schemes for Phone Book Entries } } } } if (number_combo.Items.Count > 0) { number_combo.SelectedIndex = 0; } Writing Phone Book Entries To create a new phone book entry: • Use the AddPhonebookEntry method for the selected Phonebook object. A PhonebookEntry object representing the new phone book entry is returned. Volatile A phone book is volatile if its content can change at any time.
Chapter 19: Wireless Wide-Area Networking Phone Book API Elements 19.14.3 Phone Book Type Description Mailboxes Writable Numbers for contacting voice mail. Overwriting these numbers is not advisable. Own Numbers Writable The phone number for the computer. This is for display purposes only—the usable number is stored on the network. Dialed Calls Not writable, volatile Automatically updated by the modem. Received Calls Not writable, volatile Automatically updated by the modem.
20 REGISTRY-BASED WWAN API REGISTRY-BASED WWAN API 20.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 20.2 Phone State Registry Settings . . . . . . . . . . . . . . 20.2.1 General Status . . . . . . . . . . . . . . . . . 20.2.2 Phone State Bitmask in Numerical Order . 20.2.3 Network Status . . . . . . . . . . . . . . . . . 20.2.4 Packet Data Status. . . . . . . . . . . . . . . 20.2.5 Voice Call Status . . . . . . . . . . . . . . . . 20.
Chapter 20: Registry-based WWAN API Overview 20.1 Overview The registry-based WWAN API described here can be used without having to install a Psion SDK. You can use this API to query many static, and dynamic, properties of the WWAN modem and the WWAN network; however, you cannot use it to control the WWAN modem—communication goes only one way, from the WWAN modem to the application.
Chapter 20: Registry-based WWAN API Phone State Bitmask in Numerical Order Network Status The following bits are mutually exclusive—only one of them can be set at a time. Bitmask When set... 0x00200000 the WWAN modem is not registered on any network. 0x00400000 the WWAN modem is currently searching for a network. 0x00800000 the WWAN modem is currently registered on its home network. 0x00000200 the WWAN modem is currently registered on a roaming network. Packet Data Status Bitmask When set...
Chapter 20: Registry-based WWAN API Network Status 20.2.3 Bitmask Windows Mobile Definition Name (snapi.h) When set... 0x00001000 SN_PHONEACTIVEDATACALL_BITMASK the modem has an active packet data connection. 0x00004000 SN_PHONECALLONHOLD_BITMASK there is a call is on hold. 0x00008000 SN_PHONECONFERENCECALL_BITMASK there is a conference call in progress. 0x00010000 SN_PHONEINCOMINGCALL_BITMASK there is an incoming call (ringing), or a waiting call, that has not yet been accepted by the user.
Chapter 20: Registry-based WWAN API Voice Call Status Bitmask Windows Mobile Definition Name (snapi.h) When set... 0x00000001 SN_CELLSYSTEMAVAILABLE_GPRS_BITMASK GSM / GPRS 0x00000002 SN_CELLSYSTEMAVAILABLE_1XRTT_BITMASK CDMA / 1xRTT 0x00000004 SN_CELLSYSTEMAVAILABLE_1XEVDO_BITMASK CDMA / 1xEV-DO (including Rev. 0 and Rev.
Chapter 20: Registry-based WWAN API Phone State Registry Settings in Alphabetical Order 20.3 Value Name Value Type Description Incoming Caller Name REG_SZ Caller name of the current incoming, or waiting, call. This value remains available when the incoming, or waiting, call becomes an active, or held, call. A waiting call overwrites the previous incoming call. This value is deleted when the call is terminated.
Chapter 20: Registry-based WWAN API System Properties Registry Settings 20.4 System Properties Registry Settings The values described in this section are only available on Psion devices. Windows Mobile 6 Professional does not support these values. HKEY_LOCAL_MACHINE\SOFTWARE\PsionTeklogix\SystemProperties\Hardware \WWAN\WWAN ESN Value Name Value Type Description Value REG_SZ The Electronic Serial Number (ESN) for CDMA modems in hexadecimal format.
Chapter 20: Registry-based WWAN API Sample Source Code documentation on MSDN. These APIs are not supported by Windows CE 6.0 R3.
Chapter 20: Registry-based WWAN API Sample Source Code REG_NOTIFY_CHANGE_LAST_SET); if (regEvent == INVALID_HANDLE_VALUE) { // can't set up notification RegCloseKey(key); return 1; } while (true) { DWORD bytesAvailable, bytesReturned; BYTE * infoBuf = 0; BYTE * infoBufPtr; REG_NOTIFY_INFORMATION const * regNotify; if (WaitForSingleObject(regEvent, INFINITE) != WAIT_OBJECT_0) { // wait failed break; } if (CeRegGetNotificationInfo(regEvent, 0, 0, 0, &bytesReturned, &bytesAvailable) != ERROR_SUCCESS) { // no
Chapter 20: Registry-based WWAN API if (size > 0) { BYTE * valueBuf = new BYTE[size]; if (RegQueryValueEx(key, valueName, 0, &type, valueBuf, &size) == ERROR_SUCCESS) { switch (type) { case REG_SZ: // the string in valueName has been changed to valueBuf break; case REG_DWORD: // the DWORD in valueName has been changed to // *((DWORD *)valueBuf) break; default: // handle other value types here break; } } delete[] valueBuf; } } } else { // Unknown action } infoBufPtr += regNotify->NextEntryOffset; bytesRetur
21 GPS GPS 21.1 21.2 21.3 21.4 21.5 21.6 21.7 21 Support for GPS on Psion Computers . 21.1.1 Built-in GPS . . . . . . . . . . 21.1.2 End-cap GPS . . . . . . . . . 21.1.3 External GPS . . . . . . . . . Mobile Devices SDK Support for GPS . GPS Configuration . . . . . . . . . . . . Processing GPS Data . . . . . . . . . . . Getting Started with GPS . . . . . . . . Code Samples for GPS . . . . . . . . . . GPS API Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 21: GPS Support for GPS on Psion Computers 21.1 Support for GPS on Psion Computers 21.1.1 Built-in GPS 21.1.2 Computer Availability Chip Type Baud Rate Ikôn (7505) (Windows CE 5.0, Windows Mobile 6) All SiRF starIII 9600 Omnii XT10 (7545XV) (Windows Embedded CE 6.0) Optional SiRF III 4800 Omnii XT15 (7545XA) (Windows Embedded CE 6.0, Windows Embedded Hand-Held 6.5) Optional SiRF III 4800 Omnii RT15 (7545XC) (Windows Embedded CE 6.0, Windows Embedded Hand-Held 6.
Chapter 21: GPS GPS Configuration AGpsHelperI Class This class supports AGPS (Assisted Global Positioning System). AGPS reduces Time To First Fix (TTFF) and increases the likelihood of finding and keeping a fix in poor coverage areas. An overview of this feature is available in the user manual for your computer. For more detailed information on implementing and using AGPS on Psion computers see Ingenuity Working. 21.
22 SENSORS SENSORS 22.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 22.2 Accelerometer . . . . . . . . . . . . . . . . . . . . . . . 22.2.1 Getting Started with the Accelerometer . . 22.2.2 Code Samples for the Accelerometer . . . . 22.2.3 Accelerometer API Elements. . . . . . . . . 22.3 Gyroscope . . . . . . . . . . . . . . . . . . . . . . . . . . 22.3.1 Getting Started with the Gyroscope. . . . . 22.3.2 Code Samples for the Gyroscope . . . . . . 22.3.3 Gyroscope API Elements . . . .
Chapter 22: Sensors Introduction 22.1 Introduction The following sensors are available on Psion computers: • Accelerometer • Gyroscope • Digital Compass • Light sensor • Proximity Sensor The Mobile Devices SDK includes APIs for reading data from these sensors, but not for configuring them. They also cannot be configured through the GUI. 22.2 Accelerometer A accelerometer measures linear acceleration.
Chapter 22: Sensors Getting Started with the Gyroscope Default sensitivity At 250 degrees per second this is ±9 milli-degrees per second Default sampling rate This is set to 100 Hz. The GUI applet samples at ~50 Hz. Mobile Devices SDK The Mobile Devices SDK provides APIs that enable an application to make a single reading of the gyroscope output, or to register a callback for repeated readings. 22.3.
Chapter 22: Sensors Code Samples for the Magnetometer 22.4.2 Code Samples for the Magnetometer For postings on Ingenuity Working that contain code samples that use the magnetometer see: community.psion.com/tags/compass/codeDG 22.4.3 Magnetometer API Elements C: Magnetometer hardware on all computers with an magnetometer is read, using the DeviceOrientation group. .NET: Magnetometer hardware on all computers with an accelerometer is read, using the PsionTeklogix.Sensors.DeviceOrientation class. 22.
Chapter 22: Sensors Getting Started with the Proximity Sensor Automatic locking and unlocking Psion computers that have a proximity sensor have the ability to automatically lock, and unlock, features as follows: • • • • Lock the display during a phone call, and unblock it at the end of the call. Suspend the device when it is placed face-down on a surface for more than 3 seconds. Lock the touchscreen and the keyboard when the device is placed on a holster or a pocket.
23 OTHER FEATURES OTHER FEATURES 23.1 Vibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.1.1 Getting Started . . . . . . . . . . . . . . . . . . . . 23.1.2 Code Samples . . . . . . . . . . . . . . . . . . . . 23.1.3 Vibration API Elements . . . . . . . . . . . . . . . 23.2 Disabling Modules and Components on the EP10 . . . . . . 23.3 PsionVU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3.1 Availability of PsionVU . . . . . . . . . . . . . . . 23.3.
Chapter 23: Other Features Vibration 23.1 Vibration Some Psion computers can be made to vibrate. The vibration feature is available as follows: Computer 23.1.
Chapter 23: Other Features PsionVU 23.3 PsionVU PsionVU allows the administrator to tailor how the Psion computer operates and the options the user can access. Note that the look of the Today screen will change from icons that are finger accessible to a list of items that is best accessed using a stylus. 23.3.1 Availability of PsionVU PsionVU is available on the following computers: • • • • 23.3.
A APPENDIX: RESOURCES AResources A.1 Manuals and URLs Psion USB Setup Utility Ingenuity Working: community.psion.com/downloads/firmwaresoftware__demos/m/software_downloads/15905.aspx Microsoft Windows CE & Windows Mobile Microsoft Inc.: http://msdn.microsoft.com/en-us/library/ms376734.aspx Psion SDKs Psion. 2010. Psion Imaging Services SDK Developers Guide (Part number 8100153) Psion. 2009. Psion Mobile Devices SDK Developers Guide (Part number 8100016) Psion HDKs Psion. 2010.
Appendix A: Resources Manuals and URLs NEO Hand-held Computer Psion. 2008. NEO Hand-Held Computer User Manual (Part number 8100157) Workabout Pro G2 Psion. 2007. Workabout Pro Hardware Development Kit User Manual (Part number 8100057) Psion. 2007. Workabout Pro G2 Windows Embedded CE 5.0 User Manual (Part number 8100140). Psion. 2007. Workabout Pro G2 Windows Mobile 6 User Manual (Part number 8100144). Psion. 2009. Workabout Pro G2 Windows Mobile 6.1 User Manual (Part number 8100182).
Appendix A: Resources Manuals and URLs European Telecommunications Standards Institute (ETSI): Digital cellular telecommunications system (Phase 2+); Universal Mobile Telecommunications System (UMTS); AT command set for 3G User Equipment (UE), 3GPP TS 27.007 version 5.4.0 Release 5, ETSI, 09/2003; Available at http://webapp.etsi.org/key/queryform.asp. ETSI reports are available at http://www.etsi.org. Summit Radios Summit Data Communications Inc. Summit User’s Guide; Available at: http://www.summitdatacom.
B APPENDIX: REGISTRY KEYS BRegistry Keys B.1 Workabout Pro Registry Keys B.1.1 Registry Settings For Controlling VGA The Workabout Pro VGA settings are located in the following registry subkey: HKEY_LOCAL_MACHINE\Drivers\Display\NVDDI Registry Values QVGA mode (REG_DWORD) 00 = VGA non-zero = QVGA Note: This value is only available for the Workabout Pro G2. B.1.2 Registry Settings For Controlling Scanner Power This registry key is in effect as long as there is no scanner or imager configured.
Appendix B: Registry Keys Registry Settings For Psion Device Drivers B.1.4 Registry Settings For Psion Device Drivers The Workabout Pro device driver settings are located in the following registry subkey: HKEY_LOCAL_MACHINE\Drivers\PsionTeklogix\Expansion Slot Registry Values FFUART (REG_DWORD) Setting this value enables hardware RTS/STS on the FFUART of the Workabout Pro G2. If the key is absent, the FFUART COM1: port is not enabled.
INDEX INDEX Numbers 2D Aztec Code 97 2D Aztec settings 150 2D Data Matrix 97 2D Data Matrix settings 147 2 Digit Addendum 114, 115, 116, 118, 119, 121 2D MaxiCode 97 2D MaxiCode settings 149 2D Micro PDF417 98 2D PDF417 98 2D QR Code 97 2D QR Code settings 148 5 Digit Addendum 114, 115, 116, 117, 118, 119, 121 7530/7535 COM ports 76 802.
Index Code 93 settings 125 Codepage 103 Colours, display number of 39 Command insertion 59 Command key 59 Command syntax 3 COM ports 7530/7535 76 8515 76 8525/8530 76 Ikon 76 NEO 77 WORKABOUT PRO G2 75 Composite Codes 97 Composite settings 140 Concatenation 124 Conference calls 214, 223 Configure Scanners 98 Configuring WLAN 190 Configuring scanner properties 102 Connecting WWAN 210 Connection Manager 87, 88, 208 Disconnecting 209 ConstantIllumination 107 Continuous Scan 105 ContinuousScan 106 ContinuousSc
Index I IATA 2 of 5 97, 135 iDEN 198, 199 Ikon COM ports 76 Imagers 93 Imaging scanners 93, 97 Incall supplementary services 214 Inc Country 113 Include Check 110, 130 Include Chk 108, 113, 115, 117, 119, 127, 129, 131, 134, 136 Include Sym 111 Inc Num Sys 117, 119 Indicators, LED 45 Intensity Full 7 Half 7 Interleaved 2 of 5 97 Interleaved 2 of 5 settings 128 Internal scanners 95 Internet connection WWAN 206 Inverse Video Mode 148, 149 IrDA 75 ISBN Conversion 114 ISBN Translate 114 ISBT 128 112 ISBT Conca
Index Non-decoded scanners 93, 97 NOTIS Editing 123 number version 170 Number of colours, display 39 Number of Vibrates for Bad Scan 103 Number of Vibrates for Good Scan 103 Number System 118, 121 Num Chk Digits 127 O Odyssey Access Client 191 One Chk Digits 131 Online help 4 OnlyDecodeCenter 107 On-time 7 Orange key 52 Output 137 P Packet data 199 Packet data status 209 PAP 87 Parameter Scanning 104, 105 Password Authentication Protocol 87 Pause between Vibrates for Bad Scan 103 Pause between Vibrates f
Index Security Level 122, 142 Serial port, virtual 196, 197 Set PIN access flag 212 Set provisioned contexts access flag 212 Set register state access flag 211 Set suppress call notifications access flag 212 Shell, Windows 175 Short Code 103 Short Message Service 214 SIM card 201 Single-click events 181 SIP 52 SMS 201, 214 Soft input panel 52 Soft Scan Timeout 103 Speakers 163 Standard 2 of 5 Format 135 Start Stop Char 110, 124 StartStopChars 123 Start Stop Transmission 109, 124 Storage Permanent 83 storag
Index Virtual serial port 196, 197 Configuration 197 Voice calls Audio 225 Blocking calls 224 Call waiting 222 DTMF 224 Forwarding calls, WWAN 224 Held calls 223 Multiparty calls 223 Processing 222 Receiving 221 Terminating calls 223 WWAN 215 WWAN closing 218 WWAN initialization 216 WWAN making 218 Voice call states 219 Active 219, 220 Alerting 219, 220 Busy 220 Dialing 219, 220 Held 220 Incoming 220 No answer 220 No carrier 220 Normal termination 219, 221 Supplementary accepted 221 Waiting 220 Voice servi