LoginSignup
11
5

More than 1 year has passed since last update.

Amazon などで購入できる激安ロジアナ。
image.png

いろんなところから販売されているが、どれもこれも「Logic Analyzer」ぐらいしか名前がなくて Generic 品風情が強い。しかしその中で KeeYees のロゴが付いているのがあり、おっと思ってこれを選んでみた。

image.png

しばらくして到着したものは・・・
image.png
結局ノーブランド品ぽいものでした。今回はこれを Ubuntu で動かしてみます。

環境

  • Ubuntu 22.04 LTS Desktop Ja

どんなハードウェアかな?

USBコネクタ。mini-B ですねー。

image.png

中身。
image.png

このロジアナのクロックはUSBのクロックをそのまま使っているというウワサもありあましたが、24MHzのクリスタルが乗っていました。

付属のジャンパーケーブルをコネクタに刺します。カラーコードを合わせてみましたが、後で使う sigrok のピン番号とずれているのでちょっと問題。

image.png

付属のクリップは、自分ではんだづけする必要があります。今回は付属のジャンパーケーブルに刺せるようにするため、ピンを出すことにしました。
ピンヘッダをはんだづけした後に黒いプラスチックを取って組み立てます。
image.png

加工が終わったところ。コネクタの色は6色で2つずつありますが、ケーブルの色の10色には足りないので工夫が必要です。

image.png

dmesg の状況

刺してみた。

[128636.623732] usb 3-1.3.3: new high-speed USB device number 11 using xhci_hcd
[128636.749653] usb 3-1.3.3: New USB device found, idVendor=0925, idProduct=3881, bcdDevice= 0.01
[128636.749659] usb 3-1.3.3: New USB device strings: Mfr=0, Product=0, SerialNumber=0

このロジックアナライザは Salae Logic のクローンという話があったので、このVendorIDを調べてみると・・・

$ lsusb
.
.
.
Bus 003 Device 016: ID 0925:3881 Lakeview Research Saleae Logic
.
.
.

なるほどー、真っ黒でした。

Saleae Logic のソフトが使えるという話もあるのですが、オープンソースの sigrok を使うことにします。

sigrok を動かしてみる

Ubuntu のパッケージからインストール。

$ sudo apt install sigrok
.
.
.
これを削除するには 'sudo apt autoremove' を利用してください。
以下の追加パッケージがインストールされます:
  sigrok-cli sigrok-firmware-fx2lafw
以下のパッケージが新たにインストールされます:
  sigrok sigrok-cli sigrok-firmware-fx2lafw
アップグレード: 0 個、新規インストール: 3 個、削除: 0 個、保留: 247 個。
67.7 kB のアーカイブを取得する必要があります。
この操作後に追加で 327 kB のディスク容量が消費されます。
続行しますか? [Y/n] 

インストールした後、動作確認してみます。

$ sigrok-cli -d fx2lafw --show
Driver functions:
    Logic analyzer
Scan options:
    conn
fx2lafw - Saleae Logic with 8 channels: D0 D1 D2 D3 D4 D5 D6 D7
Channel groups:
    Logic: channels D0 D1 D2 D3 D4 D5 D6 D7
Supported configuration options across all channel groups:
    continuous: on, off
    limit_samples: 0 (current)
    conn: 3.18 (current)
    samplerate - supported samplerates:
      20 kHz (current)
      25 kHz
      50 kHz
      100 kHz
      200 kHz
      250 kHz
      500 kHz
      1 MHz
      2 MHz
      3 MHz
      4 MHz
      6 MHz
      8 MHz
      12 MHz
      16 MHz
      24 MHz
      48 MHz
    Supported triggers: 0 1 r f e 
    captureratio: 0 (current)

動いてますね。ファームウェアも(何故か)インストールされているようです。

GUI で動かしてみる

PulseView を使って、sigrok を GUI で操作できるようにしてみます。
こちらも Ubuntu のパッケージでインストールします。

$ sudo apt install pulseview

起動したところ
image.png

I2Cの通信を見てみます。BME280 の通信を調べてみます。CH1 に SCL、CH2 に SDA、GNDとGNDをつなぎます。

image.png

PulseView の設定はとりあえずこれにしました。黄色と緑のアイコンを押してデコーダを選択します。
image.png
デコーダをI2Cにします。
image.png

「Run」を押すとデータが取得できました。D0 が CH1 で SCL, D1 が CH2 で SDA です。
DとCHの番号がズレているのですがどうにかできないのかな?

image.png

チャンネル名につけかえ、色も修正して見やすくしました。下のチャンネルに I2C の信号が見えてますね。

image.png

うーんでもデタラメですね。
サンプリングレートが低すぎたようです。

サンプリングレートを高くして、試してみました。
image.png

今度は、BME280 の I2C アドレス 76 がちゃんと見えるようになりました。
image.png

これは便利!

11
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
5