UX302NC の CD-ROM を解除

ドコモのLTE周波数帯のクアッドバンドに対応した USB LTE モデム UX302NC を手に入れたので、Raspberry Pi2 で使えないかと調べました。SCSIコマンドを送信してやることで CD-ROMモードが解除されることがわかったのでメモ。
UX302NC を Raspberry Pi2 に刺した時のログです。idVendor=11f6, idProduct=1035 でした。
usb 1-1.4: new high-speed USB device number 4 using dwc_otg
usb 1-1.4: New USB device found, idVendor=11f6, idProduct=1035
usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1.4: Product: NCXX UX302NC
usb 1-1.4: Manufacturer: NCXX Inc.
usb 1-1.4: SerialNumber: 1234567890
usb-storage 1-1.4:1.0: USB Mass Storage device detected
scsi host0: usb-storage 1-1.4:1.0
scsi 0:0:0:0: CD-ROM            USBModem Disk             2.31 PQ: 0 ANSI: 2
sr 0:0:0:0: [sr0] scsi3-mmc drive: 0x/0x caddy
cdrom: Uniform CD-ROM driver Revision: 3.20
sr 0:0:0:0: Attached scsi CD-ROM sr0
sr 0:0:0:0: Attached scsi generic sg0 type 5
SCSIコマンドを発行できるツールをインストールします。
$ sudo apt-get install sg3-utils
/dev/sg0 に対して特定のSCSIコマンドを発行します。
$ sg_raw /dev/sg0 06 f5 04 02 52 70
usb 1-1.4: USB disconnect, device number 4
cdrom: issuing MRW background format suspend
usb 1-1.4: new high-speed USB device number 5 using dwc_otg
usb 1-1.4: New USB device found, idVendor=11f6, idProduct=1034
usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1.4: Product: NCXX UX302NC
usb 1-1.4: Manufacturer: NCXX Inc.
新たに idProduct=1034 に変わってモデムとして認識されましたが、このままでは使えません。
もう少し調べてみる必要がありそうです。

関連記事

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

“HIH-6130 湿度センサー を使う” に9件のコメントがあります

  1. はじめまして、私もhih-6130とRaspberry piの接続をしようとしていますが、pythonのプログラムは初めてで、記事を参考にさせて頂こうとしています。
    早速ですが、記事のコードが上手く実行出来なくて、教授頂けないでしょうか?

    実行すると、以下のエラーが出てデータの読み取りができません。
    buf = i2c.read_i2c_block_data(0x27, 0, 4)
    IOError: [Errno 5] Input/output error

    失礼ですが、33行目のwhile文の後ろに:が足りないのではないでしょうか?

    1. naggieさん、こんばんは。はじめまして。
      実は私もPythonは初めてなんです (^-^;)
      ご教授頂いた最後のループの「:」は訂正させて頂きました。
      お恥ずかしい限りです。
      さて、naggieさんのRaspiちゃんですがi2c-toolsとpython-smbusが入っていて
      modprobeとblacklistは対応済みでtypeはBでrevisionが2と考えて宜しいでしょうか?
      それならばまずはi2c-toolsを使って動作確認をしてみましょう。
      i2cdump -y 1 0x27 で値が出て来るでしょうか?
      センサーが活きていれば

      $ i2cdump -y 1 0x27
      No size specified (using byte-data access)
           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
      00: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      10: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      20: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      30: 58 58 58 18 58 58 58 58 58 58 58 58 58 58 58 58    XXX?XXXXXXXXXXXX
      40: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      50: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      60: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      70: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      80: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      90: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      a0: 58 58 58 58 58 58 58 58 18 58 58 58 58 58 58 58    XXXXXXXX?XXXXXXX
      b0: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      c0: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      d0: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX
      e0: 58 58 58 18 58 58 58 58 58 58 58 58 58 58 58 58    XXX?XXXXXXXXXXXX
      f0: 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58 58    XXXXXXXXXXXXXXXX

      こんな感じのダンプが得られるはずなんですが…いかがでしょうか?

      1. airwhiteさん、
        返信ありがとうございます。
        前提条件は整っている筈です。BMP085という気圧計での計測実績もあります。
        早速コマンドを試してみました。
        $ i2cdump -y 1 0x27
        No size specified (using byte-data access)
        0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
        00: XX XX XX XX XX XX XX XX XX 40 40 40 40 40 40 40 XXXXXXXXX@@@@@@@
        10: 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 @@@@@@@@@@@@@@@@
        20: 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 @@@@@@@@@@@@@@@@
        30: 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 @@@@@@@@@@@@@@@@
        40: 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 @@@@@@@@@@@@@@@@
        50: 40 40 40 40 64 64 64 64 64 64 64 64 64 64 64 64 @@@@dddddddddddd
        60: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        70: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        80: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        90: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        a0: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        b0: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        c0: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        d0: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        e0: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        f0: 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 dddddddddddddddd
        おかしいですね。死んでいるのでしょうか?

        1. どうも、こんばんは o(*^-^*)o
          たぶん壊れていることは無いと思うのですが…信号が不安定なように思います。
          ちょっと気になることがありまして hih6130 は i2cバスに1個だけでしょうか?
          その他にもi2cバスにぶら下がっているものがありましたら外してみては如何でしょう。
          私のhih6130はスイッチサイエンスさんから購入したのですが、このセンサーのSDAとSCLにはプルアップ抵抗がついていますが、RaspberryPi本体はプルアップ済みになっています。
          単体のセンサー1個ぐらいなら大丈夫だけど複数個のセンサーや装置をi2cバスにぶら下げる場合には、センサー側のプルアップ抵抗を外した方が良いそうです。
          ちなみに私が買ったbmp085もプルアップ済みになっています。
          (スイッチサイエンスのbmp085は半田パッドを削り取るとプルアップが無効になるように回路が組まれているそうです)
          無事に動いてくれることを願っております。

  2. airwhiteさん、
    こんばんは、naggieです。
    信号が不安定というご指摘ありがとうございました。
    思い当たる節があったので、ピンヘッダーの形状を太い物に変更した所、上手く値が取れるようになりました。いやぁ、すばらしい。
    我が家には夏場湿度が高くなる部屋があって、カビが大変なんです。湿度の変化を検知して除湿機を動かそうと思っています。

  3. Raspberry Piから磁気センサーの出力を読み取ろうとしていましたが、うまくいかず、調べているうちにこちらにたどり着きました。
    「RaspberryPi本体はプルアップ済み」という情報が大変助かりました。センサーモジュールの基盤についているプルアップ抵抗を有効にしていたのが原因でした。これを無効にすると素直なdump結果が得られました。数日悩んでいたのがウソのようです。ありがとうございました。