Friday, 10 April 2020

USB Remote v1.52 (iOS)

Added Macro Authentication options:

Application can now request additional authentication (Face ID/Touch ID/password) before a Macro is executed, edited, duplicated or deleted. Each Macro has now individual Authentication parameter that can have one of following values:
  • Default  - authentication is NOT required as long as your device is unlocked
  • Always - authentication is required each time before executing, editing, duplicating or deleting the Macro. Use this mode if the Macro contains sensitive information (passwords etc.)
  • Never - authentication is not required even if device is locked (more details below)


Macro Authentication options

If USB Remote Macros widget (extension) is enabled, it is possible to execute Quick Macros from lock screen. By default, application will request authentication. If you want to skip this step, open the Macro in Macro Editor and change Authentication parameter to Never. Important: anyone with physical access to your iOS device will be able to execute such Macro, even when they do not know your passcode.

USB Remote Macros widget visible on lock screen

Added Macro Timing options:

It is now possible to set individual Timing options for each Macro:
  • Auto add delays - a short (100ms) delay is automatically added after each keyboard Macro Action and Mouse Click Macro Action
  • Auto sync. USB interfaces - prevents from executing keyboard and mouse actions simultaneously

Actions are automatically added when a macro is being executed and do not appear in Macro Editor. If a Delay Macro Action is added manually it overrides Auto add delays option. Main goal here is to reduce number of Macro Actions that you have to add manually when creating a Macro.

As a result of this change, option to Add short delays was removed from global app settings, since it worked almost exactly like Auto add delays.

Example: 
following Macro is created:
  • Type text: some_command
  • Press key: Enter
  • Delay: 500ms
  • Type text: some very long text....
  • Mouse click: 1x left button

executing the Macro can result in following problems:
  1. Enter key will be pressed immediately after some_command is typed. For some USB hosts this may be too fast
  2. because USB keyboard and mouse interfaces are independent, mouse click will occur before some very long text.... is typed (most likely right after typing "s")
a) if  Auto add delays is enabled, the Macro will be executed as:
  • Type text: some_command
  • Delay: 100ms (added during execution)
  • Press key: Enter
  • Delay: 500ms (overrides auto delay)
  • Type text: some very long text....
  • Delay: 100ms (added during execution)
  • Mouse click: 1x left button
Problem 1.: solved (*)
Problem 2.: may still occur if typing some very long text.... takes more than 100ms

b) if  Auto sync. USB interfaces is enabled, the Macro will be executed as:
  • Type text: some_command
  • Press key: Enter
  • Delay: 500ms (overrides auto delay)
  • Type text: some very long text....
  • Synchronize USB interfaces ( added during execution)
  • Mouse click: 1x left button
Problem 1.: NOT solved
Problem 2.: may still occur if USB host needs more time to process text input

c) if  both Auto add delays and Auto sync. USB interfaces are enabled, the Macro will be executed as:
  • Type text: some_command
  • Delay: 100ms (added during execution)
  • Press key: Enter
  • Delay: 500ms (overrides auto delay)
  • Type text: some very long text....
  • Synchronize USB interfaces (added during execution)
  • Delay: 100ms (added during execution)
  • Mouse click: 1x left button
Problem 1.: solved (*)
Problem 2.: solved (*)

(*) - assuming that a 100ms delay is enough for USB host. If not you must manually add long enough delay.

Macro Timing options

Other:


  • minor UI changes
  • bug fixes

Thursday, 9 April 2020

InputStickUtility v2.03 (iOS)

More text-typing (InputStick test) features:

It is now possible to test different typing speeds (it may be necessary to use decrease typing speed on some USB hosts) and to type pre-defined demo text.


Other:

  • minor UI changes
  • bug fixes

Monday, 30 March 2020

InputStickUtility v2.03 (Android)

Added Display Over Other Apps permission:

Android 10 requires apps running in the background to have "Draw over other apps" permission in order to display popup messages. Because of that it was necessary to add this permission to InputStickUtility app and now it affects devices running Android 10 and Android 9 (so far it seems that the app works properly on earlier Android versions even if the permission is not granted).

If the permission is not granted, InputStickUtility may not be able to automatically show following popup messages:

  • request to enable Bluetooth (if Auto-enable Bluetooth option was not activated in app settings)
  • request to select InputStick device (if you have more than one InputStick)
  • reminder to remove InputStick from USB port (if enabled in settings)
and it will be necessary to click on a notification in order to display popup message.

This popup should appear automatically during connection attempt (if you have 2 InputStick devices)

...but if the permission is not granted you will have to click on a notification in order to display the popup

It is highly recommended to give InputStickUtility the permission if:
  • your device is running Android 10 or Android 9
  • you have more than one InputStick device
  • InputStick is used by apps running in background (KP2A Plugin, USB Remote widgets, USB Remote Tasker plugin)

in other cases you can most likely ignore warnings about missing permission.

How to manage the permission?
open InputStickUtility → click Settings icon (top right corner) → Display over other apps → enable Allow display over other apps

How to disable permission warning?
If you are running Android 8 or earlier and everything works correctly you can disable warning messages. To do that: 
open InputStickUtility → click Settings icon (top right corner) → disable Display warning message option

InputStickUtility settings screen


Added macOS keyboard setup assistant:

When InputStick is plugged in for the very first time macOS will launch "Keyboard setup assistant" in order to identify keyboard type. Now you can use InputStickUtility to press keys necessary to detect keyboard type. Make sure to select correct keyboard layout (must be the same as layout used by your Mac).

macOS keyboard setup assistant


More text-typing (InputStick test) features:

It is now possible to test different typing speeds (it may be necessary to use decrease typing speed on some USB hosts) and to type pre-defined demo text.



Added option to add device manually:

If for some reason your Android device is not able to discover InputStick via Bluetooth scan, you can use another device to get Bluetooth MAC address of your InputStick and enter it manually.


Provide MAC address and select Bluetooth version (BT4.0 in most cases)


Other:


  • optimized for Android 10
  • UI improvements
  • bug fixes



Saturday, 28 March 2020

KP2A plugin v1.44

Here's what's new in KP2A plugin v1.44:

Added "Type from clipboard" popup:

On Android 10 applications are not allowed to access system clipboard while running in the background. Because of that the plugin must display a popup screen in order to get text from system clipboard.

If your device has Android 10 and you want to type text from clipboard:
  • copy text to system clipboard
  • open KP2A Entry menu
  • select Clipboard action (must be enabled in plugin settings)
  • click on notification to open up Type from clipboard popup screen
  • press Type or Type+Enter button

Click on a notification

"Type from clipboard" popup screen will appear


If your device has Android 9 or earlier you can still use old method:
  • open KP2A Entry menu
  • select Clipboard action (must be enabled in plugin settings)
  • copy text to system clipboard
  • text will be automatically typed


Other:

  • Display Over Other Apps permission changes now also affects Android 9 devices

Thursday, 27 February 2020

KP2A plugin v1.43

Here's what's new in KP2A plugin v1.43:


Added "Display over other apps" permission:

This change affects only devices running Android 10 and later. Due to changes in Android OS it is now necessary for an app to have special permission to display UI when running in background. KP2A plugin needs to display UI when certain actions are requested, like for example: typing "Masked" password or executing a macro. If such action is requested, the plugin will ask user (by showing popup text message and notification) to grant it permission to "Display over other apps". Click on the notification and allow the plugin to display over other apps.



The permission screen can be quickly accessed from plugin settings by selecting Display over other apps. You can also access it from Android system settings.





Monday, 3 February 2020

USB Remote v1.51 (iOS)

USB Remote v1.51 update should be available within next few days. Here's what's new:


Added support for dark mode:

All app screens are now fully compatible with dark mode (available in iOS 13).



Added labels in macro widget:

Macro widget will now display labels with macro names (only when in expanded mode).



Retry/reconnect:

It is now possible to quickly reconnect or retry connection attempt using a button available on error dialog.



Fixed fullscreen mode bug:

When Remote screen goes into fullscreen mode it should now properly auto-rotate on all supported iOS versions.



Other:

  • "Type" share extension supports older iOS versions
  • bug fixes
  • minor UI improvements


Friday, 31 January 2020

InputStickUtility v2.01 (iOS)

InputStickUtility v2.01 update should be available within next few days. Here's what's new:

Added support for dark mode:

All app screens are now fully compatible with dark mode (available in iOS 13).



Other:

  • bug fixes
  • minor UI improvements