Advanced Keyboard Page
This page allows the user to configure the physical and virtual buttons available in specific Datalogic devices.
Supported devices and firmware
Memor 10, Memor 1, Memor K, and Joya Touch A6 devices are not supported
Version 1
The following table shows the devices that support Version 1 of this feature, with their minimum OS and firmware version.
Device | OS Version | Minimum Firmware Version |
---|---|---|
Memor 35/35X | all | all supported |
Memor 30/30X | all | all supported |
Joya Touch 22 | 13 11 | all supported 1.05.001 |
Memor 11 | 13 11 | all supported 1.03.07 |
Skorpio X5 | all | all supported |
Memor 20 | 13 11 9 | all supported 3.18.001 unsupported |
Version 2
The table below shows the minimum OS and firmware version of the devices supporting Version 2 of this feature. This version introduced the possibility to create and edit key sequences, mapped to specific key codes or actions, and also added 2 new key codes (BATTSWAP to enter battery swap on supported devices and PTT for push-to-talk on devices that don't have a dedicated PTT button).
Device | OS Version | Minimum Firmware Version |
---|---|---|
Memor 35/35X | 13 | 1.05.001 |
Memor 30/30X | 13 | 1.05.001 |
Memor 11 | 13 | 2.00.01 |
Keyboard
The image below shows the initial view of the Advanced Keyboard page for a Skorpio X5 device. It provides a visual representation of the different keyboard layouts and keys available for customization.
The controls above the keyboard provide the following functionality:
-
Select the Keyboard type to customize (options depend upon the currently selected device).
warningAdvanced keyboard configuration will not apply on the device if the incorrect
Keyboard
type is selected. Additionally, any current customization on this page will be removed if theKeyboard
selection is changed. -
Select the Layout to customize. The
Default
layout is always present, but it is possible to create up to 8 additional layouts by clicking on the Layout dropdown and clicking on theAdd Layout
button. The currently selected layout can be removed with the delete button .
To enable access to different layouts on the device, keys can be mapped to switch to the desired layout.
- Reset the keyboard configuration with the reset button . This will remove all layout and key customizations and restore the default keyboard setup.
Key Customization
Modifications to the keys can be made by hovering over one the keyboard keys and clicking it to open a configuration dialog. Within this dialog, the key types and values can be modified, or the key can be reset back to its default value. The various Keycode Type options available for remapping key values are explained in further detail below.
Standard Keycode
The standard remapping option provides a list of common keycodes that can be chosen from. The list includes many universal key events (descriptions can be found in the Android documentation) as well as some Datalogic specific options, such as the SCAN
keys that trigger a scan when pressed.
Keys can be mapped to an empty keycode so that no value is sent as a result of a key press / release.
Unicode Keycode
Unicode remapping grants the ability to remap a key to a specified UTF-16 unicode character, expressed in hexadecimal format, for extended character support.
Layout Change
Keyboard layout changes can be triggered by remapping keys to individual layouts or a general selection option. The generated options list shows all available non-default layouts as well as the special Layout Select
action. When remapped to a specific layout change (FN1
, FN2
, etc...), key presses will activate/deactivate the target layout. When remapped to the Layout Select
action, the desired layout can be chosen from all available layouts through repeated key presses.
To change the behavior of how the layout selection is applied, see the special keys section
Keyboard Backlight Control
The backlight control remapping can be used to quickly change the behavior of how the system manages the keyboard backlight. The following operations are available:
- Keyboard backlight on / off / toggle: turn on / off / toggle the keyboard backlight control. When the control is enabled, the system will turn the backlight on when keyboard interaction is detected and will automatically turn off after the idle timeout is reached (configurable with the Datalogic settings).
- Keyboard backlight brightness up / down: increase / decrease the brightness of the backlight.
Custom Action
Custom action defines a new identifier (number greater than 255) for key press detection. After remapping a key to a custom action, listeners can be created from the Datalogic SDK in order to be notified when a custom action press / release has ocurred (using methods in https://datalogic.github.io/android-sdk-docs/reference/com/datalogic/device/input/AdvancedKeyboard.html).
Multitap
Multitap provides the ability to configure multiple key values for a single key (only standard and unicode keycodes are supported). The desired keycode can be selected from the multitap list by pressing the associated key multiple times to cycle through the options.
Within the configuration dialog, previously added multitap values can be modified or removed by clicking on them.
Keyboard Info
Keyboard info shows general information about the current keyboard configuration. Some information can be modified, such as the keyboard revision, author, and description. Other information is automatically generated such as the keyboard name and creation date. For devices supporting Version 2, the information on the keyboard version can be edited, allowing you to create a Version 1 compatible keyboard if it needs to be installed on a device not supporting the latest keyboard version.
The multitap options allow customization of the overall feature and will apply to all available multitap keys.
- Multitap Delay: Represents the number of milliseconds between multitap key presses before a character is submitted to the UI.
Special Keys
The standard set of special modification keys (SHIFT
, ALT
, CTRL
, FUNC
, SYM
and META
) can be configured to behave differently when interacting with other keys. Additionally, each individual layout change key can be customized to behave in a prescribed manner when accessing the other keys available on the layout. The behavior can vary between 3 possible options:
- Toggled: User can press and release the associated key. The modifier will be applied only to the next key that is pressed and released.
- Locked: User can press and release the associated key. The modifier will be applied to all other key presses and releases until the associated key is pressed and released again.
- Hold: The modifier will be applied only while the user keeps the associated key pressed.
The number of layout change controls present in this menu directly corresponds to the number of additional layouts added to the keyboard (FN1
, FN2
, etc...).
Key Sequences
This feature is available only for Version 2 of the keyboard configuration and can be accessed by navigating to the Key Sequences
tab. It enables the creation and editing of key sequences in two different ways:
- Repeated presses of the same key for a specified amount of times
- Simultaneous press of multiple keys
The image below shows an example of two sequences created within the key sequences dialog.
For each available sequence, the following details are shown: the key sequence buttons involved, the mapped key code, and the press delays. It is possible to remove and edit each sequence created, as well as adding new ones for a maximum of 10 sequences.
Key Sequence Setup
A new dialog is opened when editing an existing key sequence or adding a new one. This dialog allows you to select the type of key sequence, its configuration parameters, as well as the key code to generate when the specific key sequence is executed on the device. The mapping works in the same way as the single key configuration, except for the fact that the Keycode Type is limited to Standard Keycode, Unicode Keycode, Layout Change and Custom Action.
The image below shows the dialog when editing a Simultaneous Key Presses sequence. It allows you to specify the keys to press simultaneously and the amount of time (in milliseconds) that they need to be pressed before generating the mapped keycode.
The image below shows the dialog when editing a Repeated Key Presses sequence. It allows you to specify the key to press repeatedly, the amount of times it needs to be pressed, the allowed delay (in milliseconds) between presses, and the amount of time (in milliseconds) that the key needs to be pressed during its last press before generating the mapped keycode.