IMG Home PageIMG ProductsProduct DownloadsOrdering InformationTechnical Support and Frequently Asked QuestionsDeveloper's Corner and UtilitiesAbout IMG
CustomersIMG ResellersMedia InformationIMG Events / Trade ShowsUseful LinksIMG Contact InformationIMG Information / Policies
Translate
 
IMG's Blog - Recorded Keystrokes

IMG's Blog - Recorded Keystrokes

My-T-Soft for Android 10 - 2.20.208 Release
written May 26, 2021 by Kermit Komm
Category: Development Tags: My-T-Soft; Android; Build-A-Board    #96
 

The latest update of My-T-Soft for Android is now available. Due to changes in security and modifications to the Input Method Manager / Input Method Service in the Android 10 release, a targeted release once again made the most sense.

Security changes regarding shared storage and local storage access (used for custom keyboard layouts, settings, etc.) required specific changes to operate on Android 10. Also, there were specific changes to the Input Method Manager and Input Method Service (which My-T-Soft uses as an alternate Input Method), and older release code was no longer compatible with the privileged operations necessary to operate on Android 10. Due to these issues and lack of backwards compatibility (or potential different issues) in handling a multiple API targeted release, an API 29 only release was chosen. Without getting into the technical aspects, it is important to note that the security and architectural changes were not unknown when Android development began, so it is a bit disconcerting that these changes were implemented after such a long release history. It is also relevant to note that because My-T-Soft interacts as an Input Method Service, this change would not affect normal/user level apps, because this was specific to the type of interface that an on-screen keyboard requires in Android.

With the code rework and specific changes for Android 10 all "behind the scenes", this release is essentially the same as previous releases. The one minor feature added was an ability to set the Default Keyboard layout via the Keyboard Layouts (Boards), so that once a board is selected, you can select the Set Default Layout to copy the currently selected layout to KEYBOARD.KBF (so this will be the default/first opened layout). In previous releases, this was best handled by integrating with your Build-A-Board.com Account, manually handling when your device was connected to a laptop or desktop, or manipulating via a Files app. Now this can be managed within the My-T-Soft Settings directly.

For those not yet familiar with My-T-Soft for Android, key features include the ability to customize layouts with IMG's Build-A-Board, tie layouts together into sets, position layouts anywhere on the screen, and customize key actions with keystroke macros and internal commands (Launch Apps, Open New Keyboard File, etc.). The software installs as another input method, and can be swapped in & out with other methods. My-T-Soft for Android can tie into accounts at Build-A-Board.com, so favorite boards can be quickly brought onto any device, and provides access to the ever growing online database of onscreen keyboard layouts. Because layouts are customizable, key sizes are flexible, and both text and images can be used on keys, the possibilities for optimizing the user input interface are endless.

My-T-Soft for Android 2.20.102 Release
written November 5, 2020 by Kermit Komm
Category: Development Tags: My-T-Soft; Android; Build-A-Board    #95
 

The latest update of My-T-Soft for Android is now available. Because of deprecated API calls used by the existing code, a break was made in updating My-T-Soft to run on Android 9 (API 28). Also, to address customer needs, a new undocked (or floating) keyboard option has been added.

Some background - for those who are not developers, the API (or Application Programming Interface) is the set of code that allows programs to interact with the underlying operating system. When code is deprecated, it means it is being removed or replaced - it may still be supported, or it may be phased out over time. So when facing this, code must be refactored to move forward with the API. So due to changes in the Android API, the operation of My-T-Soft changed when running in Android 9. In earlier versions of Android, a custom board that stretched from top to bottom could still operate with applications and not obscure the application. Due to code that was deprecated and no longer available, when My-T-Soft ran on Android 9, the area reserved for the Input Method (IME) stretched to the top of the screen, and effectively pushed the application view away (resulting in non-functional situation). To resolve this within the API 28 (Android 9) environment, a new feature, the undocked (or floating) keyboard was added. This provided a completely different approach to the screen, and allowed the My-T-Soft keyboard to be positioned anywhere, and not change the underlying application's view. Because of the infinite possibilities using Build-A-Board and the flexibility needed to create the optimal user interface, this feature/capability that worked in previous version of Android needed to be carried forward, and the best way to handle this was with this new, optional feature.

For those not yet familiar with My-T-Soft for Android, key features include the ability to customize layouts with IMG's Build-A-Board, tie layouts together into sets, position layouts anywhere on the screen, and customize key actions with keystroke macros and internal commands (Launch Apps, Open New Keyboard File, etc.). The software installs as another input method, and can be swapped in & out with other methods. My-T-Soft for Android can tie into accounts at Build-A-Board.com, so favorite boards can be quickly brought onto any device, and provides access to the ever growing online database of onscreen keyboard layouts. Because layouts are customizable, key sizes are flexible, and both text and images can be used on keys, the possibilities for optimizing the user input interface are endless.

Windows Update affects Joystick-To-Mouse operation
written September 9, 2020 by Kermit Komm
Category: Development Tags: Joystick-To-Mouse; Windows 10 Updates    #94
 

We have confirmed that the v2004 update has a deleterious affect on the operation of Joystick-To-Mouse. We have also confirmed that Joystick-To-Mouse properly operates on the v1903 update. There are certain requirements that Microsoft puts on User Interface programs - it needs a manifest with uiAccess set, it must be code-signed, it must run from a secure location (e.g. Program Files), etc. For years, Joystick-To-Mouse has properly operated on Windows 10. Now with the May 2020/Version 2004 rollout, it appears that the "Updates to improve security when using input devices (such as a mouse, keyboard, or pen)", Microsoft has introduced a problem, or requires some other setting, or requires a fix. They are releasing patches and updates, and it is possible that the issue that they introduced gets resolved on their end. We are investigating to learn what (if anything) we can do to help our customers. Any customer impacted by this may want to notify Microsoft directly. Note that you may have the option to roll back the update (Settings | Update & Security | Windows Update | View update history | Uninstall updates), and also to Pause updates.

It is unfortunate that Microsoft has chosen a path that can create issues such as this, where you can wake up one day and have your carefully configured, totally operational system become a useless pile of electronic components that leads to frustration, loss of productivity, and loss of the precious moments of your life. Today, most people just want things to work, and certainly don't want a third party to be able to take away a working system. While there are valid reasons for performing updates, it is unfortunate that proper care and testing are not handled by Microsoft, and problems such as these end up as a burden on the paying customer.

We will continue to monitor and review this situaton, and update this blog entry if anything subtantial is discovered.

Update: We put our development team on this, and they discovered the Joystick messages MM_JOY1MOVE, MM_JOY1BUTTONDOWN, etc. were no longer being received after a joySetCapture call, as has happened for 20+ years. In checking Microsoft's API documentation, there is no indication these are deprecated or being phased out. However, there is a newer alternative API option, and with several modifications to the main JOY2MSE.EXE, a patched download for Windows 10 is now available. You can download the r5 patch install here:
jtm280r5patch_810.exe for Windows 10 v2004 (3.23MB) 9/9/2020 (MD5: 4360F9FBFF485B4619F9DF5387F6A817)

It is recommended that with Joystick-To-Mouse closed/not running, you download and run through install to update/overwrite the Joystick-To-Mouse executables, and then test with this patch.

My-T-Soft for Linux 2.20 Release 8 now available!
written June 15, 2020 by Kermit Komm
Category: Development Tags: My-T-Soft; Linux; Raspberry Pi    #93
 

IMG is pleased to announce that a maintenance update for Linux is now available as My-T-Soft for Linux 2.20 R8 for the following platforms: i386 (32-bit), AMD64 (64-bit), and armv7l (Raspberry Pi 4). This is an ongoing process to bring improvements, new features, and new platforms to the Build-A-Board run-time targets. There are several notes regarding this update that we will cover here. First, in testing on the Raspberry Pi build, a specific sequence issue was discovered with the communication between the My-T-Soft process and the MacroBat process (the keyboard user interface is handled by My-T-Soft (mytsoft), and the Macro Batch processor (macrobat) handles system events/keystrokes/etc.) The ultimate issue was due to the 2 processes, its cross communication, and a code sequence that put a communication event a few lines ahead of a required preparation step to receive acknowledgement. As it turned out, on faster systems with good multiple CPU process handling, the issue never appeared, but on the Raspberry Pi, there were some cases where this sequence issue created an error. This has been addressed in this update, and it also shows why supporting many different platforms helps ensure the best code.

Additional updates include better minimize handling for some specific desktop environments (GNOME/Cinnamon), support for PNG image libraries (1.2 and 1.6), and some new capabilities to be rolled into other platforms. One important aspect of the My-T-Soft family has been the ongoing customizable capabilities to address specific customer needs and the flexibility this brings to the software - the ongoing evolution of the user interface...

Now that the libpng 1.6 is more common than libpng 1.2, updates to allow either version have been added. Linux and its various distros are going through a "backwards compatibility" reality, and this is being addressed in various ways by different groups. Things like Snap, Flatpak, and Appimage include required libraries packaged with the app vs. relying on the underlying system, but then these pre-packaged software sets then require an environment able to handle these packaged versions of code. Along those lines, My-T-Soft for Linux has always been built at a "lowest common denominator" level, and dynamically links to the PNG image library, so even though the 1.6 was on a system, earlier versions of My-T-Soft simply reported the issue, but ran normally (without image support). With this update, it will handle image display whether the 1.2 or 1.6 version is available.

One interesting aspect of Linux is the ability to have different desktop environments and window managers, X servers, etc., etc. These are identified by names like GNOME, KDE, Cinnamon, MATE, Xfce, LXDE, LXQt, Budgie, and others. It would be awesome if there was a standard way to create a program that relies on the graphical environment and have it work flawlessly in all of these disparate environments, but that is becoming increasingly difficult. My-T-Soft, by relying on the XLib interface (which goes back to the beginning of graphical environments for Unix/Linux), runs properly on all of these, with some exceptions based on specific environments. Now with the 2.20 R8 update, a system inquiry is used to determine which environment is in use, and if needed, code to accommodate these differences will be used. One notable exception is the GNOME 3 interface, where in their default environment, My-T-Soft will not type. This is due to the decision not to support the X Lib based interface for allowing virtual keystrokes due to design implementations made by the GNOME 3 development team. As one option, they provide GNOME 3 on the XOrg server, where My-T-Soft then operates properly. So this backwards compatibility issue means that My-T-Soft would have to accommodate GNOME 3 vs. GNOME 3 handling an interface that has worked for decades, and works on every other environment we have tested on. This compatibility issue seems to be becoming more prevalent, which is unfortunate, because it either means writing exception code, redoing code to accommodate problematic environments, or living with incompatible systems. None are truly acceptable to the world view as seen by My-T-Soft, but it is the reality which seems to be upon us. To the average user, having to deal with something like this is confusing and certainly not conducive to "ease of use" concerns.

To see some sample layouts and the run-time for Linux that allows layouts built by Build-A-Board to run in Linux and Raspberry Pi systems, see the My-T-Soft for Linux Downloads page.

About IMG

Since 1995, Innovation Management Group has been the primary supplier of onscreen keyboard user interfaces and designer utilities to major corporations, manufacturers, integrators, and users worldwide. IMG's products run 24 hours a day, 7 days a week, on some of the most secure, advanced, and critical systems in the world.

The My-T-Soft® Family along with IMG's Build-A-Board Keyboard Designer offers a consistent cross-platform onscreen user interface that is fully customizable and programmable for various hardware / software platforms. It allows customers to control user input in any field or any application and maintain a higher level of security than with a traditional physical keyboard or membrane panel. The My-T-Soft product family is ideal for use in environments such as automation, field service, food and beverage, instrumentation, in-vehicle, kiosk, laboratory, logistic, medical, military, mobile, pharmaceutical, ruggedized, utility, warehousing, whiteboard, or other extremely clean, dirty, or hazardous interactive user environment.

My-T-Soft released for Raspberry Pi
written March 20, 2020 by Kermit Komm
Category: Development Tags: My-T-Soft; Linux; Raspberry Pi    #91
 

One of the key things that went into the design of the My-T-Soft run-time 2.x software was to support cross platform deployment, and due to the nature of Linux, the operating system has been ported to all types of architectures and systems. So when we were asked to be involved and incorporate My-T-Soft into a Raspberry Pi project, it made sense to compile and target the raspbian version (a modified version of Debian Linux that is optimized and runs on the Raspberry Pi). As we typically do with any new release, it is now available for Download at the My-T-Soft for Linux Downloads page.

One thing of note - for images, the current default PNG library on the latest raspbian is version 16, while the current build targets the older version 12. The PNG lib 12 is available on the Pi, so if using images with My-T-Soft, you will want to redo the symbolic link libpng.so to the 12 version vs. the default 16. For further information on image support and the PNG libraries in Linux, see the Help page here.

As is typical with the My-T-Soft family, development moves forward in various steps, and some of the new features required for this project will roll into the main released software for all currently supported platforms. Stay tuned for exciting and interesting features in My-T-Soft!

About IMG

Since 1995, Innovation Management Group has been the primary supplier of onscreen keyboard user interfaces and designer utilities to major corporations, manufacturers, integrators, and users worldwide. IMG's products run 24 hours a day, 7 days a week, on some of the most secure, advanced, and critical systems in the world.

The My-T-Soft® Family along with IMG's Build-A-Board Keyboard Designer offers a consistent cross-platform onscreen user interface that is fully customizable and programmable for various hardware / software platforms. It allows customers to control user input in any field or any application and maintain a higher level of security than with a traditional physical keyboard or membrane panel. The My-T-Soft product family is ideal for use in environments such as automation, field service, food and beverage, instrumentation, in-vehicle, kiosk, laboratory, logistic, medical, military, mobile, pharmaceutical, ruggedized, utility, warehousing, whiteboard, or other extremely clean, dirty, or hazardous interactive user environment.

Archives

Archive Year: 2018

Archive Year: 2017

Archive Year: 2016

Archive Year: 2015

Archive Year: 2014

Archive Year: 2013

Archive Year: 2012

Archive Year: 2011

Archive Year: 2010

View Current
View Company News
View Technical
View All

Blog Information

My-T-Soft for Android 10 - 2.20.208 Release
May 26, 2021
Kermit Komm
Category: Development
Tags: My-T-Soft; Android; Build-A-Board
 

My-T-Soft for Android 2.20.102 Release
November 5, 2020
Kermit Komm
Category: Development
Tags: My-T-Soft; Android; Build-A-Board
 

Windows Update affects Joystick-To-Mouse operation
September 9, 2020
Kermit Komm
Category: Development
Tags: Joystick-To-Mouse; Windows 10 Updates
 

My-T-Soft for Linux 2.20 Release 8 now available!
June 15, 2020
Kermit Komm
Category: Development
Tags: My-T-Soft; Linux; Raspberry Pi
 

25 Years!
May 12, 2020
Kermit Komm
Category:
Tags: IMG; Innovation Management Group, Inc.; Anniversary; Silver
 

My-T-Soft released for Raspberry Pi
March 20, 2020
Kermit Komm
Category: Development
Tags: My-T-Soft; Linux; Raspberry Pi
 

Roadrunner Transportation Systems rolls out custom My-T-Soft on hundreds of forklifts
October 25, 2019
Tracy Chang
Category: PR
Tags: Roadrunner Transporation Systems;rrts.com;Emkat;emkat.com;Build-A-Board;My-T-Soft;vehicle-mount;forklift;
 

VR Systems updates EViD Systems to Windows 10 and My-T-Soft 1.90
October 4, 2019
Tracy Chang
Category: PR
Tags: My-T-Soft; Developer's Kit; Integration;
 

Innovation Management Group and Aveva re-affirm long-term partnership
August 14, 2019
Tracy Chang
Category: PR
Tags: My-T-Soft; Build-A-Board; IMG Partnerships; Aveva
 

The My-T-Soft Build-A-Board How To Video Series
June 7, 2019
Tracy Chang
Category:
Tags: My-T-Soft; Build-A-Board; How To Videos;
 

Lubrizol tests custom keyboard, then expands licenses with orders from Insight
March 25, 2019
Tracy Chang
Category: PR
Tags: Lubrizol; Insight; Build-A-Board.com licensing; My-T-Soft; Build-A-Board;
 

Porto Itapoa in Brazil purchases Build-A-Board Platform License
March 19, 2019
Tracy Chang
Category: PR
Tags: Porto Itapoa Brazil; IMG Platform License; My-T-Soft; Build-A-Board;
 

Rolf C. Hagen, Inc. moves to Build-A-Board Platform License
January 24, 2019
Tracy Chang
Category: PR
Tags: Rolf C. Hagen, Inc.; IMG Platform License; My-T-Soft; Build-A-Board;
 


Archives

Archive Year: 2018

Archive Year: 2017

Archive Year: 2016

Archive Year: 2015

Archive Year: 2014

Archive Year: 2013

Archive Year: 2012

Archive Year: 2011

Archive Year: 2010

 
 

IMG Logo
  • IMG's Blog covers company news, development news, and other interesting items.
  • IMG is dedicated to innovative ideas and turning those ideas into real-world solutions that provide value, increase productivity, and enhance technology.

Send IMG a note via e-mail...
IMG Home PageIMG ProductsProduct DownloadsOrdering InformationTechnical Support and Frequently Asked QuestionsDeveloper's Corner and UtilitiesAbout IMG
CustomersIMG ResellersMedia InformationIMG Events / Trade ShowsUseful LinksIMG Contact InformationIMG Information / Policies