Basic Mode or App Mode Barcode Scanning? It’s Your Choice, But...

May 5, 2022 by Len Ott | DEV COMMUNITY UPDATES


A handheld scanner can dramatically reduce the amount of time spent on a task, allowing for a quick scan of a barcode instead of manually entering data. But underneath that simple operation, there’s one underlying question: Should you be using Basic Mode or App Mode? 

Basic mode and App mode are the two different ways in which your scanner can read and receive data. So, what are the differences between the two, and which one is right for your application? Simple questions, though the answers are anything but. 

Basic Mode

In Basic Mode or HID (Human Interface Device) Mode, the scanner is a keyboard, providing data in the form of a quick and accurate typing alternative. It is the simplest, quickest, and easiest way to get your scanner up and running. Think of it as a bicycle with training wheels. It is ideal for testing, prototyping, and getting started, but it is never going to provide the speed and accuracy you will need over time. 

Basic mode provides much slower scanning and reading speeds than App mode. It is an external keyboard, and the keyboard limits the speed that is accepted. On an iOS device, it hides the virtual keyboard of the device when you are scanning. You can “pop up” the virtual keyboard by a quick press of the power on/off button.  

There are situations where you need to use Basic mode, such as when you are scanning directly into a standard application (Word, Excel) or a browser or custom application that is not scanner aware (is not built with an SDK). In these situations, you have 2 choices: 

  1. You can use a Socket Mobile soft keyboard app, SM Keyboard (which is scanner aware) and enter the data into a standard application via that mechanism. The benefit of this approach is that there is an error-checking mechanism built-in, and you can easily switch between two applications. You can switch between an application that is scanner aware, like Shopify or Square, and one that is not, like Word or Excel, without having to reconfigure and ‘forget device and re-pair’ your scanner in Bluetooth settings. 

  2. or, alternatively, you can use basic Mode. You’ll need to forget the scanner, if it's already paired, and scan the basic mode configuration barcode to re-pair. If you are using an app-aware program, like Square or Shopify, you need to repeat this every time you switch modes. Your app-aware application will function when your scanner is in Basic mode, but you will need to move your cursor manually. Also, you will not be able to take advantage of the many benefits that the application provider has built into the software for a scanner operating in App mode.  

App Mode

App mode (sometimes called Serial Port Profile, or SPP mode) provides two-way communication between your scanner and your application.  Through the use of a custom SDK (e.g. CaptureSDK from Socket Mobile), the scanner is fully controlled by the software and is completely independent of the internal keyboard. This robust mechanism provides complete error checking, is fast, reliable, and delivers the entire information payload in one block so the application can use it immediately, completing some tasks like “add to basket”. 

You can send more pieces of information far more quickly in App mode than you can through HID mode, allowing for a customizable experience. And unlike basic mode, App mode does not require an active text input field on your receiving device, making it far more versatile.  

Because setting up App Mode on your scanner requires integration with a custom SDK (e.g. Socket’s CaptureSDK) there’s more initial integration time to get your handheld scanner up and running. However, you will find that the long-lasting benefits of integrating our CaptureSDK far outweigh the small drawbacks of setup time.  Socket Mobile has gone to great lengths to make integrating CaptureSDK as simple as possible for our application partners, so their end users can get the maximum value out of their Socket readers. 

App mode is the strongly recommended choice for anyone who wants to use their scanner to improve the efficiency of their operation.  

What it Means for the Application

To best understand the difference between the two modes, it’s helpful to think in terms of the application that you’re scanning your data into.  

If you’re familiar with Microsoft Excel, think of that as HID mode. You’re going cell by cell, recording data independently; one string of information at a time, one character at a time, until moving on to the next item in the next cell. Depending on what you’re trying to do, this may be all you need, or it may be terribly inefficient. 

App mode would be the same as opening a specific multiple-field form on your computer, entering all the relevant information in the correct fields, and submitting multiple pieces of information at the same time. Rather than entering one character at a time, you’re sending chunks of data at once, making your process far more efficient. 

Ultimately, the choice for what is best for you depends on what you’re using your handheld scanner for. At Socket Mobile, we really only would use HID mode when neither the host device nor the application support app mode.  It is also OK for quick testing and prototyping. But if you’re serious about optimizing your scanning experience and providing the most accurate and efficient data capture solution possible, then the only real choice is to use App Mode to get the job done. 

Check out our app partners that agree that CaptureSDK and App Mode is the right answer: 

If you do not see the app you are currently using on this list, email your provider from this page and let them know that they can help make your work more efficient.  

Ready to get started? Check out our CaptureSDK developer portal to get started. 

Try it free.

Test out our data reading and scanning technology for free with SocketCam. The SocketCam C820 lets you scan directly into your feature application using the camera on your mobile device, ensuring high-performance scanning without the need for an external barcode scanner.