Team for GR-PEACH Producer Meeting

USB HUBの認識に関して

27 Feb 2015

昨日(20150227)公開いただいた、サンプルプログラムGR-PEACH USBHost sampleを用いて、USBメモリー動作(USB_HOST_TEST 3)が上手くいくことは確認出来ました。
同じプログラムで、HUB経由に切り替えたところ期待通りの動作をしません。
USBに関して知識がなく、ライブラリーの中を覗いてもよくわかりません。
/USBHost/USBHost/USBHostConf.h
Maximum number of ports on a USB hub
define MAX_HUB_PORT 2
の個数を変えても症状は同じです。
勿論HUBの接続は手持ちの一個のみです。
お手数ですが、どなたか対応方法を教えていただけませんか?

ちなみにターミナルへの表示は下記のようになります。
[USB_INFO: /src/USBHost/USBHost/USBHost.cpp:155]New device connected: 200314c0 [hub: 0 - port: 1]
[USB_ERR: /src/USBHost/USBHost/USBHost.cpp:174]Too many hubs connected!!
LPC1768 mbedでは、下記のように同じプログラムが問題なく動作します。
[USB_INFO: /src/USBHost/USBHost/USBHost.cpp:155]New device connected: 10004074 [hub: 1 - port: 3]
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:81]New MSD device: VID:0930 PID:6544 [dev: 10004074 - intf: 0]
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:164]MSD [dev: 10004074] - Vendor ID: TOSHIBA
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:168]MSD [dev: 10004074] - Product ID: TransMemory
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:172]MSD [dev: 10004074] - Product rev: 1.00
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:139]MSD [dev: 10004074] - blockCount: 15155199, blockSize: 512, Capacity: 7759461888

02 Mar 2015

Araiさん>

GR-PEACHのログが"[hub: 0 - port: 1]"となっている為、HUB自体が一度抜かれてから再び挿入されているような動作をしています。
(現状の仕組みでは、短時間に切断/接続の両方が発生すると接続イベントのみ発生します)
上記より、HUBへの給電が足りていない可能性が考えられます。

お手数ですが、以下をお試し頂けないでしょうか。

  1. ご使用のHUBがセルフパワーに対応している場合、HUBにACアダプタによる電源供給をおこなってみていただけますでしょうか。
  2. GR-PEACHではHi-Speed通信を行うようにしていますが、Full Speed通信までに制限することでHUBの消費電力が変わる可能性があります。
    以下を変更することで、USBの通信速度をFull Speedまでに制限してみていただけますでしょうか。
    (LPC1768はFull Speedで動作しています)
USBHost\USBHost\USBHALHost_RZ_A1.cpp (50)

void USBHALHost::init() {
    ohciwrapp_init(&_usbisr, 1);
      ↓
    ohciwrapp_init(&_usbisr, 0);
}


引き続き、よろしくお願いいたします。

03 Mar 2015

Hagimotoさん
お手数かけました。
HUBはUSBバス供給タイプしかなく、セルフパワー対応品を持ち合わせていません。
HUBが二つあったので、USBメモリーも二つ用意し組み合わせたところ下記のようになりました。
HUB品番誤記訂正(20150303)

No.MODEUSB MemoryHUB(ELECOM)RESULTCOMMENT
1High-SpeedKingmax/1GBU3H-K304BNGToo many hubs connected!!
2High-SpeedTOSHIBA/8GBU3H-K304BNGToo many hubs connected!!
3High-SpeedKingmax/1GBU2H-H4BRSOK
4High-SpeedTOSHIBA/8GBU2H-H4BRSOK
5Full-SpeedTOSHIBA/8GBU2H-H4BRSOK
6Full-SpeedKingmax/1GBU2H-H4BRSOK
7Full-SpeedTOSHIBA/8GBU3H-K304BNGHUBは認識していそうだが?
8Full-SpeedKingmax/1GBU3H-K304BOK

先のレポートは、HUBとメモリーの両方が組み合わせ最悪をたまたま選んだようです。
お騒がせいたしました。

下記にターミナルへのメッセージログを残します(一部削除等、加工してます)。
(1) NG High-Speed
Kingmax/1GB + U3H-K3D4B
[USB_INFO: /src/USBHost/USBHost/USBHost.cpp:155]New device connected: 200314c0 [hub: 0 - port: 1]
[USB_ERR: /src/USBHost/USBHost/USBHost.cpp:174]Too many hubs connected!!

(2) NG High-Speed
TOSHIBA/8GB + U3H-K3D4B
[USB_INFO: /src/USBHost/USBHost/USBHost.cpp:155]New device connected: 200314c0 [hub: 0 - port: 1]
[USB_ERR: /src/USBHost/USBHost/USBHost.cpp:174]Too many hubs connected!!

(3) OK High-Speed
Kingmax/1GB + ELECOM/U2H-H4BRS
[USB_INFO: /src/USBHost/USBHost/USBHost.cpp:155]New device connected: 200314c0 [hub: 0 - port: 1]
[USB_INFO: /src/USBHost/USBHostHub/USBHostHub.cpp:103]New HUB: VID:05e3 PID:0605 [dev: 200314c0 - intf: 0]
[USB_INFO: /src/USBHost/USBHost/USBHost.cpp:155]New device connected: 200315cc [hub: 1 - port: 4]
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:81]New MSD device: VID:1687 PID:6281 [dev: 200315cc - intf: 0]
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:164]MSD [dev: 200315cc] - Vendor ID: Kingmax
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:168]MSD [dev: 200315cc] - Product ID: USB2.0 FlashDisk
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:172]MSD [dev: 200315cc] - Product rev: 1.00
[USB_INFO: /src/USBHost/USBHostMSD/USBHostMSD.cpp:139]MSD [dev: 200315cc] - blockCount: 2017279, blockSize: 512, Capacity: 1032846848

Goodbye World! このまま正常継続

(4) OK High-Speed
TOSHIBA/8GB + ELECOM/U2H-H4BRS
[一部削除 ]New device connected: 200314c0 [hub: 0 - port: 1]
[一部削除 ]New HUB: VID:05e3 PID:0605 [dev: 200314c0 - intf: 0]
[一部削除 ]New device connected: 200315cc [hub: 1 - port: 4]
[一部削除 ]New MSD device: VID:0930 PID:6544 [dev: 200315cc - intf: 0]
[一部削除 ] - Vendor ID: TOSHIBA
[一部削除 ]MSD [dev: 200315cc] - Product ID: TransMemory
[一部削除 ]MSD [dev: 200315cc] - Product rev: 1.00
[一部削除 ]MSD [dev: 200315cc] - blockCount: 15155199, blockSize: 512, Capacity: 7759461888

Goodbye World! このまま正常継続

(5) OK Full-Speed
TOSHIBA/8GB + ELECOM/U2H-H4BRS
[一部削除 ]New device connected: 200314c0 [hub: 0 - port: 1]
[一部削除 ]New HUB: VID:05e3 PID:0605 [dev: 200314c0 - intf: 0]
[一部削除 ]New device connected: 200315cc [hub: 1 - port: 4]
[一部削除 ]New MSD device: VID:0930 PID:6544 [dev: 200315cc - intf: 0]
[一部削除 ]MSD [dev: 200315cc] - Vendor ID: TOSHIBA

Goodbye World! このまま正常継続

(6) OK Full-Speed
Kingmax/1GB + ELECOM/U2H-H4BRS
[一部削除 ]New device connected: 200314c0 [hub: 0 - port: 1]
[一部削除 ]New HUB: VID:05e3 PID:0605 [dev: 200314c0 - intf: 0]
[一部削除 ]New device connected: 200315cc [hub: 1 - port: 4]
[一部削除 ]New MSD device: VID:1687 PID:6281 [dev: 200315cc - intf: 0]
[一部削除 ]MSD [dev: 200315cc] - Vendor ID: Kingmax

Goodbye World! このまま正常継続

(7) NG Full-Speed
TOSHIBA/8GB + U3H-K3D4B
[一部削除 ]New device connected: 200314c0 [hub: 0 - port: 1]
[一部削除 ]New HUB: VID:05e3 PID:0610 [dev: 200314c0 - intf: 0]
[一部削除 ]New device connected: 200315cc [hub: 1 - port: 4]
[一部削除 ]New MSD device: VID:0930 PID:6544 [dev: 200315cc - intf: 0]
[一部削除 ]MSD [dev: 200315cc] - Vendor ID: TOSHIBA

Goodbye World! 一見よさそうだがここで停止、ファイル名はUSB内に残るが中身なし

(8) OK Full-Speed
Kingmax/1GB + U3H-K3D4B
[一部削除 ]New device connected: 200314c0 [hub: 0 - port: 1]
[一部削除 ]New HUB: VID:05e3 PID:0610 [dev: 200314c0 - intf: 0]
[一部削除 ]New device connected: 200315cc [hub: 1 - port: 4]
[一部削除 ]New MSD device: VID:1687 PID:6281 [dev: 200315cc - intf: 0]
[一部削除 ]MSD [dev: 200315cc] - Vendor ID: Kingmax

Goodbye World! このまま正常継続