Zebra Plastic Card Printers.

Zebra Plastic Card Printers come in a variety of styles and price ranges, including single-sided printers, dual sided printers, and security printers

Healthy Solutions for Healthcare.

The healthcare industry benefits from barcoding. Barcoding enhances patient safety and operational efficiency.

Seagull Scientific Products

Seagull Scientific BarTender is an industry-leading label design and barcode software. Seagull Scientific also develops true Windows printer drivers for bar code and thermal printers.

MC 9190G

The Ability To Satisfy Your Company Software Requirements.

Wireless Broadband

The unrivalled Motorola portfolio of Point-to-Point (PTP), Point-to-Multipoint (PMP), and Mesh Wide Area Network (MWAN), WLAN and VoWLAN solutions make governments, enterprises, and service providers more agile by helping them deploy voice, video, and data applications right where they need them.

Showing posts with label Barcode Wedge. Show all posts
Showing posts with label Barcode Wedge. Show all posts

Tuesday, 29 June 2010

Android Bluetooth Reader, Keyboard Wedge

In the past few months TEC-IT developed an Android App for data acquisition with Bluetooth and TCP. The good feedback of the Android community motivated us to further enhance this app. The result: an universal data acquisition app including keyboard wedge functionality.

The app is named GetBlue. The final version is available as slightly restricted freeware as well as commercial application. Here are the highlights:
  • Android Keyboard Wedge / Virtual Keyboard:
    Captured device data can be entered into any application.
  • Supported Input Devices
  • Bluetooth SPP/RFCOMM, TCP (e.g. RFID controllers), HTTP applications and camera scanners apps like the ZXing Barcode Scanner.
  • Supported Data-Sinks:
    Bluetooth SPP/RFCOMM, plain TCP, HTPP via Get and Post, Google Docs Spreadsheets, File.
  • Data Acquisition Proxy / Data Switchboard:
    Acquired data can be forwarded to any supported data-sink.

Universal Data Acquisition App

Use GetBlue like an universal data switchboard: capture data from a data-source and forward it to an arbitrary data-sink. As an example you can adjust GetBlue to collect data from a Bluetooth barcode scanner and forward this data immediately to a Google Docs spreadsheet (refer to the drawing).

What is a Virtual Keyboard?

A virtual keyboard replaces the standard soft-keyboard of Android. Captured data is always made available to this virtual keyboard. Thus, data acquired from a Bluetooth barcode scanner or an RFID tag can be entered into any application which is accepting user input. This works completely independent from the selected datasource and the target app.

Call for Requests!

The internals of GetBlue are very simply to extend (e.g. new protocols, new devices, ...). Just let us know your requirements. Whenever possible we will provide you with a solution. Leave us a comment or send an email to office@tec-it.com.

Free Trial!

Install GetBlue using Android Market on your handset. Search for GetBlue manually or use this link: market://search?q=pname:com.tecit.datareader.android.getblue.demo.

We are looking forward to hearing from you!

Saturday, 5 June 2010

Automated Data Acquisition for Android - Update

TEC-IT (http://www.tec-it.com) published version 0.7 of the Android data acquisition app GetBlue!


GetBlue captures device data and saves this data directly to a local file, to a Google Spreadsheet or forwards it to adjustable HTTP/TCP data logging servers. Bi-directional communication is supported, server responses as well as manually entered data can be sent to the connected device.


Currently the following devices are supported:
  • Any Bluetooth device supporting the Serial Port Profile (SPP, RFCOMM),
  • Any TCP/IP device (IP-Address/Port combination), 
  • And new in this version: any installed camera barcode scanner (e.g. the ZXing camera barcode scanner, cyrket market  information
Currently GetBlue is available as freeware - the manual data acquisition functions are available unlimited. Automated data acquisition functionality (like uploading captured data to a TCP data logger) are slightly restricted. All data collection parameters are adjustable by the user via the Settings dialog. The data-source,  the target server, various data capturing parameters like time-outs, retries, data packet size, etc. are adjustable.

Android owners are using GetBlue for a variety of functions:
  • Testing app for serial Bluetooth devices
  • Automated data collection
  • Simple TCP debugger
  • Bluetooth tester for Android 1.5/1.6 or higher
TEC-IT continues to enhance and extend the app. Every feedback from users is highly welcome. Check out the current version for yourself: Android Market Link (install it directly from the Android Market using your handset).

Monday, 1 February 2010

Software for Mobile Data Acquisition

TEC-IT released the new version of TWedgeCE - a software wedge for mobile devices.

What is TWedgeCE?

Windows CE Software WedgeTWedgeCE captures data from external devices and translates them into virtual keystrokes. It acts as middleware between arbitrary data acquisition devices (like scales, gauges, barcode scanners, RFID controllers, etc.) and software applications like Pocket Excel or Mobile Internet Explorer. TWedgeCE operates in the background of the mobile device and can be configured easily via simple configuration files.

Highlights:

Version 2.0 is able to work with devices via the following interfaces:
  • Serial / RS232
  • Bluetooth (native Bluetooth, no virtual COM ports required!)
  • TCP/IP (client mode)
  • TCP(IP (server mode)
  • UDP (client mode)
TWedgeCE is able to check device connectivity (I-Am-Alive), it recovers lost connections automatically (this is especially of interest for WLAN or Bluetooth connections) and finally introduces an anti-jitter feature.

Availability:

Windows Mobile Software WedgeThe mobile software wedge is available for the following platforms:
  • Pocket PC 2003 SE (Second Edition)
  • Windows CE 5 / Embedded CE 6 (ARMV4I)
  • Windows Mobile 5
  • Windows Mobile 6

Related Software:

Also check out the universal data acquisition software TWedge for Windows operating systems. TWedge offers device connectivity, keystroke simulation, direct database access, direct file access and complete scripting features!

Free Download:

Mobile Software Wedge TWedgeCE, Universal Software Wedge TWedge (for Microsoft Windows)

Tuesday, 26 May 2009

Using a Software Wedge with Citrix XenApp

The Requirement:

Recently a customer of TEC-IT reported some troubles when using the software wedge TWedge on a tablet PC (running XP-based Windows Embedded) in combination with Citrix XenApp v11.0.0.x.
The customer was looking for a solution to connect a Bluetooth barcode scanner (from Intermec) with a legacy database application. Scanned data should be transferred to an input field followed by a TAB key. The database application in question is hosted by an ASP and provided to the tablet PC via XenApp from Citrix.

The Problem:

The initial problem was that the scanned barcode data was not reliable transferred to the database application - scanned data was not transferred completely.

The Solution:

The clipboard-functionality of TWedge solved the problem. Instead of simulating single keystrokes based on the scanned data the barcode value is copied into the clipboard and then pasted to the Citrix client. Thereafter a TAB key is simulated. One very important point in this approach is to use some short delays between the single commands. These delays are required to allow Windows and Citrix messaging to work correctly. Here is the OnData() script of TWedge:
CopyToClipboard (DATA);         // copy barcode data into the clipboard
Sleep (50); // allow clipboard value to settle
SendKeyStrokes (CTRL, "V"); // paste the clipboard to Citrix
Sleep (50); // wait until pasted
SendKeyStrokes ("{TAB}"); // press the TAB key
Sleep (20); // wait until TAB was processed
Hope this helps other customers too!

Wednesday, 20 May 2009

How to Suppress Duplicate Barcodes or RFID Tags with the Software Wedge?

The Problem:

Maybe you are familiar with this scenario: You are connecting a barcode scanner, an electronic scale or an RFID reader to your computer. When capturing data it turns out that the device is sending identical values multiple times. This happens if the user scans a barcode repeatedly, a scale sends the weight of the item periodically or if a RFID reader reports the value of a RFID tag at regular intervals.

The Solution:

TWedge provides a very flexible and elegant solution to this problem. The software wedge can be customized to suppress multiple, identical values easily: Just save the last data value received from the device and compare it with the current one. Forward the device data to target application only if these values are not identical. Here is the script:

The Software Wedge Script:

OnStart() is the perfect place to initialize the last received data value (sLastData) with a null value. OnStart is executed when device communication is initialized (e.g. the serial port was opened):
// This script is executed whenever communication is started.
// Use it to perform one-time initializations like opening a file or a database connection.
// message informaing the user what this sample is good for
MessageBox("This script demonstrates how to suppress duplicate data packets from a device.\n\nSometimes devices like barcode scanners or RFID controllers are sending the same data packet multiple times. This very useful feature just forwards unique values to the target application.");
sLastData = null; // initialize with a value which is never received from a device
nDuplicates = 0; // set the number of duplicates to 0

OnData() is executed whenever device data is received. Compare the current data value (stored in DATA) with the last one (sLastData). In this example keystrokes are only simulated if these two values are not identical:

// Check if the current device data is identical to the last one
if (DATA != sLastData)
{
SendKeyStrokes(DATA); // not identical: simulate keystrokes
sLastData = DATA; // set the last value to the current one
nDuplicates = 0; // increment the duplicate counter (for info only)
}
else
{
nDuplicates++; // duplicate received, just display an info-message
NotifyInfo ("Duplicate data received. The value " + DATA + " was suppressed " + nDuplicates + " times");
}

More information as well as the script explained in this post will be available soon on www.tec-it.com.

Tuesday, 19 May 2009

TWedge Hotfix

This hotfix solves a problem when saving the settings of the software wedge into a TWI file.

The format of the TWI files was changed. This ensures that the settings can be saved even if special characters (like STX, ETX, EOT, DC1, DC2, ...) are part of the script. TWI files from previous version can be loaded without problems!

Download the hotfix here: Software Wedge for Windows

Tuesday, 23 December 2008

Data Acquisition Software TWedge 2.0 Released

Merry Christmas!
It's Christmas. In Austria that usually includes snow, silence (for some people), last-minute gift-shopping (for most people) and holidays. For TEC-IT customers this also means that the new version of the data acquisition software TWedge was released to the public.

New and Flexible Data Acquisition Software
TWedge version 2.0 captures data from serial, USB, Bluetooth or TCP/IP based devices and forwards this data to arbitrary applications or databases.



The highlight of TWedge is the embedded scripting language (based on JavaScript). Using this scripting language any user can embed custom logic or data acquisition functions. It is very easy to extend the functionality of this software wedge, even direct database access functions (via ODBC) and file access methods are available.

Downloads
Check out the demo version: scriptable data acquisition software
Press release: Universal Data-Acquisition Software

Example (Simple)
After adjusting the interface for data acquisition (e.g. serial port COM1, 9600 baud, 8 data bits, 1 stop bit, no parity) TWedge should be supplied with at least one script which is called whenever data is received via the configured interface.

The perfect place for this script is the the OnData() section. TWedge also offers OnStart(), OnStop(), OnTimer() and OnHotkey() - I assume you guess what these scripts are for.

A very simple OnData() script looks like this:

// start of script
SendKeyStrokes(DATA);
// end of script

The function SendKeyStrokes() simple converts captured data into virtual keystrokes. In other words: Using this simple command TWedge works as keyboard wedge. The captured data is available in the variable DATA by default (TWedge ensures correct device communication).

Example (Complex)
A more complex script writes captured data into a database. OnStart() is used for database initialization and it gets called by TWedge automatically whenever the user invokes device communication:

// start of script
// open the database
if (!myDB.Open("DSN=TWedge_Sample;"))
{
MessageBox("Could not open database TWedge_Sample!");
return;
}

// delete all records stored in a previous session
myDB.Execute ("DELETE * from tbl_Scans");
// end of script

Each time TWedge receives data from the external device it calls the function OnData(). The OnData()-code below enters captured data into the database (along with the hostename and the current date/time):

// start of script
// get the current date and time
var d = new Date();
// d.getMonth returns the month zero-based (e.g. 0=January, 11=December); thus add 1
var sDate = (d.getMonth() + 1) + "-" + d.getDate() + "-" + d.getFullYear();
var sTime = d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();

// build the INSERT statement
var insert = "INSERT INTO tbl_Scans (ProdID, ScanDate, ScanTime, Host) VALUES (";
insert += "'" + DATA + "', ";
insert += "'" + sDate + "', ";
insert += "'" + sTime + "', ";
insert += "'" + "localhost" + "');";

// execute the INSERT statement
var nRet = myDB.Execute(insert);
if (nRet < -1) MessageBox ("Error during INSERT:" + myDB.LastError); else if (nRet == -1) MessageBox ("This should not happen when executing an INSERT statement"); else MessageBox (nRet + " record(s) inserted!"); // end of script


Nice - But I don't know JavaScript!
Don't worry. TWedge comes with predefined scripts for common usage scenarios (e.g. keyboard wedge functionality). Just select the template which matches your requirements. Or contact TEC-IT for support.

End of Post
Merry Christmas and a Happy New Year!