USBシリアル変換ICのマイコンライターとしての使用可否検証 その2 FT232RL, FT231X, avrdudeコマンド

[MacOS Ventura 13.3.1, Windows11]

前回の続き。

5.FT232RL USBシリアル変換モジュール、AVRマイコンのデータシートをある程度理解できる知識、avrdudeコマンドに関する知識があれば、安価でマイコンへの書き込みが可能。avrdude-GUIのようなアプリを使わずとも、WindowsやMacOSで自在に書き込みができる。

6.avrdude関連コマンド例 (ATtiny13A)

# MacにつないだFT232RLのポートを調べる
ls -l /dev/tty.*
# 出力例
crw-rw-rw-  1 root  wheel  0x9000004  5 13 19:11 /dev/tty.Bluetooth-Incoming-Port
crw-rw-rw-  1 root  wheel  0x9000002  5 13 19:11 /dev/tty.usbserial-DJ004ULY
crw-rw-rw-  1 root  wheel  0x9000000  5 13 19:11 /dev/tty.wlan-debug

# 接続確認
# Windows
avrdude -n -p attiny13a -C avrdude.conf -c ft232r -P ポート番号(COM3など)
# MacOS
avrdude -n -p attiny13a -C /opt/homebrew/etc/avrdude.conf -c ft232r -P /dev/tty.usbserial-DJ004ULY

# hexファイル書き込み
avrdude -p attiny13a -c ft232r -P /dev/tty.usbserial-DJ004ULY -U flash:w:main.hex:i -B 4800

# FUSE変更
avrdude -p attiny13a -c ft232r -P /dev/tty.usbserial-DJ004ULY -U lfuse:w:0b01111010:m -U hfuse:w:0b11111111:m -B 4800

7.avrdude.conf 設定例
/opt/homebrew/etc/avrdude.conf

programmer
    id    = "ft232r";
    desc  = "FT232R Synchronous BitBang";
    type  = "ftdi_syncbb";
    connection_type = usb;
    miso  = 3;  # CTS X3(1)
    sck   = 5;  # DSR X3(2)
    mosi  = 6;  # DCD X3(3)
    reset = 7;  # RI  X3(4)
;

8.FTDI BitBang AVR-Writer(Windows用)をFT231Xで組んでみたがエラー発生。元記事ではFT232RLを使用している。
https://make.kosakalab.com/arduino/avr-writer/

9.FT231Xは簡易機能版のためマイコンライターとしては使えないことが判明。FT232RLのBitBangモードを使えばマイコンライターとなる。

2023/5/22追記:後日avrdude-GUI(Windows版のみ)を使ってFT231Xで書き込みできた。関連記事参照。

$ avrdude -c ft231x -p attiny13a -U flash:w:main.hex:i -P /dev/tty.usbserial-DJ004ULY
avrdude: MISO: Following pins are not valid pins for this function: 8
         Pin assignment  : 0..7 = DBUS0..7
           VCC     =  (not used)
           BUFF    =  (not used)
           RESET   =  3
           SCK     =  6
           MOSI    =  7
           MISO    =  8
           ERR LED =  (not used)
           RDY LED =  (not used)
           PGM LED =  (not used)
           VFY LED =  (not used)
avrdude: opening programmer "ft231x" on port "/dev/tty.usbserial-DJ004ULY" failed

avrdude done.  Thank you.

10.秋月電子が販売しているFT232RL USBシリアル変換モジュール(1100円)はUSBコネクタがminiBなので要注意。今はmicroBが主流のため持っていない方も多いのでは。私は携帯電話関連のケーブルを処分した際に一緒に捨てていました。

USB miniB

USBシリアル変換ICのマイコンライターとしての使用可否検証 その1 FT231X

[MacOS Ventura 13.3.1, Windows11]

AIの急速な進化に伴いソフトウエア製作への興味が薄れつつあります。プログラミングが知的刺激を伴わなくなり、単純に面白くなくなってきました。ソフトウエア技術の価値が揺らいでくると、ハードウェアの相対的重要性が増してくるように思います。

USBシリアル変換IC FT231Xをマイコンライターとして使えないかトライしています。その過程を記録していきます。

1.FT231XのUSBシリアル変換モジュールを購入。2016年9月。

2.このモジュールをマイコンライターに転用できないか検討開始。2023年5月。

3.ドライバは以下のサイトから入手。
https://ftdichip.com/drivers/vcp-drivers/

MacOS Venturaではベータ版インストーラがうまく動作せず。調べると最近のMacOSにはデフォルトでドライバが入っているとのこと。Macのシステムレポートでドライバ認識を確認。

4.Windows11でMicrochip Studioを使ってLED点滅コードをコンパイルし、avrdudeで書き込みを図るが以下のエラーが発生。デバイスドライバではFT231XをCOM3として認識している。avrdude.confにはFT231Xについて追記済。miso等後ろ4行は仮設定。

>make flash
avrdude -c ft231x -p attiny13a -U flash:w:main.hex:i
E avrftdi_open(696): Error -3 occurred: device not found
avrdude error: unable to open programmer ft231x on port usb
programmer
    id    = "ft231x";
    desc  = "FT231X";
    type  = "avrftdi";
    connection_type = usb;
    miso  = 3;  # CTS X3(1)
    sck   = 5;  # DSR X3(2)
    mosi  = 6;  # DCD X3(3)
    reset = 7;  # RI  X3(4)

;

RTX 4070Tiの占有スロット数 / GPU2枚挿し

[MB : ASUS ROG STRIX B660-F GAMING WIFI]

PalitのRTX 4070Tiは同種のグラボに比べて厚めで64mmになります。

価格コムではPalit品は3.1スロットを占有するという情報がありました。実際に見てみるとギリギリ3スロット占有で4スロット目のPCIe×16は使えそうな感じだったので手持ちのGTX 750Ti(購入から8年経過)を挿してみました。結果はあっさり成功です。同様に分厚いASUSの4070Tiは65mmですが、いけそうな気もします。

このまま2枚挿しの状態で普段使いは750Tiにして4070Tiが電力を消費しないようにしたいです。ただ4070Ti側の電源コネクタは出火トラブルの影響なのか嵌合がきつすぎて容易に外すことが出来ません。中継ケーブルのマザーボード側を外すのが妥当でしょうか。

グラボのスペックだけがやたらと高い構成ですが、AI研究用途であればCPUはリテールクーラーで十分なレベルでも問題ないでしょう。

最近のグラボは複数年の保証が増えています。Palit品は1年です。複数年保証品に本当に無償対応してくれるのか、私自身は懐疑的です。特に3年保証のGALAKUROブランド。今後のネット情報を注視していきます。

上段:Palit RTX 4070Ti (3スロット)
中段:玄人志向 GTX 750Ti (2スロット)
下段:サウンドボード (1スロット)