NEQTO Docs
  • Languages icon日本語
    • English
  • ドキュメント
  • API
  • FAQ

›UART

Getting Started

  • NEQTO Hello World!
  • Tutorial Step 1. NEQTO Console設定
  • Tutorial Step 2. デバイス設定とサービスの開始 (NEQTO Bridge)
  • Tutorial Step 2. デバイス設定とサービスの開始 (STM32 Discovery)
  • Tutorial Step 2. デバイス設定とサービスの開始 (SPRESENSE)
  • Tutorial Step 3. スクリプトを使ったアプリケーション開発

NEQTO

  • NEQTO アカウント登録
  • サブアカウント
  • APIの利用
  • GCP用NEQTO CloudSync
  • NEQTO Engineファームウェアリスト
  • お問い合わせに関するガイドライン

NEQTO Console

  • はじめに
  • 基本情報
  • 管理者専用の操作
  • デバイス管理
  • Linuxデバイス管理
  • 一括登録
  • スクリプト
  • アクション & コンタクト
  • Consoleでデータを表示
  • NEQTO Apps

    • NEQTO Apps について
    • NEQTO Infinitypool
    • NEQTO Insights
    • NEQTO Custodia
    • NEQTO Flow
  • Machine Driver
  • 推奨ブラウザ
  • 請求情報

SPRESENSE

    ハードウェア仕様

    • 01. About Spresense

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. 初期インストール
    • 03. Spresense Wi-Fi 初期設定
    • 04. Spresense LTE-M 初期設定
    • 05. デバッグログ取得方法
    • 06. システムLED動作
    • 07. イベントメッセージ
    • 08. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. GPIO
    • 12. UART
    • 13. SPI
    • 14. I2C
    • 15. ADC
    • 16. GNSS
    • 17. Camera
    • 18. Utils
    • 19. nqSpresense
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi
    • 24. nqLte

STM32 Discovery

    ハードウェア仕様

    • 01. About STM32 Discovery Kit (B-L4S5I-IOT01A)

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. 初期インストール
    • 03. STM32 Discovery Wi-Fi 初期設定
    • 04. デバッグログ取得方法
    • 05. システムLED動作
    • 06. イベントメッセージ
    • 07. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. UserSW
    • 12. GPIO
    • 13. UART
    • 14. SPI
    • 15. I2C
    • 16. ADC
    • 18. Utils
    • 19. nqDiscovery
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi

NEQTO Bridge

    ハードウェア仕様

    • 01. NEQTO Bridge Module
    • 02. NEQTO Bridge Wi-Fi Module
    • 03. NEQTO Bridge LTE-1 Module
    • 04. NEQTO Bridge LTE-M/NB Module
    • 05. NEQTO Bridge IO Board
    • 06. NEQTO Bridge Digital IO Board
    • 07. NEQTO Bridge Connector Board

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. NEQTO Bridge Wi-Fi Module 初期設定
    • 03. NEQTO Bridge LTE Module 初期設定
    • 04. デバッグログ取得方法
    • 05. システムLED動作
    • 06. イベントメッセージ
    • 07. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. UserSW
    • 12. GPIO
    • 13. UART
    • 14. SPI
    • 15. I2C
    • 16. ADC
    • 17. BLE
    • 18. Utils
    • 19. nqBridge
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi
    • 24. nqLte
    • 25. nqLAN
    • 26. nqEx

Linux-based device

    ソフトウェア仕様

    • 01. システム要件
    • 02. インストール
    • 03. ソフトウェア構成
    • 04. 動作フロー
    • 05. デバッグログ取得方法
    • 06. イベントメッセージ
    • 07. ソフトウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. RTC
    • 10. UNIXSocket
    • 11. FileSystem
    • 12. SubProcess
    • 13. Utils
    • 14. nqLinux
    • 15. nqService
    • 16. nqMqtt
    • 17. nqFOTA
    • 18. nqLAN

neqto.js Libraries

  • About neqto.js Libraries
  • UART

    • GM65 Barcode Reader
    • SRF Ultrasonic Range Finder - Serial Mode

    I2C

    • HTS221 v2 Temperature and Humidity Sensor
    • LIS2DW12 v2 Accelerometer
    • SRF Ultrasonic Range Finder - I2C Mode
    • [Archive] HTS221 Temperature and Humidity Sensor
    • [Archive] LIS2DW12 Accelerometer

    Utils

    • RTC Alarm Synchronized Scheduler

    Integration

    • AWS S3 v2
    • AWS IoT Core v2
    • Azure IoT v2
    • GCP IoT Core
    • [Archive] AWS S3
    • [Archive] AWS IoT Core

neqto.js Snippets

  • About neqto.js Snippets
  • DataDog
  • Dropbox
  • Google Sheets
  • InfluxDB
  • Oracle Cloud Object Storage
  • Salesforce
  • SAP Cloud Platform Internet of Things
  • Splunk
  • Niagara

Release Notes

  • NEQTO Console アップデート
  • NEQTO Firmware (Bridge Wi-Fi/LTE Module) リリース
  • NEQTO Firmware (STM32 Discovery Wi-Fi) リリース
  • NEQTO Firmware (Spresense Wi-Fi/LTE-M) リリース
  • NEQTO Engine Linux版 リリース

GM65 Barcode Reader

このライブラリは、Hangzhou Grow Technology社製GM65バーコードリーダーを制御する機能を提供する組み込みクラスです。

Library usage requirements
Type UART
Name GM65
Version 1_00_00
Code size used 9.9KB
Resources used UART × 1, Timer × 1

関連資料

  • GM65 Bar Code Reader Module User Manual (購入先からユーザーマニュアルを取得してください)

事前初期化

GM65バーコードリーダーを初めて使用する場合、バーコードリーダー内に記録されている設定値が不明であるため、一度、バーコードリーダーを工場初期化する必要があります。又、UARTインタフェースのボーレートを事前に設定しておく必要があります。

下記の手順に従って、初期化を進めてください。
別途、User Manual が必要となります。

1. 設定用QRコードの使用を許可します

User Manual - Setup Code を参照し、Setup code on のQRコードをスキャンします。

2. 工場初期化します

User Manual - Reset を参照し、Reset のQRコードをスキャンします。
初期化には時間がかかります。ブザー音が鳴るまで待機してください。

3. UARTインタフェースのボーレートを設定します

User Manual - Series Communication Interface を参照し、Baud Rate Settlement の中から、使用するボーレートのQRコードをスキャンします。



Abstracts

Methods()/PropertiesSummaryNote
new GM65()GM65インスタンスを生成します。

{GM65} Instance

Methods()/PropertiesSummaryNote
.init()バーコードリーダーを初期化します。
.onScanned()スキャン結果通知のイベントハンドラを登録します。
.getScanned()スキャン実行コマンドを使用して、スキャン結果を取得します。
.VERSIONバージョン情報
maj : {number} Main Version
min : {number} Minor Version
rev : {number} Revision



Details

new GM65(uart[,config])

GM65インスタンスを生成します。

NameTypeM/ODescriptionNote                              
uart{UART}mandatory事前にオープン済みのUARTインスタンスを指定します。
UARTの設定は、事前初期化で設定済みのボーレート、ハードウェアフロー無効、パリティモード無効としてください。
configObjectoptionalコンフィグレーション
詳細はconfigを参照してください。
return{GM65}-{GM65} : 生成された{GM65}異常が発生した時は、例外となります。

config

NameTypeM/ODescriptionNote
READ_MODEnumberoptional読み取りモード
0: Manual mode
1: Command Triggered Mode
2: Continuous mode
3: Induction Mode
デフォルト値は3となります。
詳細については、User Manual - Read Mode を参照してください。
LIGHTnumberoptionalヘッドランプ設定
0: 常時消灯
1: 読み取り時点灯
2: 常時点灯
デフォルト値は1となります。
COLLIMATIONnumberoptional照準ライトビーム設定
0: 常時消灯
1: 読み取り時点灯
2: 常時点灯
デフォルト値は1となります。
READ_TIMEnumberoptional読み取り時間[x0.1s]
設定範囲: 0~255(25.5s)
デフォルト値は50となります。
READ_MODEが1, 2, 3の場合に使用されます。
BREAK_TIMEnumberoptional休止時間[x0.1s]
設定範囲: 0~255(25.5s)
デフォルト値は10となります。
READ_MODEが2, 3の場合に使用されます。
STABLE_TIMEnumberoptional手ぶれ補正時間[x0.1s]
設定範囲: 0~255(25.5s)
デフォルト値は4となります。
READ_MODEが3の場合に使用されます。
BUZZER_TONEnumberoptionalブザートーン
設定範囲: 0~255
デフォルト値は100となります。
BUZZER_MSnumberoptionalブザー継続時間[ms]
設定範囲: 0~255
デフォルト値は60となります。
SCAN_BUZZERnumberoptionalスキャン成功音
0: OFF
1: ON
デフォルト値は1となります。
EANArrayoptional読み取り有効/無効設定(EAN)
Array[0]: Zone bit 0x002Eの設定値
Array[1]: Zone bit 0x002Fの設定値
Allow: [0x01,0x01]
Forbid: [0x00,0x00]
デフォルト値はForbidとなります。
※
UPCArrayoptional読み取り有効/無効設定(UPC)
Array[0]: Zone bit 0x0030の設定値
Array[1]: Zone bit 0x0031の設定値
Array[2]: Zone bit 0x0032の設定値
Allow: [0x01,0x01,0x01]
Forbid: [0x00,0x00,0x00]
デフォルト値はForbidとなります。
※
CODE128Arrayoptional読み取り有効/無効設定(CODE128)
Array[0]: Zone bit 0x0033の設定値
Array[1]: Zone bit 0x0034の設定値
Array[2]: Zone bit 0x0035の設定値
Allow: [0x01,0x04,0x40]
Forbid: [0x00,0x04,0x40]
デフォルト値はForbidとなります。
※
CODE39Arrayoptional読み取り有効/無効設定(CODE39)
Array[0]: Zone bit 0x0036の設定値
Array[1]: Zone bit 0x0037の設定値
Array[2]: Zone bit 0x0038の設定値
Allow: [0x01,0x04,0x40]
Forbid: [0x00,0x04,0x40]
デフォルト値はForbidとなります。
※
CODE93Arrayoptional読み取り有効/無効設定(CODE93)
Array[0]: Zone bit 0x0039の設定値
Array[1]: Zone bit 0x003Aの設定値
Array[2]: Zone bit 0x003Bの設定値
Allow: [0x05,0x04,0x40]
Forbid: [0x04,0x04,0x40]
デフォルト値はForbidとなります。
※
CODEBARArrayoptional読み取り有効/無効設定(CODEBAR)
Array[0]: Zone bit 0x003Cの設定値
Array[1]: Zone bit 0x003Dの設定値
Array[2]: Zone bit 0x003Eの設定値
Allow: [0x03,0x04,0x40]
Forbid: [0x02,0x04,0x40]
デフォルト値はForbidとなります。
※
QRArrayoptional読み取り有効/無効設定(QR)
Array[0]: Zone bit 0x003Fの設定値
Allow: [0x01]
Forbid: [0x00]
デフォルト値はForbidとなります。
※
ITFArrayoptional読み取り有効/無効設定(ITF)
Array[0]: Zone bit 0x0040の設定値
Array[1]: Zone bit 0x0041の設定値
Array[2]: Zone bit 0x0042の設定値
Array[3]: Zone bit 0x0043の設定値
Array[4]: Zone bit 0x0044の設定値
Array[5]: Zone bit 0x0045の設定値
Array[6]: Zone bit 0x0046の設定値
Array[7]: Zone bit 0x0047の設定値
Array[8]: Zone bit 0x0048の設定値
Allow: [0x01,0x04,0x40,0x01,0x04,0x40,0x01,0x04,0x40]
Forbid: [0x00,0x04,0x40,0x00,0x04,0x40,0x00,0x04,0x40]
デフォルト値はForbidとなります。
※
CODE11Arrayoptional読み取り有効/無効設定(CODE11)
Array[0]: Zone bit 0x0049の設定値
Array[1]: Zone bit 0x004Aの設定値
Array[2]: Zone bit 0x004Bの設定値
Allow: [0x01,0x04,0x40]
Forbid: [0x00,0x04,0x40]
デフォルト値はForbidとなります。
※
MSIArrayoptional読み取り有効/無効設定(MSI)
Array[0]: Zone bit 0x004Cの設定値
Array[1]: Zone bit 0x004Dの設定値
Array[2]: Zone bit 0x004Eの設定値
Allow: [0x05,0x01,0x40]
Forbid: [0x04,0x01,0x40]
デフォルト値はForbidとなります。
※
RSSArrayoptional読み取り有効/無効設定(RSS)
Array[0]: Zone bit 0x004Fの設定値
Array[1]: Zone bit 0x0050の設定値
Array[2]: Zone bit 0x0051の設定値
Array[3]: Zone bit 0x0052の設定値
Array[4]: Zone bit 0x0053の設定値
Allow: [0x01,0x01,0x01,0x04,0x40]
Forbid: [0x00,0x00,0x00,0x04,0x40]
デフォルト値はForbidとなります。
※
MATRIXArrayoptional読み取り有効/無効設定(Data Matrix)
Array[0]: Zone bit 0x0054の設定値
Allow: [0x01]
Forbid: [0x00]
デフォルト値はForbidとなります。
※
PDF417Arrayoptional読み取り有効/無効設定(PDF417)
Array[0]: Zone bit 0x0055の設定値
Allow: [0x01]
Forbid: [0x00]
デフォルト値はForbidとなります。
※
BARCODE_FILTERregexpoptionalスキャンデータの文字列フィルタ
regexp: RegExpオブジェクト
正規表現によるスキャンデータの照合を行い、不一致の場合、データを破棄します。
例えば、数字のバーコードのみ許容する場合は/^[0-9]+$/を指定します。
省略時もしくはスキャンデータがバイナリ形式の場合は照合を行いません。
SCAN_LIMITnumberoptional最大スキャンデータサイズ[byte]
設定範囲: 1~510
デフォルト値は256となります。
スキャンデータが指定サイズを超過した場合、データを破棄します。
errEvent(code)functionoptionalエラーイベントが発生した際にコールバック処理を実行します。
code : {number}
エラーコード
詳細はエラーコード一覧を参照してください。
  • ※: Zone bitの設定値は、0~255までのnumber型となります。各Zone bitの詳細仕様については、User Manual - List of zone bit を参照してください。

エラーコード一覧

codeDescription                                                              Note
-1バーコードリーダーコマンドタイムアウト
-2バーコードリーダーコマンド応答エラー
-3スキャンデータエラー
-4スキャンデータオーバーフローconfigのSCAN_LIMITで指定されている最大スキャンデータサイズを超過した場合

.init()

バーコードリーダーを初期化します。
インスタンス作成後、一度のみ実行してください。

NameTypeM/ODescriptionNote
returnboolean-true: 成功
false: 失敗
失敗する場合は、事前初期化を試してください。

.onScanned(callback[,isBin])

スキャン結果通知のイベントハンドラを登録します。
尚、登録を解除することはできません。

このメソッドはREAD_MODEが 1 の場合、使用できません。

NameTypeM/ODescription                      Note
callback(data)functionmandatoryバーコード読み取り完了時にコールバック処理を実行します。
data : {ArrayBuffer|string}
スキャンデータ
引数の型はisBinで決定されます。
isBinbooleanoptionalスキャンデータの出力形式を指定します。
true: バイナリデータ形式
false: 文字列形式
デフォルト値はfalseとなります。
サポート可能なスキャンデータはASCIIコードのみとなります。
returnboolean-true: 成功
false: 失敗

.getScanned([isBin])

スキャン実行コマンドを使用して、スキャン結果を取得します。

このメソッドはREAD_MODEが 1 の場合のみ使用可能です。

NameTypeM/ODescription                          Note
isBinbooleanoptionalスキャンデータの出力形式を指定します。
true: バイナリデータ形式
false: 文字列形式
デフォルト値はfalseとなります。
サポート可能なスキャンデータはASCIIコードのみとなります。
returnArrayBuffer,
string,
null,
undefined
-スキャンデータ
戻り値の型はisBinで決定されます。
confingのREAD_TIMEで指定されている読み取り時間を超過した場合、nullが返却されます。
READ_MODEが 1 以外の場合はundefinedが返却されます。



Usage Examples

Sample 1

Induction Mode (READ_MODE: 3)を使用してスキャンを行うサンプルです。
QRコード及び16桁の英数大文字のスキャンデータのみ取得します。

log.setLevel(0,2); //-1:NONE 0:ERROR 1:WARNING 2:DEBUG 3:TRACE, 0:DISABLE 1:LOG 2:CONSOLE 3:BOTH
log.printLevel(2); //0:DISABLE 1:LOG 2:CONSOLE 3:BOTH

if(!('GM65' in this)) { throw new Error('Please import the GM65 library.'); }

//Specify the UART connection settings for the GM65 barcode reader.
var uart = new UART(1); //UART node number
var ready = uart.open(115200, false, 0); //UART baudrate
if(!ready) {
    throw new Error('uart.open');
}
var config = {
    READ_MODE: 3, //Induction Mode
    QR: [0x01], //Allow QR Code
    BARCODE_FILTER: /^[0-9A-Z]{16}$/, //A 16-digit string consisting of "0" to "9" and "A" to "Z"
    errEvent: function(code) { print('error:' + code); }
};
var gm65 = new GM65(uart, config);
ready = gm65.init();
if(!ready) {
    throw new Error('gm65.init');
}

var scanCb = function(data) {
    print('scan:', data);
};

if(!gm65.onScanned(scanCb)) {
    throw new Error('gm65.onScanned');
}

Sample 2

Command Triggered Mode (READ_MODE: 1)を使用してスキャンを行うサンプルです。
QRコード及び16桁の英数大文字のスキャンデータのみ取得します。

log.setLevel(0,2); //-1:NONE 0:ERROR 1:WARNING 2:DEBUG 3:TRACE, 0:DISABLE 1:LOG 2:CONSOLE 3:BOTH
log.printLevel(2); //0:DISABLE 1:LOG 2:CONSOLE 3:BOTH

if(!('GM65' in this)) { throw new Error('Please import the GM65 library.'); }

//Specify the UART connection settings for the GM65 barcode reader.
var uart = new UART(1); //UART node number
var ready = uart.open(115200, false, 0); //UART baudrate
if(!ready) {
    throw new Error('uart.open');
}
var config = {
    READ_MODE: 1, //Command Triggered Mode
    QR: [0x01], //Allow QR Code
    BARCODE_FILTER: /^[0-9A-Z]{16}$/, //A 16-digit string consisting of "0" to "9" and "A" to "Z"
    errEvent: function(code) { print('error:' + code); }
};
var gm65 = new GM65(uart, config);
ready = gm65.init();
if(!ready) {
    throw new Error('gm65.init');
}

var scanCb = function(data) {
    print('scan:', data);
};

while(1) {
    var c = gm65.getScanned();
    if(c) {
        scanCb(c);
    }
    setTimeout(1000).wait();
}


上記に記載されている会社名、製品名は、各社の登録商標または商標です。

Updated: 2021-10-19
← 前次 →
  • Abstracts
    • {GM65} Instance
  • Details
    • new GM65(uart[,config])
    • .init()
    • .onScanned(callback[,isBin])
    • .getScanned([isBin])
  • Usage Examples
    • Sample 1
    • Sample 2
NEQTO とはニュースサービスFAQプライバシーポリシー}
NEQTO Console
はじめに基本情報管理者専用の操作デバイス管理NEQTO Apps
NEQTO Bridge
NEQTO Bridge ピン配置NEQTO Bridge Wi-Fi ModuleNEQTO Bridge LTE-1 Moduleデバッグログ取得方法イベントメッセージ
APIのドキュメント
APIの利用グローバル APIリージョン APIAPIサービス利用規約
Jigsaw, Inc.
© 2023 JIG-SAW INC.