Saturday, 5 October 2019

InputStickUtility v2.00 (iOS)

Many improvements and bug fixes:

Even though the app looks almost identical to previous release (v1.01), significant parts of the app were redesigned from scratch. Application is now also more user-friendly, providing more detailed error messages and possible solutions when a problem is encountered. 


Minor UI changes:


  • application will mark recommended actions (enabling password protection, firmware update) and required actions (provide password)
  • application will provide explanation if there is a encryption-related problem or configuration changes are locked
  • firmware update, USB configuration and security-related screens were slightly redesigned


Optional firmware update (v1.10):

You can now update your InputStick to the latest available firmware (v1.10). Main new feature is an option to exchange encryption key via USB. More info below.

Firmware update

Supports new firmware features (exchange encryption key via USB):

It is now possible to exchange encryption key via USB. Here's how it works:

  • open simple text editor (Notepad etc.)
  • plug InputStick into USB port
  • open InputStickUtility → select device → switch to Security tab → Set/Change password → Generate password → adjust options → Generate password
  • InputStick generates password and types it (as a keyboard)
  • re-type password into InputStickUtility
  • the app verifies if it can establish encrypted connection using entered password. If yes, encryption key is saved

This method takes a bit more time than exchanging encryption key via Bluetooth, but in most cases should be more secure, preventing against eavesdropping attacks.

Generate password

Added in-app Help section:

In-app help is now available. It contains information about InputStick security features, shows how to troubleshoot connection problems, restore factory defaults and recover firmware.

Help section

Wednesday, 25 September 2019

KP2A plugin v1.41

Added option to keep plugin constantly running in the background:

If the plugin is not working correctly on your device:

  • entry/field actions are (sometimes) not displayed
  • entry/field actions are displayed but do not work at all when selected


you can now set the plugin to always run in the background, to see if it helps in any way:
Settings → scroll to the very bottom → check Never stop plugin

Note: it seems like in some cases, turning off battery optimization for the plugin may help:
System settings → Apps -> KP2A InputStick Plugin → Advanced → Battery → Battery optimization → add the plugin to list of Not optimized apps 
You should try this first, before enabling Never stop plugin.


Other:

minor bug fixes and improvements

Wednesday, 18 September 2019

InputStickUtility v2.00 (Android)

Redesigned UI:

InputStickUtility was redesigned from scratch. New interface is much more intuitive and easier to use.

Main screen

All important info in one place
Configuration options

Security options

Compatible with Android 10:

InputStickUtility is now compatible with Android 10. Unfortunately this required changes that make it no longer compatible with apps that use old versions of InputStick API (USB Remote and KP2A InputStick plugin both use latest API and won't be affected by this issue).

If after updating InputStickUtility to v2.00, your app crashes on connection attempt ask app developer to update the app using the latest InputStick API. If you have Android 9 or earlier you can switch to InputStickUtility v1.60 until the update is ready.


Requires Android 4.4 or later:

Older Android versions are no longer supported in new app releases. You can still use InputStick with older devices, however you are limited to InputStickUtility v1.60 (supports Android 2.3 up to 9.0).

Optional firmware update (v1.10):

You can now update your InputStick to the latest available firmware (v1.10). Main new feature is an option to exchange encryption key via USB. More info below.

Supports new firmware features (exchange encryption key via USB):

It is now possible to exchange encryption key via USB. Here's how it works:

  • open simple text editor (Notepad etc.)
  • plug InputStick into USB port
  • open InputStickUtility → select device → switch to Security tab → Set/Change password → Generate password → adjust options → Generate
  • InputStick generates password and types it (as a keyboard)
  • re-type password into InputStickUtility
  • the app verifies if it can establish encrypted connection using entered password. If yes, encryption key is saved

This method takes a bit more time than exchanging encryption key via Bluetooth, but in most cases should be more secure, preventing against eavesdropping attacks.

Generate password

Improved device discovery:

When scanning for nearby Bluetooth devices, devices named InputStick are marked with green color. When LE scanning mode is used (recommended by the app, unless you have InputStick BT2.0) other Bluetooth devices will not appear on the list, making it easier to find your device when there are many Bluetooth devices nearby.

InputStick devices are now marked with green color


Simplified app settings:

Settings that were no longer used or could be confusing were removed.

New Settings screen

Added Help section:

In-app help is now available. It contains information about InputStick security features, shows how to troubleshoot connection problems, restore factory defaults and recover firmware.

Help section: how to restore factory defaults

Improved widgets and Tasker actions:

Widgets and Tasker actions will now work correctly when device name is changed. Important: old widgets and actions are no longer supported, you must delete old ones and create new widgets / Tasker actions.

Other:

Multiple bug fixes and minor improvements.

Saturday, 14 September 2019

Android apps compatibility

In order to make InputStickUtility compatible with Android 10, it was necessary to make some changes that make it no longer compatible with some apps using older versions of InputStick API  when running on Android 8 or higher (USB Remote and KP2A plugin are NOT affected by this issue).

Android 10 (and some Android 9 devices):

  • you must update InputStickUtility to v2.00 (older versions will not work correctly)
  • if an app crashes on connection attempt, ask its developer to rebuild the app using the latest available InputStick API (more info below)

Android 8 - Android 9:

  • you should update InputStickUtility to v2.00
  • if an app crashes on connection attempt, ask its developer to rebuild the app using the latest available InputStick API (more info below)
  • if that is not possible, download InputStickUtility v1.60 (link below)

Android 4.4 - Android 7.1:

  • you should update InputStickUtility to v2.00
  • all apps should work normally (even older ones)

Android 2.3 - Android 4.3:

  • your device is not supported by InputStickUtility v2.00, download InputStickUtility v1.60 (link below)
  • all apps should work normally (even older ones)

Download URLs:

InputStickUtility v2.00 (Google Play Store)
InputStickUtility v2.00 (.apk)
InputStickUtility v1.60 (.apk, signed with debug certificate, will not get updated via Google Play)


More details:

  • USB Remote and KP2A InputStick plugin use latest InputStick API and are 100% compatible with InputStickUtility v2.00
  • apps that use InputStickUtility as proxy  using IPC connection method (most popular one) must use latest InputStick API in order to work with InputStickUtility v2.00
  • apps that use InputStickUtility as proxy using broadcasts are not affected
  • apps that connect directly to InputStick are not affected

App developers:

If your app uses IPC connection method, make sure that it was built using latest InputStick API:

or find: IPCConnectionManager.java file and replace line:

mCtx.startService(intent);

with:

if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
mCtx.startService(intent);
} else {
mCtx.startForegroundService(intent);
}

Your app uses IPC connection if following method is used (from InputStickHID class):
connect(Application app)



Tuesday, 13 August 2019

KP2A plugin v1.40

What's new in KP2A plugin v1.40:

New app icon:




Improved masked password UI:

Typed characters are now marked in a more visible way (green text color instead of dark green background).
Typing masked password

Other:

  • fixed bug when queuing multiple actions (Type+Enter etc.) did not work properly when InputStick is disconnected
  • optimized for Android Pie

Sunday, 9 June 2019

USB Remote for iOS v1.40

What's new in USB Remote v1.40 (iOS): 

"Type" Share Extension:

You can now use USB Remote app to type URLs, selected text and text from text files. Here's an example showing how to type content of .txt file:


Using "Files" app, locate text file, long press, select "Share"

Select "Type" (or "More → "Type")

If necessary, modify text or settings and press "Type"

Important: USB Remote and extension can NOT be both connected at the same time. Make sure to disconnect USB Remote before using extension. The extension will automatically disconnect once it is done typing.

Other:

  • bug fixes

Tuesday, 7 May 2019

USB Remote for iOS v1.33

What's new in USB Remote v1.33 (iOS): 

New auto-connect options:

You can now choose between 3 different modes for Auto-connect feature (Control tab → Settings General Auto-connect):

  • Disabled
  • Smart auto-connect: recommended if you have more than one InputStick. Application will try to connect to the most recently used device. If the attempt fails, auto-connect will be temporarily disabled, until you manually reconnect to the most recently used device or connect to a different InputStick
  • Always auto-connect: recommended if you have one InputStick. Application will always try to auto-connect to the most recently used device


Other:


  • added missing dead keys for US International and Dutch keyboard layouts
  • connection errors will now be ignored when app is in background (connection error dialog will not be displayed)
  • uses updated InputStick API