web-dev-qa-db-ja.com

USBaspがttyUSB0を作成しない

USBASP 2.0プログラマーを購入して接続しましたが、プログラマーによって作成されたポートが表示されません。私が期待しているのは、USBtty0/devです。

これを修正するために、UDEVを再起動し、他のUDEV構成を試しましたが、表示されません。

uname

Linux Puc 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

lsusb

Bus 003 Device 092: ID 16c0:05dc Van Ooijen Technische Informatica shared ID for use with libusb

dmesg

[181622.326920] usb 3-5: new low-speed USB device number 92 using xhci_hcd
[181622.460268] usb 3-5: New USB device found, idVendor=16c0, idProduct=05dc
[181622.460270] usb 3-5: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[181622.460271] usb 3-5: Product: USBasp
[181622.460272] usb 3-5: Manufacturer: www.fischl.de

udevルール

SUBSYSTEMS=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", MODE="0666"

このデバイス: http://www.fischl.de/usbasp/

[編集]

arduino/hardware/tools/avrディレクトリからこのコマンドを使用すると、Arduino IDE内からではなく、接続が機能します。

./bin/avrdude -C etc/avrdude.conf -c usbasp -P usb -p m328p

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e950f

avrdude: safemode: Fuses OK (H:05, E:DF, L:FF)

avrdude done.  Thank you.
2
Thijs

私はそれが想定されているとは思わない。

私の記憶が正しければ、USBaspはカスタムコントロール転送で動作します。 avrdudeは、ベンダーと製品IDおよびID文字列によって/dev/bus/usbから検索します。

avrdudeを使用すると、次のようなものが機能するか、正しいIDのUSBデバイスが見つからないと文句を言うはずです。

avrdude -P usb -c usbasp -p $UC

また、USBaspはソフトウェアで実装されたUSBで動作するため、低速動作に制限されます。これは、原則として、シリアルポートとして動作できないことを意味します。

USB CDCクラスは、モデムやその他の通信デバイスを対象としています。 [...]
CDCには、USB仕様で低速デバイスに対して禁止されているバルクエンドポイントが必要です。

V-USB wiki からの引用)

3
ilkkachu