Kingst のロジアナを使ってみる

「格安USBロジアナを sigrok と PulseView で利用する」
https://qiita.com/nanbuwks/items/9069165bfb66d8836583

では低速の信号を見てみましたが、 LED パネルの動作チェックにもうチョット高速なものが必要になりました。
お小遣いで買えそうなものとして Kingst を見てみましたが・・・

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/c26ee6c4-62df-ec3a-1102-2afbfb603b19.png)



らびやんさんの開発している LovyanGFX で LED パネルを駆動して遊んでいるのですが、LovyanGFX で ESP32 の DMA を使って信号を送信しているため、80MHz の信号を調べたい・・・Fastest Digital Signal 80MHz でないといけないですね。
LA5016 を選ぶことにしました。AliExpress に kingst のオフィシャルストアというのがあったのでこちらで購入。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/b06093dd-f2aa-b030-a1f9-b74f0771bbd0.png)

これは 12/3 の値段。実は注文したのが11/18なので、ちょっと安くなってる！

2週間弱で到着。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/792a601a-69fc-f74f-56ec-170885623284.png)

到着した中身。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/b5dc54e1-3c83-bf69-1912-3f90c2a5ae35.png)

今回はコレを Ubuntu で使っていきます。

# 環境

- Ubuntu 20.04 LTS Desktop Ja
- KingstVIS Version 3.5.8 (64-bit)

# ハードウェア



USBコネクタ。Aコネクタ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/eb0fe696-b630-0f80-8cc0-7ea548401d22.png)


中身。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/6730615a-0822-740f-c437-13dad0759b33.png)

何か貼っているのかな？ と思ったら
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/212848e8-ce50-a71d-70e2-7225c113a638.png)

表面削ってました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/4da28796-e0e0-9bb8-d485-67b4a8c58c9d.png)


これはメモリかな
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/fd9c9d8c-d2e8-4c2a-43f8-6f27ab4a3878.png)

プローブコネクタには抵抗がみっちり。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/42ddacf6-ddc8-bdc5-f287-9d9244e487e3.png)

プローブコネクタ。これもやすいのと同じようにはんだづけしないといけないかな？と思ったら・・・
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/ded5c948-7a68-2690-fdcc-f5d402963cdf.png)

このように刺して使うそうです
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/f380c8f8-b176-98e0-023f-006a163a072b.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/0656d097-137b-6ef5-a100-684b8beb1e79.png)

色の並びは抵抗とかで使うカラーコードとは違っています。

# dmesg の状況
刺してみた。
```
[133366.123337] usb 3-2: new high-speed USB device number 42 using xhci_hcd
[133366.275561] usb 3-2: New USB device found, idVendor=77a1, idProduct=01a2, bcdDevice= 0.00
[133366.275574] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
```
このVendorIDを調べてみると・・・
```
$ lsusb
.
.
.
Bus 003 Device 042: ID 77a1:01a2  
.
.
.
```
あれ、出てこないな・・・

https://www.the-sz.com/products/usbid/
こちらでも検索して該当がありません。はて？？？

# ソフトウェア

さて、CDがついてきてますが、いまどき光学ドライブなんか読めません。
公式サイトに行ってみます。
http://www.qdkingst.com/en
Linuxがあって嬉しい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/ff94bf89-90ba-4d09-b57b-673362d37b35.png)
ダウンロードして展開します。
```
$ tar xzvf KingstVIS_v3.5.8.tar.gz 
$ cd KingstVIS/
$ ls
Analyzer   README        install.sh       libQt5Gui.so.5      libQt5XcbQpa.so.5  libicui18n.so.56
Driver     Resource      libAnalyzer.so   libQt5Network.so.5  libQt5Xml.so.5     libicuuc.so.56
KingstVIS  Updater       libQt5Core.so.5  libQt5Svg.so.5      libcrypto.so       libssl.so
Language   imageformats  libQt5DBus.so.5  libQt5Widgets.so.5  libicudata.so.56   platforms
```
READMEを見てみます。
```$ cat README 

  Hello, and welcome to KingstVIS for Linux!
  Before using the software, you'll need to give the application permission to access the device (otherwise you'll have to launch the application with sudo). To do this, unplug any attached device, and then run the 'Driver/install_driver.sh' or 'install.sh'(this file also add a startup shortcut and launch the application) from the command line.  After that you should be good to go.

  欢迎使用Linux版KingstVIS软件！
  在使用之前，你需要为本软件提供访问硬件设备的权限（否则你需要使用sudo启动软件）。拔掉已插入的设备，通过命令行运行脚本文件'Driver/install_driver.sh'或'install.sh'（该文件还会同时创建启动快捷方式并启动软件），之后你就可以正常使用了。

```
ふむふむ。

```
$ cat install.sh 
#!/bin/sh -x
sudo cp ./Driver/99-Kingst.rules /etc/udev/rules.d/99-Kingst.rules

appPath=$(dirname $(readlink -f $0))
desktopFile=$appPath/KingstVIS.desktop
echo "Create new test file: $desktopFile"
touch $desktopFile
chmod u+x $desktopFile 

echo "[Desktop Entry]" > $desktopFile
echo "Encoding=UTF-8" >> $desktopFile
echo "Version=1.0" >> $desktopFile
echo "Type=Application" >> $desktopFile
echo "Terminal=false" >> $desktopFile
echo "Exec="$appPath"/KingstVIS" >> $desktopFile
echo "Name=KingstVIS" >> $desktopFile
echo "Icon="$appPath"/Resource/logo.ico" >> $desktopFile

sudo cp $desktopFile /usr/share/applications/

sudo rm $desktopFile

.$dirname/KingstVIS &

```
なるほどね、udev には何を指示しているのかな？

```
$ cat Driver/99-Kingst.rules 
# Kingst Virtual Instruments
# This file should be installed to /etc/udev/rules.d so that you can access the hardware without being root
#
# type this at the command prompt: sudo cp 99-Kingst.rules /etc/udev/rules.d

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="01a1", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="01a2", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="01a3", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="01a4", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="02a1", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="02a2", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="02a3", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="03a1", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="03a2", MODE="0666"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="77a1", ATTR{idProduct}=="03a3", MODE="0666"

```
なるほどですね。では実行してみます。
```
$ ./install.sh 

```
とすると、起動しました

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/f1ad4fe8-2d9f-876e-bc8a-23e75e950e2e.png)

LEDパネルの評価キットに映像を出して、

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/4597e919-c688-bc9c-01bf-1877410936a3.png)

GNDとR1にプローブを刺します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/414842f3-611d-1ad7-4641-16f3aedc2ece.png)

データが取れました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/967ca382-caaa-393d-74dc-0ff4dbb01233.png)

拡大すると・・・
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/137d5a64-6fd8-02d6-d4a8-467b5ff76d45.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/a4ac65f2-4e8f-67a2-ed8d-37d6c42f94d6.png)

パルスにマウスカーソルを合わせるとパルス時間が出てきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/cad7e031-5d02-6b41-1f86-b9f800c788bd.png)

クロックとあわせてデータを取りました。200Msampling ぐらいできれいな矩形が取れました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/139524/b6642aa3-e02f-993f-a933-e29178e523ef.png)

このソフトも初見で使いやすい感じです。安いロジアナも良かったですが、これもイイですね！