Sunday, 8 January 2017

USB Remote v1.61

What's new in USB Remote v1.61.

Secondary keyboard layout.

It is now possible to set "secondary" keyboard layout and quickly toggle between primary and secondary keyboard layouts. To set secondary keyboard layout go to SettingsGeneral -> Keyboard layout (secondary).

Select keyboard layout with just a single click.

Touch screen interface.

This version supports touch screen interface that was introduced in InputStick 0.98D optional firmware update. See this post for more details. 

How is touch screen interface different from mouse interface? Instead of moving cursor left/right/up/down from its current position, it is instantly moved to a desired location on the screen (corresponding to where mousepad area was clicked: touch center of the mousepad area - cursor will be moved to center of your PCs screen). Touch screen interface is most useful when used in macros: you can always be sure that cursor will be moved to desired point on the PCs screen, no matter what was its initial position. For controlling cursor in real time, most users will most likely still get better experience when using standard mouse interface.
If you do decide to try touch screen mode, it is recommended to adjust proportions of mousepad area, so that it matches resolution of your screen (for example: 16:9). This will give you better approximation of there mouse cursor will be moved to. Touch screen mode works best when mousepad areas are large: when "mouse" tab is used or if the app is running on a tablet.


Default mousepad area (fills entire available space)

Mousepad area with ratio set to 16:9

To enable touch screen mode: Settings  Mouse tab and mousepads  Mousepad mode  select Touch-screen. When Mousepad mode is set to Touch-screen mode you can also change Mousepad ratio to make it the same as your PCs screen ratio. Select one of pre-defined values or enter custom one.

When creating macros, in most cases touch screen interface will get you much better results than using mouse interface: you can always be sure that the mouse cursor will be moved to desired location (but changing screen resolution or running the macro on a different PC may require adjustments). Here's a very simple example of a macro using touch screen interface:

<name>TouchScreenMacro
<touch>0,5000,5000
<click>left,2

Running the macro will move cursor to the center of the screen and then double click left mouse button (using standard mouse interface to press and release button). 

Touch macro action parameters are: button,X,Y.
  • button: 0 - released, 1 - pressed. Touch screen interface has one button which behaves the same way as left mouse button. Press the button to drag objects. For clicks you can use click macro action (uses mouse interface)
  • X and Y coordinates are in range from 0 to 10000, where 10000 corresponds to 100% of vertical/horizontal resolution of PCs screen.


New keyboard layouts.

Added Greek (el-GR), Belgian (fr-BE), Croatian (hr-HR), Czech (cs-CZ, programmers) keyboard layouts.

Thursday, 5 January 2017

KP2A plugin v1.07

What's new in latest update of KP2A InputStick Plugin:

  • added Greek (el-GR), Belgian (fr-BE), Croatian (hr-HR) keyboard layouts,
  • added option to select "Data transfer method".

Here's some more information about "Data transfer method" options. In most cases the plugin should work just fine and there is no need to change anything. However, some users may be experiencing following problems:
  • often failures when Bluetooth connection is being established (and as a result text can be typed twice when connection is finally established),
  • text not being typed typed sometimes,
in such case you should change "Data transfer method" option to "Use broadcasts". It is possible that this option will perform better with your device. To change "Data transfer method" go to plugin Settings and scroll down to "InputStick connection settings" section.

Wednesday, 4 January 2017

InputStickUtility v1.49

What's new in latest InputStickUtility v1.49 update:

  • Remind-to-remove notification sound can be changed: if you don't like system-default notification sound or simply don't want to confuse remind-to-remove warning with other notifications, you can now choose one from three sounds available. See application Settings section.
  • FW 0.98D optional firmware update: adds touch screen and raw HID (must be enabled manually) interfaces. For more information and instructions, see previous post: Firmware 0.98D and API update.
  • Added Greek (el-GR), Belgian (fr-BE), Polish Linux (pl-PL), French Linux (fr-FR) keyboard layouts. 

Tuesday, 3 January 2017

Firmware 0.98D and API update

Firmware 0.98D

Next update of InputStickUtility application will come with optional 0.98D firmware. This optional update will allow you to test new features: touch screen and raw HID interfaces.

How to update to 0.98D firmware:

  • make sure you have InputStickUtility v1.49 (will be released in about a day),
  • run app → My Devices → select your InputStick device → click on more (dots icon) → Firmware Upgrade,
  • InputStickUtility cannot tell if your device is using 0.98 or newer version (0,98B etc.) so it will display dialog informing that you are already using the most recent firmware version. Select Yes option,
  • select v0.98D → Flash.

Touch screen interface:

by emulating touch screen it allows to move mouse (touch) pointer to a desired point on the screen. The point is specified by X and Y coordinates, each in range of 0 - 10000, where 10000 is 100% of vertical or horizontal resolution. Example: 5000, 5000 always moves pointer to the center of the screen. 
What makes it different from USB mouse interface, is the fact that the coordinates are absolute, so you can always be sure that pointer will be moved to the same point of the screen, no matter what was the initial position of the mouse pointer. This makes touch screen interface better choice for macros, while USB mouse interface feels more natural (similar to touchpad) for controlling mouse pointer in real time.
Next update of USB Remote application will add support for touch screen interface (all mousepad areas and macros). Touch screen interface was tested and works properly on: Windows 7 and up, Linux Mint, OS X (10.12). Does not work when Android OS is used as USB host.

Raw HID interface:

allows for two-way communication with USB host by sending and receiving 64 bytes packets via USB HID reports. Requires no drivers and is supported on Windows, Linux and OS X. For more information about raw HID, examples and source code, please visit PJRC raw HID webpage.

Important: raw HID interface is not enabled in default configuration! Raw HID replaces consumer control (multimedia keys), gamepad and touch screen interfaces! 

How to enable raw HID interface:

  • make sure you have InputStickUtility v1.49,
  • run app → my devices → select your InputStick device → configuration (padlock icon),
  • if your device is not password protected unplug it and plug it again now,
  • Connect → USB Config → Select "Keyboard, Mouse, Raw HID..." option → (optionally modify USB VID and PID, see tip below) → Set configuration.

Tip: if you want to use demo applications from PJRC website without and software modifications, in USB Config step, select "Show advanced" and modify values for USB VID and PID to: 16C0 and 0480 respectively. This will make InputStick pretend to be Teensy board.

API update

What's new in latest InputStickAPI update:

  •  supports touch screen interface (com.inputstick.api.basic.InputStickTouchScreen),
  •  supports raw HID interface  (com.inputstick.api.basic.InputStickRawHID), to receive raw HID packets you must implement InputStickRawHIDListener,
  •  added Greek (el-GR) and Belgian (fr-BE) keyboard layouts.