Introduction

This page describes the parameters currently available in the Touch Sensor Module Firmware 1.55 and Neonode Touch Sensor Module Firmware 2.0 (NTSMF 2.0). The parameter "Scanning Range" is only available from NTSMF 2.0 through zForce Programmer.

The parameters described in this document can be adjusted by changing the Touch Sensor Modules configuration. These parameters can be configured using Neonode Workbench, an application using zForce SDK, Arduino Library (I2C) or zForce Programmer. The parameters that have been configured using either Neonode Workbench, zForce SDK or Arduino Library, are stored in the RAM memory, meaning that the new configuration will have to be re-applied after each reboot. If the parameters are instead configured using zForce Programmer, the parameters will not have to be re-applied after each reboot.


Configuration

Range

Measurement

Default

Description

Range Settings


Sets the scanning range dynamically
Scanning Range

Mechanical Data

10-1·mm

Mechanical Data (col. B * 10)

The area (width and height / columns and rows) the Touch Sensor Module (TSM) will scan for an object with lasers and photodiodes (PD). 

This value also sets the limit for Max Y below.






Touch Active Area Adjustments


Contains settings for modifying the active touch area and the reported touch coordinates

Low Bound X (Min X)

Mechanical Data

10-1·mm

36

Start position of the (Sub)TAA in x-direction. Min X, Max X, Min Y & Max Y make up the Touch Active Area. 

Low Bound Y (Min Y)

Mechanical Data

10-1·mm

0

Start position of the (Sub)TAA in y-direction. Min X, Max X, Min Y & Max Y make up the Touch Active Area. 

High Bound X (Max X)

Mechanical Data

10-1·mm

Mechanical Data (col. A * 10) + 36

End position of the (Sub)TAA in x-direction. Min X, Max X, Min Y & Max Y make up the Touch Active Area. 

High Bound Y (Max Y)

Mechanical Data

10-1·mm

Mechanical Data (col. B * 10)

End position of the (Sub)TAA in y-direction. Min X, Max X, Min Y & Max Y make up the Touch Active Area. 

Reverse X

True/False

Boolean

False

Reverses the x-coordinates of reported touches.

Reverse Y

True/False

Boolean

False

Reverses the y-coordinates of reported touches.

Flip XY

True/False

Boolean

False

Swaps the y- with the x-coordinates of the reported touches.

Offset X

Mechanical Data

10-1·mm

0

Offsets the projected (Sub)TAA in x-direction, on the display.

Offset Y

Mechanical Data

10-1·mm

0

Offsets the projected (Sub)TAA in y-direction, on the display.






HID Display Size


The size of the display reported by the Touch Sensor Module to the host. Only usable when connecting with USB HID

Hid Display Size X

Mechanical Data

10-1·mm

Mechanical Data (col. A * 10)

Width of the display.

Hid Display Size Y

Mechanical Data

10-1·mm

Mechanical Data (col. B * 10)

Height of the display.






Object Size Restrictions


Only reports touches with an object size that is within the defined limits

Max Size Enabled

True/False

Boolean

False

Allows a maximum touch object size.

Max Size

Mechanical Data

10-1·mm0

Max limitation of a touch object (if Max Size Enabled =True).

Min Size Enabled

True/False

Boolean

False

Allows a minimum touch object size.

Min Size

Mechanical Data

10-1·mm0

Min limitation of a touch object (if Min Size Enabled =True).






Click On Touch


Configures the Touch Sensor Module to send an Up (touch event) after Down within a defined threshold to create an instant touch experience
Enabled

True/False

Boolean

FalseEnables and disables the Click On Touch Feature
Time To Up
ms100Time from the Down event until the Up event is sent.
Distance
10-1·mm100Distance from the initial location that a touch must stay within for Click On Touch to be enabled for a touch





Frequency Settings


Changes the Touch Sensor Modules update frequency
Idle FrequencyFrequencyHz33Scanning frequency when the Touch Sensor Module has not registered any touch object.
Finger FrequencyFrequencyHz100Scanning frequency when the Touch Sensor Module has registered and tracking a touch object.





Floating Protection Settings


Wait for the object to stabilize on the Y-axis, in order to identify the position of the object in a reliable way
Enabled

True/False

Boolean

TrueFloating protection enabled
Floating Protection Time
ms400Time to wait before reporting touch registration





Miscellaneous Settings



Number Of Reported Touches

1-10 touches

Quantity

2

The number of touches that can be reported simultaneously.

Reflective Edge Filter

True/False

Boolean

FalseUseful when there is a risk that there are highly reflective materials right outside the active touch area

Scanning Range

This setting is only available through zForce Programmer. Modifying the scanning range can be useful for certain sensor with default scanning range lower than maximum and also offers the possibility to set a shorter scanning range. 

For the definition of scanning range, refer to TSM - Definitions.

Touch Active Area Adjustments

Axis Orientation

When mapping a reported touch from the Touch Active Area to a display, it is important that the orientation of the TAA, as well as the display are taken into account. When positioning a Touch Sensor Module over a display to achieve touch functionality, both systems needs to be co-aligned in order for a reported touch to be projected in the same corresponding position of the screen. If both systems are not oriented in the same way, the reported touches are going to be reversed depending of the setup. Luckily, the orientation of the reported touches can be configured to counter this by using ReverseX/ReverseY or FlipXY in Device Configuration. These settings rotates or flips the given coordinates of the reported touches, which allows the Touch Sensor Module to be mounted at any of the 4 sides of the screen 

Almost all displays have a reference point (or origin) positioned at the upper left corner of the screen, where the x-axis points in the direction to the right, with the y-axis pointing downwards. The origin of the Touch Sensor Module's Touch Active Area is positioned on the left hand side, when having the TAA facing downwards, with the black side of the Touch Sensor Module facing outwards.

This means that if a Touch Sensor Module is positioned above a display, with the black side facing outwards, and its TAA covering the screen - both coordinates systems would be co-aligned and a reported touch would project on the display seamlessly. But if we were to flip the Touch Sensor Module to cover the screen from underneath the display, a reported touch would appear to be reversed in y-direction since their coordinate systems would no longer be co-aligned, as illustrated below.




Touch Active Area Size

The Low or High Bound of the x- or y-axis can be configured in order to make a Touch Active Area (TAA) smaller, creating a so-called Sub Touch Active Area (SubTAA).  These values and dimensions apply to the Scanning Area of the Touch Sensor Module (TSM). This limits the interactive area, and touches would only be reported within the SubTAA.

The SubTAA is measured from its origin, in the range of Low Bound and High Bound, in x- or y-direction



Where,

  • Low Bound X - Start position of the (Sub)TAA in x-direction, measured from the origin of the TAA.
  • High Bound X - End position of the (Sub)TAA in x-direction, measured from the origin of the TAA.
  • Low Bound Y - Start position of the (Sub)TAA in y-direction, measured from the origin of the TAA.
  • High Bound Y - End position of the (Sub)TAA in y-direction, measured from the origin of the TAA.

When projecting a SubTAA to a display within the host system, the projected SubTAA would then be mapped to the display's origin, regardless of its position (as shown in the illustration below).


Example:

If Low Bound X is set to 1000 (x 10-1·mm), then no touches performed from 0 to 100 mm along the Touch Sensor Module X-axis will be reported. Note, the coordinates are given in tenths of millimeters.

Reverse X and Y

Reverse X or reverses the coordinates of a reported touch in x- or y-direction, without effecting the orientation of the (Sub) Touch Active Area. When positioning a Touch Sensor Module, the axes of the Touch Active Area should either be positioned in the same orientation as the display, or have the reported touch coordinates adjusted. Please consider the following example.


Flip XY 

Flip XY swaps the x- with the y-axis of the reported touches, without effecting the orientation of the (Sub) Touch Active Area. When swapping axes, the reported touch data would then be sent to the host system containing the new x- and y coordinates. 

FlipXY together with ReverseX/Y can be used together which allows the Touch Sensor Module to be positioned around all edges of a display. When positioning a Touch Sensor Module, the axes of the Touch Active Area should either be positioned in the same orientation as the display, or have the reported touch coordinates adjusted. Please consider the following example.


Offset X and Y

Offset X or Y moves the position of the origo (X and/or Y) further with the given Offset value, moving in that way the whole (Sub) Touch Active Area in one or both directions. When adding the offset to a SubTAA, the position of the projected SubTAA will then be moved according to the following illustration.



Example:

If Offset X is set to 1000 (x 10-1·mm), then all the touches performed from 0 to 100 mm along the Touch Sensor Module will be reported unlike the Low Bound X set to 100 (x 10-1·mm). But all of the touches in the origin of the TSM (0,0) will be seen/reported as (1000, 0). Note, the coordinates are given in tenths of millimeters.

Hid Display Size X and  Y

Hid Display Size X or Y represent the width and height of a display in the host system. Hid Display Size is used to scale the reported touches onto the display. The default Hid Display Size values are set to match the size of the Touch Sensor Module's Touch Active Area, creating a proportional mapping regardless of the display size.

Proportional Mapping

When Hid Display Size is set to the size of the Touch Active Area, the mapping of a reported touch would get projected proportionally, to fit the size of the display.

For instance, if a display within the host system is larger than the TAA, a reported touch will get projected according to the illustration below.



Selective Touch Area

It is possible to create a so-called Selective Touch Area, where only a part of the display have touch functionality.

For instance, if a Touch Sensor Module is positioned over a larger display, we can create a touch surface over that specific part of the screen. Please refer to Selective Touch Area for further information and examples.


Object Size Restrictions

Only reports touches with an object size that is within the defined limits.

Click On Touch

The click on touch parameters gives the option to make the Touch Sensor Module report a click event upon entering the touch field as opposed to report a click event when an object leaves the touch field. This is useful when using the Touch Sensor Module in a contactless touch implementation, and gives more rapid feedback to the user.

Click on Touch Enabled

Enables or disables click on touch.

Time to Up

Time from the down event until the up event is sent. Setting this to 0 completely disables the possibility to do swiping gestures (or drawing). Setting this to e.g 100ms gives the end user 100ms to move outside of the set Distance (described below) and begin the swipe gesture instead. 

Distance

This value sets the minimum range that the touch object has to move before starting a swipe gesture.

Frequency Settings

The frequency parameters set the various scanning frequencies. The maximum scanning frequencies are depending on the product variant.

Finger Frequency

Activated when objects with characteristics matching regular fingers are detected.

Idle Frequency

Activated when no objects are detected in order to minimize power usage.

Floating Protection

The floating protection parameter gives the option to modify or disable one of the touch recognition filters that are available in the Touch Sensor Module.

Floating Protection Enabled

This is a Boolean value that completely disables or enables this filter.

Floating Protection Time

This value indicates how long this filter would need to validate the first reported touch. Default value is 40ms. With a lower value the risk increases that a false touch would be reported, and the opposite with a higher value.

Number of reported touches

The number of touches that can be reported simultaneously. For example, setting this to 5 will make the sensor report up to 5 simultaneous touches.

Reflective Edge Filter

This is a Boolean value to disable or enable the reflective edge filter. This filter is useful when there is a high risk that there will be a highly reflective materials right outside the Touch Active Area. In the presence of such materials there is a risk that the Touch Sensor Module will report it as a touch within Touch Active Area. An example of a highly reflective material could be a white paper or something similar.











  • No labels