SNSへはこちら

Tang Nano 4Kでも通常ユーザーで書き込みを実行する

ちょい記事です。
最近 Shigezone さんで Tang Nano 4K が爆安で売られているのを知って速攻購入しちゃいました。

特徴とか

かんたんに紹介します。Tang Nano 4K とは、GW1NSR-LV4C というチップが載ったボードです。GOWIN の製品ページにも書いてありますが、軽く列挙。

  • LUT 数が Tang Nano のものと比べて4倍。たくさんロジックを構築できる。
  • ARM Cortex-M3 プロセッサを搭載
  • ボードに HDMI 端子が存在し、ディスプレイと繋げて模様を表示させることが可能
  • 32Mbit (4MBytes) のNOR Flash 搭載

結構すごいですよね。Shigezone で 1,980 円にて販売。すごい。

結果だけ先に

以下のディレクトリにルールを記述すれば対応可能です。自分は 50-tang-nano.rules というファイルが既にあったので 51 番としました。

$ cat /etc/udev/rules.d/51-tang-nano-4k.rules
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", ATTRS{product}=="JTAG Debugger", GROUP="users", MODE="0666"

あとは以前書いたこの記事 に従えばいいです。ユーザーグループの確認等をお忘れなく。

備忘録

どうやってこのルールを書いたかですが、これは以前の Tang Nano の先人がくれたものをチョイ変しただけなのです。
ですのでどうやってチョイ変したのかをつらつらと書いていきます。雑だけどね。

VirtualBox にて、クライアントに USB を認識させる設定を行った上で、dmesg で確認。

$ dmesg | grep usb
[ 2399.870490] usb 1-1: USB disconnect, device number 6
[ 2441.473853] usb 1-1: new full-speed USB device number 7 using xhci_hcd
[ 2441.614947] usb 1-1: not running at top speed; connect to a high speed hub
[ 2441.616222] usb 1-1: New USB device found, idVendor=0403, idProduct=6010, bcdDevice= 5.00
[ 2441.616224] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2441.616225] usb 1-1: Product: JTAG Debugger
[ 2441.616227] usb 1-1: Manufacturer: SIPEED
[ 2441.616228] usb 1-1: SerialNumber: FactoryAIOT Pro
[ 2441.626096] usbcore: registered new interface driver ftdi_sio
[ 2441.626111] usbserial: USB Serial support registered for FTDI USB Serial Device
[ 2441.626152] usb 1-1: Detected FT2232C
[ 2441.627636] usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB0
[ 2441.627704] usb 1-1: Detected FT2232C
[ 2441.628679] usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB1

すると ttyUSB0 がそれっぽいので次のコマンドで調べる。長いのでファイルに保存し、抽出する。

$ udevadm info -a -n /dev/ttyUSB0 > ~/ttyusb0.txt
$ cat ~/ttyusb0 | grep product
    ATTRS{product}=="JTAG Debugger"
    ATTRS{product}=="xHCI Host Controller"

多分 JTAG Debugger なので、それを置き換える。