メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

PukiWiki最新記事
[ リロード ]   [ ソース ]  [ トップ | インデックス | 単語検索 | ご意見、ご感想 ]

Counter: 6968, today: 1, yesterday: 1

Linux+arduinoで「シリアルポートが存在しません」の対処

Linux (Fedora 19)上でArduino IDEでマイコンボードへ書き込むを実行したときにでるエラーの対応です。
(ツール > シリアルポートを選択できない問題と同じ)

出るエラー

processing.app.SerialNotFoundException: シリアルポート「/dev/com1 (/dev/ttyACM0)」が存在しません。
「ツール」メニューの「シリアルポート」で、正しいシリアルポートを選んでありますか?
	at processing.app.Serial.<init>(Serial.java:191)
	at processing.app.Serial.<init>(Serial.java:77)
	at processing.app.debug.Uploader.flushSerialBuffer(Uploader.java:77)
	at processing.app.debug.AvrdudeUploader.uploadViaBootloader(AvrdudeUploader.java:175)
	at processing.app.debug.AvrdudeUploader.uploadUsingPreferences(AvrdudeUploader.java:67)
	at processing.app.Sketch.upload(Sketch.java:1671)
	at processing.app.Sketch.exportApplet(Sketch.java:1627)
	at processing.app.Sketch.exportApplet(Sketch.java:1599)
	at processing.app.Editor$DefaultExportHandler.run(Editor.java:2407)
	at java.lang.Thread.run(Thread.java:724)

この問題は、rootで実行すると解決できますが、USERで実行したいので環境を設定します。
以下の2つの設定が必要で、
1. /run/lock/lockdebにアクセスできるようにする。
 アクセスするため、USERにグループをdialout, lock, (uucp)を追加します。
 sudo usermod -a -G dialout,lock,uucp USER
 これで、 /run/lock/lockdeb にアクセスできるはずです。
 場合によっては、

sudo chmod 777 /run/lock/lockdeb

2. /dev/ttyACM0をread/writeできるようにする。
 arduino UNOのボードは、USBへ差し込むとttyACM0として認識されます。
 しかしながら、属性が

crw-rw----. 1 root dialout 166, 0 11月  2 10:08 /dev/ttyACM0

 になっているので、アクセスできません。
 ここで属性を変更します。

sudo chmod 777 /dev/ttyACM0

 これでUSERからread/writeできるようになりますが、USBを抜いて、指すと、
 また初期のread/write属性に戻ってしまっていちいち設定するのが面倒なので
 arduino UNOを差し込んだときのudevルールを記述しておき、自動的に
 777になるようにしておきます。
 /etc/udev/rules.d/に10-arduino.rulesというファイル名で以下を記述しておきます。

KERNEL=="ttyACM0", MODE="0777"

 これで、ttyACM0がUSBに差し込まれたら自動的に777になります。
 記述したら、以下で更新しておきます。

echo > /sys/class/tty/ttyACM0/uevent

以上で、シリアルポートがメニューに現れて選択できるようになるはずです。
fedoraのバージョンで異なることがありますが、rootで転送できることが確認できれば、
同じような方法で解決できると思います。

   

ページコメント
投稿された内容の著作権はコメントの投稿者に帰属します。

トラックバック [ トラックバック(0) ]
トラックバック URL: http://myboom.mkch.net/modules/pukiwiki/tb/186