Allow Customer to Aim at Barcode before Scan on TC8000

U Uwe Reisewitz 3 years ago
1 0 0

Hi,
The EMDK defines several AimTypes and we have found one to allow the customer to "point and shoot" on nearly every device except on a TC8000.
This device either does not scan or it automatically scans. We have not found any setting that allows us to point to the barcode we would like to read first.
We had no problem with the same application on TC75, TC20, TC33. Only on TC8000 this doens't work.

This is the code to Apply a new config (it is called from OnBarCodeScannerStatus when the scanner is in idle state):
        private void ApplyConfig()
        {
            try
            {
                ScannerConfig.AimType aimtype;

                switch (ZebraEmdkSettings.Default.AimType)
                {
                    case ZebraEmdkAimType.ContinuousRead:
                        aimtype = ScannerConfig.AimType.ContinuousRead;
                        break;

                    case ZebraEmdkAimType.PressAndRelease:
                        aimtype = ScannerConfig.AimType.PressAndRelease;
                        break;

                    case ZebraEmdkAimType.TimedHold:
                        aimtype = ScannerConfig.AimType.TimedHold;
                        break;

                    case ZebraEmdkAimType.TimedRelease:
                        aimtype = ScannerConfig.AimType.TimedRelease;
                        break;

                    case ZebraEmdkAimType.Trigger:
                        aimtype = ScannerConfig.AimType.Trigger;
                        break;

                    default:
                        throw new InvalidEnumArgumentException("Invalid Enum value: " + ZebraEmdkSettings.Default.AimType.ToString());
                }

                ScannerConfig config = _barcodeScanner.GetConfig();
                config.ReaderParams.ReaderSpecific.ImagerSpecific.AimType = aimtype;
                config.ReaderParams.ReaderSpecific.ImagerSpecific.AimTimer = ZebraEmdkSettings.Default.AimTimer;
                config.ReaderParams.ReaderSpecific.LaserSpecific.AimType = aimtype;
                config.ReaderParams.ReaderSpecific.LaserSpecific.AimTimer = ZebraEmdkSettings.Default.AimTimer;
                config.ReaderParams.ReaderSpecific.CameraSpecific.AimType = aimtype;
                config.ReaderParams.ReaderSpecific.CameraSpecific.AimTimer = ZebraEmdkSettings.Default.AimTimer;
                _barcodeScanner.SetConfig(config);
            }
            catch (Exception ex)
            {
                ScannerTrace.Default.WriteExceptionToLog(ScannerTrace.GetExceptionLogText(ScanEngineName, "Apply Config", ex));
            }

            ScannerTrace.Default.WriteScanTrace(ScanEngineName, "ApplyConfig::End");
        }

Any help would be greatly appreciated.

Best regards
Uwe

CONTACT
Can’t find what you’re looking for?