Development tools for the integrated Barcode Scanner

4 May 2014

Wedge input and other events that occur through the built-in Barcode Connector utility can be captured by other running programs. Alternatively, the integrated barcode scanner was designed for compatibility with the Motorola (Symbol) barcode SSI (Simple Serial Interface) commands. The following development tools and sample code can help facilitate the development of programs for capturing and/or controlling barcode activity.

Barcode Connector Events and other settings

Note: Updating the built-in Barcode Connector utility to version 2.5.5 or higher may be required. Or if directly controlling the barcode, then removal of Barcode Connector but leaving COM3 enabled may be required. See below or contact techsupport@junipersys.com for more info.

JS-Barcode-Connector-NET.zip (C# sample app showing how to capture events of the Barcode Connector Utility)

New developer features in version 2.5.5 and higher of the Barcode Connector utility include the following.

The hardware target (trigger) key on the Archer 2 is a Windows Mobile Hot Key (soft key) that can be set to launch an event/app under Start > Settings > Personal > Buttons, or to perform any function while an app is running (has focus) such as is described at these web pages.

By default, when this key is pressed it launches an app event called “BarcodeButtonEvent” which your app could monitor for and react to as does our own Barcode Connector utility.

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd)

{

HANDLE hEvent;

hEvent = CreateEvent(NULL, FALSE, FALSE, L"BarcodeButtonEvent");

SetEvent(hEvent);

CloseHandle(hEvent);

return 0;

}

 

Directly controlling barcode scanner through SSI commands

Before being able to directly control the built-in barcode scanner, you must disable the built-in Barcode Connector utility software. Some brief instructions are as follows.

  1. Delete a file: "\Windows\StartUp\Barcode Connector.lnk"
  2. Delete a file: "\Windows\Start Menu\Programs\Barcode Connector.lnk"
  3. Remove barcode connector icon on JSHome by change a registry from: [HKEY_LOCAL_MACHINE\Software\JuniperSys\JSHome\Apps] "App4"="\Windows\Start Menu\Programs\Barcode Connector.lnk" to make the icon space empty "App4"="" or you can change the value of App4 to point to a .lnk file of your new app
  4. Copy over your new app along with SSIDLL.dll
  5. Reboot

After disabling Barcode Connector, you must enable COM3 using the following registry keys then Reset.

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\Serial3]"Enable"=dword:1

[HKEY_LOCAL_MACHINE\Juniper\Expansion\GPIO_07] "Function"=dword:1 ; 0 = GPIO, 1 = COM3_RTS

[HKEY_LOCAL_MACHINE\Juniper\Expansion\GPIO_08] "Function"=dword:1 ; 0 = GPIO, 1 = COM3_CTS

[HKEY_LOCAL_MACHINE\Juniper\Expansion\GPIO_09] "Function"=dword:1 ; 0 = GPIO, 1 = COM3_RXD

[HKEY_LOCAL_MACHINE\Juniper\Expansion\GPIO_10] "Function"=dword:1 ; 0 = GPIO, 1 = COM3_TXD

Once all of this has been done, you can use the following resources to develop your software.

Though the information provided in the following web document link may not directly apply, it may be useful for reference during development.

Motorola Simple Serial Interface Developer's Guide (pdf)

The full Motorola Solutions SSI SDK and SMDK / EMDK are not compatible with the integrated barcode scanner.

The newer RhoElements tools have so far been untested, but some web browsers for our rugged handheld computers which may provide HTML5 support are listed at the following web page.

Web browsers for Microsoft Windows Mobile