Trying to use the barcode scanner input component on a Honeywell RT10A using the built in scanner and running my perspective session through the launcher.
I verified that my prefix and suffix are working correctly (barcode scanned into a text box on the tablet and the code showed the ! prefix and @ suffix) and verified the component is working in preview mode (manually typing in with the ! prefix and @ suffix generated an entry in the component data array).
Yet when I barcode scan on the tablet it does not generate an entry into the component data array. I’m running ignition 8.1.7 and wondering if this is a bug?
I had a zebra barcode scanner running android that acted the same way. There was a delay setting that had to be adjusted. The scanner is acting as a keyboard but the default setting was faster than the Barcode Scanner Input component could keep up with. Adding a very short delay between key entries, in the scanner, was enough to get it working for me.
Here are my findings so far while testing with various devices on 8.1.7:
Devices which use a camera to take a “picture” of a barcode during a “Scan Barcode” Action do not allow for the Barcode Scanner Input to hear or intercept the barcode value, most likely because these interactions with the cameras do not trigger or manufacture Key Events during their lifecycle. Devices which rely on a camera should couple the Scan Barcode action with a message handler to send the data to the session and the Barcode Scanner Input should listen for this message, appending the relevant information to its own data prop.
The Android Devices (which I have personally used*) which use a laser to scan a barcode do send the data into the session as Key Events, and so the Barcode Scanner Input is able to hear and intercept the data. It’s worth noting that two devices scanning the same barcode could potentially use different prefixes/suffixes for the same barcode.
If you could send me the View with which you are experiencing issues I could try it here to see if there is some other issue which might be preventing the expected behavior - although I can’t imagine what that might be at this time.
*Devices vary greatly when it comes to behaviors, and so there is every possibility that my devices do not behave the same as yours.