manuals.online logo
Brands
  1. Home
  2. •
  3. Brands
  4. •
  5. Bluebird
  6. •
  7. Barcode Reader
  8. •
  9. Bluebird BP30 User manual

Bluebird BP30 User manual

Other manuals for BP30

1

This manual suits for next models

2

Other Bluebird Barcode Reader manuals

Bluebird BI-500 User manual

Bluebird

Bluebird BI-500 User manual

Bluebird RFR900S User manual

Bluebird

Bluebird RFR900S User manual

Popular Barcode Reader manuals by other brands

Microscan HS-2D user manual

Microscan

Microscan HS-2D user manual

SICK CLV62x Online help

SICK

SICK CLV62x Online help

Datalogic Gryphon GBT4200 Quick reference guide

Datalogic

Datalogic Gryphon GBT4200 Quick reference guide

WaveMark SmartWand SW1500 manual

WaveMark

WaveMark SmartWand SW1500 manual

Zebex Z-3191BT Quick connection guide

Zebex

Zebex Z-3191BT Quick connection guide

RTscan RT211 Integration guide

RTscan

RTscan RT211 Integration guide

Motorola SYMBOL DS6707 Product reference guide

Motorola

Motorola SYMBOL DS6707 Product reference guide

Godex BP300 user manual

Godex

Godex BP300 user manual

Godex RT800i Series user manual

Godex

Godex RT800i Series user manual

Generalscan X Series quick start guide

Generalscan

Generalscan X Series quick start guide

POSMicro Datalogic PowerScan D7100 manual

POSMicro

POSMicro Datalogic PowerScan D7100 manual

NCR RealPOS user guide

NCR

NCR RealPOS user guide

Motorola SE3300 Integration guide

Motorola

Motorola SE3300 Integration guide

Nordson CBC 5100 manual

Nordson

Nordson CBC 5100 manual

Motorola Symbol LS3008 Product reference guide

Motorola

Motorola Symbol LS3008 Product reference guide

Meec tools OBD-II / VAG operating instructions

Meec tools

Meec tools OBD-II / VAG operating instructions

SICK CLP 100 operating instructions

SICK

SICK CLP 100 operating instructions

Royal Tag SA I-Read user manual

Royal Tag SA

Royal Tag SA I-Read user manual

manuals.online logo
manuals.online logoBrands
  • About & Mission
  • Contact us
  • Privacy Policy
  • Terms and Conditions

Copyright 2025 Manuals.Online. All Rights Reserved.

Barcode Controller
Scenario & Manual
Bluebird, inc.
ver : 1.3
BP30/BM180, EF400/EF500
Contents
1. Introduction
2. BarcodeController working scenario(Chart)
3. BarcodeController working scenario(Details)
4. Exception
5. Information
1. Introduction - 1
Purpose
•BarcodeController is an Android service that allows App to use Barcode module on
Android OS based devices.
•This document is a summary of scenario and program development to support the user
on building application that uses barcode with BarcodeController.
Information
•Name of each Intent is defined on chapter.5.
•Used programming language is Java.
•Communication type between BarcodeController and application is Intent call type and
ExtraData of each Intent contains additional data to be transferred.
1. Introduction - 2
Term definition
•app : Android application that communicates with BarcodeController. The users actually uses this application.
•BarcodeController : Middleware(Android service) that allows application to use Barcode Module.
•DataWedgeMode : Function that allows to read in barcode data without building additional application. Read-in
value goes into text window of current screen where the cursor is on.
•Decoding Timeout : Period of Trigger on status for barcode input. If the valid barcode is not read during this period,
BarcodeController Triggers off and send intent of Decoding Timeout. Default is 5 seconds.
•Handle : Inherent ID value that BarcodeController issues to each application to distinguish between when application
is connected to BarcodeController.
1. Introduction - 2
Term definition
•Profile : Database that sets function details of Barcode module. Changeable on BBSettings app on device.
•Sequence number : The value to distinguish each intend when application send Intent to BarcodeController.
When BarcodeController returns the result to app (ACTION_BARCODE_REQUEST_SUCCESS/FAILED), this value is save
in Intent.
•Symbology : reading-able Barcode image type
•Trigger : Function that sets Barcode module’s beam on/off and sets to read ready/pause status..
2.1 BarcodeController Operation scenario
ACTION_BARCODE_OPEN
EXTRA_INT_DATA3 : Sequence num
ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS
EXTRA_INT_DATA3 : Sequence num
ACTION_BARCODE_CALLBACK_REQUEST_FAILED
EXTRA_INT_DATA2 : 에러ID
EXTRA_INT_DATA3 : Sequence num
User App BarcodeController
ACTION_BARCODE_SET_TRIGGER
EXTRA_INT_DATA2 : trigger value(1:on / 0:off)
EXTRA_INT_DATA3 : Sequence num ACTION_BARCODE_CALLBACK_DECODING_
DATA
EXTRA_BARCODE_DECODING_DATA : Barcode
read data(byte[])
EXTRA_INT_DATA3 : Sequence num
ACTION_BARCODE_CALLBACK_REQUEST_FAILED
EXTRA_INT_DATA2 : Error ID of specific situation
EXTRA_INT_DATA3 : Sequence num
ACTION_BARCODE_CLOSE
EXTRA_INT_DATA3 : Sequence num
END
ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS
EXTRA_INT_DATA3 : Sequence num
ACTION_BARCODE_CALLBACK_REQUEST_FAILED
EXTRA_INT_DATA2 : Error ID
EXTRA_INT_DATA3 : Sequence num
3.1 Specific Scenario
Barcode Open
•Opens Barcode module. Function that allows Barcode module and use app to communicate.
•If module Open is successful, handle value will be transferred through
ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS.
•If the Module fails to open, it will return ACTION_BARCODE_CALLBACK_REQUEST_FAILED Intent.
(1) ACTION_BARCODE_OPEN ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS /
ACTION_BARCODE_CALLBACK_REQUEST_FAILED
(2) Put extra :
Example
BarcodeIntent.ACTION_BARCODE_OPEN);
BroadcastReceiver
BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS);
BroadcastReceiverdeclaration :
BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if(action.equals(BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS))
{
int handle = intent.getIntExtra(Constants.EXTRA_HANDLE, 0);
int seq = intent.getIntExtra(Constants.EXTRA_INT_DATA3, 0); -> Check if the
value is 1
//to do
}
else
if(action.equals(BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_FAILED))
int handle = intent.getIntExtra(Constants.EXTRA_HANDLE, 0);
Int errorId = intent.getIntExtra(Constants.EXTRA_INT_DATA2, 0);
int seq = intent.getIntExtra(Constants.EXTRA_INT_DATA3, 0);
//to do
Name ExtraName Type
EXTRA_HANDLE EXTRA_HANDLE Int
EXTRA_INT_ERROR_ID EXTRA_INT_DATA2 Int
EXTRA_INT_SEQUENCE_ID EXTRA_INT_DATA3 Int
3.2 Specific Scenario
Barcode Set Trigger
•Function that delivers trigger command to Barcode module and sets beam to on/off and sets barcode read to standby mode.
•If the Intent is used, EXTRA_INT_DATA2 should be sent as 0 or 1.(0:trigger off / 1:trigger on)
•If barcode read is successful after Trigger on, read-in value will be sent through ACTION_BARCODE_CALLBACK_DECODING_DATA
Intent .(Transfer symbology value to EXTRA_INT_DATA2 )
•If Trigger off is called, beam will be off and barcode read try stops.
•Timeout exists and barcode is not read for timeout period(default: 5 seconds), ACTION_BARCODE_CALLBACK_REQUEST_FAILED
Intent will be generated.
(1) ACTION_BARCODE_SET_TRIGGER(EXTRA:1) ACTION_BARCODE_CALLBACK_DECODING_DATA /
ACTION_BARCODE_CALLBACK_REQUEST_FAILED
(2) ACTION_BARCODE_SET_TRIGGER(EXTRA:0) -> ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS / FAILED
(3) Put extra :
Example
Name ExtraName Type
EXTRA_HANDLE EXTRA_HANDLE Int
EXTRA_BARCODE_DECODING_DATA EXTRA_BARCODE_DECODING_DATA ByteArray
EXTRA_INT_SYMBOLOGY EXTRA_INT_DATA2 Int
EXTRA_INT_SEQUENCE_ID EXTRA_INT_DATA3 Int
BarcodeIntent.ACTION_BARCODE_SET_TRIGGER);
intent.putExtra(“EXTRA_HANDLE”, handle);
intent.putExtra(“EXTRA_INT_DATA2”, 1);
BroadcastReceiver
BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS);
BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_FAILED);
BarcodeIntent.ACTION_BARCODE_CALLBACK_DECODING_DATA);
String action = intent.getAction();
if(action.equals(BarcodeIntent. ACTION_BARCODE_CALLBACK_DECODING_DATA))
{
int handle = intent.getIntExtra(Constants.EXTRA_HANDLE, 0);
Int symbology = intent.getIntExtra(Constants.EXTRA_INT_DATA2, 0); -> result
of symbologies value(ex. UPC-A : 1, Code128 : 10 …)
int seq = intent.getIntExtra(Constants.EXTRA_INT_DATA3, 0); -> check if the
value is 10
byte[] data =
intent.getByteArrayExtra(Constants.EXTRA_BARCODE_DECODING_DATA);
//to do
}
};
3.3 Specific Scenario
Barcode Decoding Timeout
•Intent that BarcodeController transfers to application if valid barcode read is not tried for Decoding Timeout
period(default: 5 seconds). ( ACTION_BARCODE_CALLBACK_REQUEST_FAILED).
(1) ACTION_BARCODE_SET_TRIGGER(EXTRA:1) ACTION_BARCODE_CALLBACK_REQUEST_FAILED(-6)
(2) Put extra :
Example
BarcodeIntent.ACTION_BARCODE_SET_TRIGGER);
BroadcastReceiver Registration
BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS);
BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_FAILED);
BarcodeIntent.ACTION_BARCODE_CALLBACK_DECODING_DATA);
BroadcastReceiverdeclaration :
BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if(action.equals(BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_FAILED))
int handle = intent.getIntExtra(Constants.EXTRA_HANDLE, 0);
Int errorId = intent.getIntExtra(Constants.EXTRA_INT_DATA2, 0); -> -6
int seq = intent.getIntExtra(Constants.EXTRA_INT_DATA3, 0); -> check if the
value is 10
//to do
Name ExtraName Type
EXTRA_HANDLE EXTRA_HANDLE Int
EXTRA_INT_ERROR_ID EXTRA_INT_DATA2 Int
EXTRA_INT_SEQUENCE_ID EXTRA_INT_DATA3 Int
3.4 Specific Scenario
Barcode Close
•Intent : -> finished module activation through transfer close command to the barcode module.
•If the closed process is completed, the program cannot use the barcode module until the module is re-opened using
the ACTION_BARCODE_OPEN intent.
•When Trigger status is on, the barcode module will close immediately. No matter the timeouts, all read fucntions will
be disabled
•When the Close process is completed, the timeout will also be turned off.
(1) ACTION_BARCODE_CLOSE ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS / FAILED
(2) Put extra :
Example
Name ExtraName Type
EXTRA_HANDLE EXTRA_HANDLE Int
EXTRA_INT_ERROR_ID EXTRA_INT_DATA2 Int
EXTRA_INT_SEQUENCE_ID EXTRA_INT_DATA3 Int
BarcodeIntent.ACTION_BARCODE_CLOSE);
intent.putExtra
(“EXTRA_HANDLE”, handle);
BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS);
BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_FAILED);
….
String action =
intent.getAction();
if(action.equals(BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_SUCCESS))
{
int handle = intent.getIntExtra(Constants.EXTRA_HANDLE, 0);
int seq = intent.getIntExtra(Constants.EXTRA_INT_DATA3, 0); -> check whether 100 or
not
//to do
}
else if(action.equals(BarcodeIntent.ACTION_BARCODE_CALLBACK_REQUEST_FAILED))
int handle = intent.getIntExtra(Constants.EXTRA_HANDLE, 0);
Int errorId = intent.getIntExtra(Constants.EXTRA_INT_DATA2, 0);
int seq = intent.getIntExtra(Constants.EXTRA_INT_DATA3, 0); -> check whether 100 or
not
//to do
};