emUSB-Device 対応クラスドライバ

サポートしているクラスドライバ、
実装は自由に選択できます。

AUDIO Class

audio

USB Device Audio Class

製品型番:MB-EMUSBD-CL-AUDIO

USB経由で簡単に音声を送信できます。ホストから受信したオーディオを録音または再生し、録音したオーディオをホストに送信します。

emUSB-Device オーディオクラスの特徴:

  • USB Audio V1.0 対応
  • ホストからの音声を録音する
  • オーディオ入力デバイス(マイクなど)として、ホストに音声を送信
  • 各種サンプリング周波数サポート(8、16、22.05、44.1、48、96、192 kHzなど)
  • 各種ビット深度をサポート(サンプルあたり8、16、24、32ビット)
  • 各クロスプラットフォーム、Linux, macOS, Windowsではドライバ不要
  • 任意のチャネル数をサポート

適用事例:

USBスピーカー、USBサウンドカード、オーディオマイクロフォン、オーディオヘッドセット

audio example
必要なコンポーネント
  • emUSB-Device AUDIO
  • emUSB-Device BASE
  • emUSB-Device Target Driver
  • RTOS(embOSの場合は移植作業は不要)

評価サンプル

emPower evb

emPower Audio Device サンプル

  1. PC側にEmbedded Studioプロジェクトを起動しデフォルトのデモアプリケーションをビルドしてemPowerボードにダウンロードします。
  2. emPowerボードにSDカードを挿入してボードのHS-USBコネクタをPCに接続します。
  3. PC側のdefaultのサウンド出力とサウンド入力デバイスとして、emUSB-Device Audioデモを選択します。
  4. PC側に音声・オーディオを再生しますと、emPowerボードにSDカードに記録されます。※emPowerボードにSpeakerはありません。
  5. emUSB-Device Audioマイクをスピーカーにループバックして、オーディオデモを聴きます。

emPower評価ボード用サンプルダウンロード

emPower評価ボードについて

VIDEO Class

video

USB Device Video Class

製品型番:MB-EMUSBD-CL-VIDEO

組込機器でスマートカードを利用するインターフェース。

emUSB-Device ビデオクラスの特徴:

  • USB Video Device class (UVC) V1.1対応
  • ホストからの音声を録音する
  • ホストにビデオデータを送信
  • 各クロスプラットフォーム、Linux, Windows, macOSではドライバ不要

適用事例:

カメラ、Webcam

video example
必要なコンポーネント
  • emUSB-Device VIDEO
  • emUSB-Device BASE
  • emUSB-Device Target Driver

評価サンプル

emPower evb

emPower emUSB-Device Videoデモサンプル

  1. 任意のサンプルファイルvideo.yuvをSDカードにコピーします。デモ用video.yuvファイルは「../Doc/」フォルダにあります。
  2. PC側にEmbedded Studioプロジェクトを起動しデフォルトのデモアプリケーションをビルドしてemPowerボードにダウンロードします。
  3. emPowerボードにSDカードを挿入してボードのHS-USBコネクタをPCに接続します。
  4. PC側にWebカメラ表示プログラムを使用してビデオを表示します。

emPower評価ボード用サンプルダウンロード

emPower評価ボードについて


MIDI Class

midi

USB Device MIDI Class

製品型番:MB-EMUSBD-CL-MIDI

楽器デジタルインターフェースクラスとして、ホスト接続をサポート

emUSB-HOST MIDクラスの特徴:

  • USB MIDI V1.0サポート
  • MIDIデバイスとして接続サポート
  • MIDIコマンドを送信し、ホストからMIDIコマンドを受信

適用事例:

USBオーディオシンセサイザー、オーディオコントローラ、オーディオエフェクトユニット

midi example
必要なコンポーネント
  • emUSB-Device MIDI
  • emUSB-Device BASE
  • emUSB-Device Target Driver

CDC Class

cdc

USB Device CDC Class

製品型番:MB-EMUSBD-CL-CDC

CDC(Communications Device Class)サポートでモデム、ISDN、ファックスマシン、測定器等は実装可能です。

emUSB-Device CDCクラスの特徴:

  • USBデバイスをシリアル通信デバイスに変換
  • デバイスはPCアプリケーションに仮想COMポートを提供
  • 各クロスプラットフォーム、Linux, macOS, Windowsではドライバ不要

適用事例:

モデム、ファックス、測定器、POS端末

cdc example
必要なコンポーネント
  • emUSB-Device CDC
  • emUSB-Device BASE
  • emUSB-Device Target Driver

HID Class

hid

USB Device HID Class

製品型番:MB-EMUSBD-CL-HID

emUSB-Device HIDクラスはマウス・キーボード・タッチパッドなどHIDデバイスとして、ホスト接続をサポート。様々な評価ボードでサンプルアプリケーションが用意されています。

emUSB-DeviceをサポートするHIDの種類 :

  • "True" HIDs:ジョイスティック、マウス、キーボード、トラックボール、タッチスクリーン
  • データインターフェースHID:ソフトウェア保護ドングル、無停電電源装置(UPS)
  • ベンダー固有のUsageページは処理可能
  • 各クロスプラットフォーム、Linux, macOS, Windowsではドライバ不要

emPower評価ボード用サンプルダウンロード

emPower評価ボードについて

適用事例:

RFIDリーダー、キーボード、マウス、バーコードスキャナ、タッチスクリーン、ジョイスティック、指紋センサー、3Dマウス、トラックボール、無停電電源装置(UPS)、計量機

hid example
必要なコンポーネント
  • emUSB-Device BASE(HIDクラスはBASEパッケージに含まれています)
  • emUSB-Device Target Driver

MSD Class

msd

USB Device MSD Class

製品型番:MB-EMUSBD-CL-MSD

emUSB-Device MSD(Mass Storage Device)クラスに接続されたストレージはボリュームとして、ホスト接続をサポート

emUSB-Device MSDクラスの特徴:

  • 様々なストレージ(USBメモリ・HDDなど)の接続として、ホストに接続
  • カスタムドライバは不要、主要ホストOSで接続サポート
  • ホストOSのファイルシステムを利用可能
  • 組込機器ホストで利用の場合は、emFileなどのファイルシステムの実装を推奨

emPower評価ボード用サンプルダウンロード

emPower評価ボードについて

適用事例:

USBハードディスクドライブ、USBメモリーディスク、カメラ、MP3プレーヤー、DVDプレーヤー

msd example
必要なコンポーネント
  • emUSB-Device BASE
  • emUSB-Device MSD
  • emUSB-Device Target Driver
  • RTOS(embOSの場合は移植作業は不要)

VirtualMSD Class

msd

USB Device VirtualMSD Class

製品型番:MB-EMUSBD-CL-VMSD

VirtualMSDコンポーネントを使用すると、USBデバイスとの間でファイルを簡単に転送できます。
USBデバイスがホストに接続されると、専用のストレージメモリを必要とせずに、 ファイルの読み取りまたはアプリケーションへの書き込みが可能になります。

emUSB-Device VirtualMSDクラスの特徴:

ホスト側で追加のソフトウェアやドライバーを必要とせずに、さまざまなタイプのアプリケーションや目的に使用できます。VirtualMSDソフトウェアは、ホストによって実行される操作を分析し、これを組み込みターゲットのアプリケーション層に渡します。このプロセスを初期化するために必要なのは、単純なドラッグアンドドロップだけです。これは、独自のアクティブファイルテクノロジによってサポートされています。

ファイルアクセスについて:

デバイスに保存されているファイルとディレクトリには、Windowsエクスプローラーを使用して通常の方法でアクセスできます。

vmsd fileaccess

VirtualMSDをファームウェアアップデーターとして使用する:

ファームウェアイメージをVirtualMSDストレージデバイスにドラッグアンドドロップするだけで、ターゲットデバイスのファームウェアを更新できます。MSDはどのオペレーティングシステムでもサポートされているため、サードパーティのドライバーやツールをインストールしなくても機能します。

vmsd filecopy

適用事例:

スマートウォッチ、J-Link OB(オンボードJ-Link)

virtualmsd example
必要なコンポーネント
  • emUSB-Device BASE
  • emUSB-Device MSD
  • emUSB-Device VirtualMSD
  • emUSB-Device Target Driver
  • RTOS(embOSの場合は移植作業は不要)

評価サンプル

emPower VirtualMSD Device デモサンプル

  1. PC側にEmbedded Studioプロジェクトを起動しデフォルトのデモアプリケーションをビルドしてemPowerボードにダウンロードします。
  2. emPowerボードのHS-USBコネクタをPCに接続します。
  3. 任意のファイルをVirtualMSDボリュームにコピーします。デバイスは自動的に再接続します。
  4. コピーされたファイルのCRC32を含むボリュームに CRC.txt という名前のファイルが表示されます。

emPower評価ボード用サンプルダウンロード

emPower評価ボードについて
emPower evb

CCID Class

ccid

USB Device CCID Class

製品型番:MB-EMUSBD-CL-CCID

組込機器でスマートカードを利用するインターフェース

emUSB-Device CCIDクラスの特徴:

  • CCID読取りデバイスとの接続サポート
  • シンプルなAPI実装

適用事例:

カードリーダー、NFCカードリーダー、RFIDリーダー

ccid example
必要なコンポーネント
  • emUSB-Device CCID
  • emUSB-Device BASE
  • emUSB-Device Target Driver

Printer Class

printer

USB Device Printer Class

製品型番:MB-EMUSBD-CL-PRINTER

プリンターデバイスとしてホスト接続をサポート

emUSB-Device Printerクラスの特徴:

  • プリンタ機器として、ホスト接続
  • 各クロスプラットフォーム、Linux, macOS, Windowsではドライバ不要

emUSB-デバイスプリンターはホストからデータを受信し、そのデータをパーサーに転送します。デバイスの用紙がなくなるなどのイベントが発生した場合、プリンタコンポーネントは自動エラー処理ルーチンを提供します。USBプロトコルは開発者には完全に隠されており、開発者はパーサーの開発に集中できます。

適用事例:

プリンター、プロッタ

printer example
必要なコンポーネント
  • emUSB-Device Printer
  • emUSB-Device BASE
  • emUSB-Device Target Driver

MTP Class

mtp

USB Device MTP Class

製品型番:MB-EMUSBD-CL-MTP

MTP接続デバイスをサポート。MTPデバイスでファイル読み書き、MTPプロパティはアプリケーションによって取得・変更できます。

emUSB-Device MTPクラスの特徴:

  • MTPクラスデバイスとして接続をサポート
  • 各クロスプラットフォーム、Linux, Windowsではドライバ不要
  • emFile用のストレージドライバーが含まれています

Linux, Windowsでは、OSレベルでMTP接続はサポートされています。macOSでは別途ソフトウェアが必要

mtp access

MTPクラスについて:

メディア転送プロトコル(MTP)は、ストレージデバイスとの間でファイルを転送するために使用できるUSBクラスプロトコルです。
MTPは、デジタルカメラがコンピューターと画像ファイルを交換できるように設計された画像転送プロトコル(PTP)のオフィシャルな拡張クラスになり、 MTPは、すべてのファイルタイプをサポートします。

適用事例:

カメラ、スマートフォン、MP3プレーヤー

mtp application
必要なコンポーネント
  • emUSB-Device MTP
  • emUSB-Device BASE
  • emUSB-Device Target Driver

CDC-ECM Class

CDC-ECM

USB Device CDC-ECM Class

製品型番:MB-EMUSBD-CL-CDCECM

USBデバイスを仮想ネットワークアダプターとして機能させることができます。これは、USB経由でTCP / IPベースのアプリケーションを実行するために使用できます。

emUSB-Device CDC-ECMクラスの特徴:

  • Linux, macOSではドライバ不要
  • すべてのUSBデバイスでIPプロトコルを利用
  • 組込機器に最適なコンパクト設計

システム要求:「emNet」ネットワークスタックが必要になります。

CDC-ECM(Communication Device Class / Ethernet Control Model protocol)クラスは、USB.orgコンソーシアムによって定義された標準のUSBクラスプロトコルです。実際のIP通信を処理するには、USBデバイス側にemNetのようなTCP / IPスタックが必要です。利用可能なIPプロトコル(UDP、TCP、FTP、HTTPなど)を使用してデータを交換できます。

Linuxカーネルバージョン2.6.22以上、macOS バージョン10.4以上は、CDC-ECMを完全にサポートしています。Windows環境の場合は、CDC-ECMのドライバが必要です。

emUSBデバイスCDC-ECMは、他のインターフェイス(バルク、CDC、MSD、MTP、HID)と組み合わせて問題なく使用できます。

120MHzで動作する一般的なCortex-Mでは、高速USB接続を使用すると、約 5MiB/sの転送速度を実現できます。

適用事例:

USBネットワーク変換アダプタ、ルーター/ゲートウェイ

CDC-ECM class example
必要なコンポーネント
  • emUSB-Device CDC-ECM
  • emUSB-Device BASE
  • emUSB-Device Target Driver
  • emNet TCP/IP Network Stack

CDC-NCM Class

CDC-NCM

USB Device CDC-NCM Class

製品型番:MB-EMUSBD-CL-CDCNCM

USBデバイスを仮想ネットワークアダプターとして機能させることができます。これは、USB経由でTCP / IPベースのアプリケーションを実行するために使用できます。

emUSB-Device CDC-NCMクラスの特徴:

  • Linux, macOSではドライバ不要
  • すべてのUSBデバイスでIPプロトコルを利用
  • 組込機器に最適なコンパクト設計

システム要求:「emNet」ネットワークスタックが必要になります。

CDC-NCM(Communication Device Class / Network Control Model protocol)クラスは、USB.orgコンソーシアムによって定義された標準のUSBクラスプロトコルです。実際のIP通信を処理するには、USBデバイス側にemNetのようなTCP / IPスタックが必要です。利用可能なIPプロトコル(UDP、TCP、FTP、HTTPなど)を使用してデータを交換できます。

Linuxカーネルバージョン2.6.38以上、macOS は、CDC-NCMを完全にサポートしています。Windows環境の場合は、CDC-NCMのドライバが必要です。

emUSBデバイスCDC-NCMは、他のインターフェイス(バルク、CDC、MSD、MTP、HID)と組み合わせて問題なく使用できます。

120MHzで動作する一般的なCortex-Mでは、高速USB接続を使用すると、約 5MiB/sの転送速度を実現できます。

適用事例:

USBネットワーク変換アダプタ、ルーター/ゲートウェイ

CDC-NCM class example
必要なコンポーネント
  • emUSB-Device CDC-NCM
  • emUSB-Device BASE
  • emUSB-Device Target Driver
  • emNet TCP/IP Network Stack

RNDIS Class

rndis

USB Device RNDIS Class

製品型番:MB-EMUSBD-CL-RNDIS

USBデバイスを仮想ネットワークアダプターとして機能させることができます。これは、USB経由でTCP / IPベースのアプリケーションを実行するために使用できます。

emUSB-Device RNDISクラスの特徴:

  • Linux, Windowsではドライバ不要
  • すべてのUSBデバイスでIPプロトコルを利用
  • 組込機器に最適なコンパクト設計

システム要求:「emNet」ネットワークスタックが必要になります。

RNDIS(Remote Network Driver Interface Specification)クラスは、USB.orgコンソーシアムによって定義された標準のUSBクラスプロトコルです。実際のIP通信を処理するには、USBデバイス側にemNetのようなTCP / IPスタックが必要です。利用可能なIPプロトコル(UDP、TCP、FTP、HTTPなど)を使用してデータを交換できます。

Windows、Linuxカーネルバージョン2.6.34以上は、RNDISを完全にサポートしています。Windows7より古い環境の場合は、RNDISパッケージ付属のドライバ定義(.INF)ファイルは使用可能です。

emUSBデバイスRNDISは、他のインターフェイス(バルク、CDC、MSD、MTP、HID)と組み合わせて問題なく使用できます。

120MHzで動作する一般的なCortex-Mでは、高速USB接続を使用すると、約 5MiB/sの転送速度を実現できます。

適用事例:

USBネットワーク変換アダプタ、ルーター/ゲートウェイ

RNDIS class example
必要なコンポーネント
  • emUSB-Device RNDIS
  • emUSB-Device BASE
  • emUSB-Device Target Driver
  • emNet TCP/IP Network Stack

IP-over-USB Class

IP-over-USB

USB Device IP-over-USB Class

製品型番:MB-EMUSBD-CL-IP

emUSB-Device IP-over-USBアドオンを使用すると、開発者はUSB経由でIPベースプロトコルを簡単に実行できます。Webブラウザーを使用し、USBデバイスの状態表示設定変更などが可能です。

emUSB-Device IP-over-USBクラスの特徴:

  • 各クロスプラットフォーム、Linux, Windows, macOSではドライバ不要
  • すべてのUSBデバイスでIPプロトコルを利用

システム要求:「embOS」RTOSと「emNet」ネットワークスタックが必要になります。

IP-over-USBテクノロジとWEBサーバを組合せ、ターゲット機器に組込む事により、WEBブラウザにデバイス名を入力するだけで、Windows、MacOS、LinuxのホストPCからデバイスにアクセスが出来ます。デフォルトのデバイス名は「usb.local」となっています。シリアル番号を付与することが可能で、複数のデバイス名を割り当てることも可能です。

IP-over-USBを利用することで、デバイスの使いやすさが向上し、製品価値を高め、生産コストを改善

お客様機器から機器操作に係わる部品(ディスプレイパネル・LCD表示・ボタン)を削減、生産コストを大幅に改善できます。また操作方法も組込機器からWEBブラウザ表示することで、マニュアルも削減可能です。

IP-Over-USb blocks and samples

WebUSB対応

Google社で開発された標準WebUSBをサポートします。emUSB-Device-Bulkコンポーネントにより実装実現します。ウェブブラウザから、JavaScriptを介して、機器の操作を行うことができます。

必要なコンポーネント
  • emUSB-Device IP-over-USB
  • emUSB-Device BASE
  • emUSB-Device Target Driver
  • embOS RTOS
  • emNet TCP/IP Network Stack

評価サンプル

emPower evb

emPower emUSB-Device IP-over-USBデモサンプル

  1. PC側にEmbedded Studioプロジェクトを起動しデフォルトのデモアプリケーションをビルドしてemPowerボードにダウンロードします。
  2. emPowerボードのHS-USBコネクタをPCに接続します。
  3. PC側のWEBブラウザから「http://usb.local」を開いてemPowerのWEBサーバーのデモ用ページ内容を確認します。

emPower評価ボード用サンプルダウンロード

emPower評価ボードについて


DFU Class

DFU

USB Device DFU Class

製品型番:MB-EMUSBD-CL-DFU

ファームウェアアップグレード機能をUSBデバイスに簡単に追加

emUSB-Device DFUクラスの特徴:

USB DFUは、ランタイムモードとDFUモードの2つの動作モードをサポートします。ランタイムモードでは、USBデバイスは通常の操作を実行し、ホストにDFU機能を通知します。ただし、このモードでは、ファームウェアのダウンロードを受け入れることができません。ホストは、USBデバイスをDFUモードに切り替えることができます。このモードでは、ファームウェアのアップグレードを実行できます。

適用事例:

様々なデバイス機器にファームウェアアップデート機能を提供します。

ファックス、カメラ、ルーター/ゲートウェイ、スマートウォッチ、プリンター

dfu example
必要なコンポーネント
  • emUSB-Device DFU
  • emUSB-Device BASE
  • emUSB-Device Target Driver

Bulk component

vendor

USB Device Bulk Class

製品型番:MB-EMUSBD-CL-BLK

ユーザ独自クラスとして様々なUSBデバイス機器を開発可能

emUSB-Device Bulkクラスの特徴:

emUSB-Device Bulkコンポーネントを使用すると、開発者はUSB経由でPCと通信する組み込みデバイス用のソフトウェアをすばやく簡単に開発できます。 プロトコルのオーバーヘッドなしで簡単かつ高速な通信を提供し、カスタムプロトコルの迅速な実装を可能にし、実行に必要なリソース(メモリとエンドポイント)を最小限に抑えます。

emUSB-Device Bulkコンポーネントスタックは、デバイス側(ソースコード)とホスト用のAPIで構成されます。アプリケーションがデバイスと通信できるようにする使いやすいAPIを提供します。BULK APIは、Windows、Linux、およびmacOSシステムで使用できます。LinuxディストリビューションおよびmacOSのソースコードで提供されます。

Bulk Component

適用事例:

J-Linkデバッグプローブ、温度データロガー、ソフトウェア保護ドングル

vendor example
必要なコンポーネント
  • emUSB-Device Bulk Component
  • emUSB-Device BASE
  • emUSB-Device Target Driver
emUSBD TOP