こんにちは、stackoverflow.com のメンバーです。
avr-gcc で生成された HEX ファイルをアップロードできるアプリを Android でビルドしようとしています。AndAVR このチェーンツールをインストールしましたhttp://code.google.com/p/andavr/
avrdude を実行するには (USB-OTG ケーブルを使用したルート デバイスで)、モバイル ターミナルで次のコマンドを使用します。
/data/data/jackpal.androidterm/local/bin/avrdude -F -V -c arduino -p m2560 -P /dev/bus/usb/002/001 -b 115200 -C /data/data/jackpal.androidterm/local/etc/avrdude.conf -U flash:w:/sdcard/megademo/Blink1.cpp.hex
この投稿を読んだ後、Android は AVRDUDE を使用して Arduino と通信できません。解決策を試し、/dev/ttyACM0 で /dev/bus/usb/002/002 を変更します。
/data/data/jackpal.androidterm/local/bin/avrdude -F -V -c arduino -p m2560 -P /dev/ttyACM0 -b 115200 -C /data/data/jackpal.androidterm/local/etc/avrdude.conf -U flash:w:/sdcard/megademo/Blink1.cpp.hex
しかし、avrdudeは次のように答えてくれます:
avrdude: ser_open(): can't open device "unkown". No such file or directory.
私はArduino Mega 2560とMega ADK 2560 R3を持っています.両方のボードにはATmega2560マイクロコントローラがあり、私は持っています:
- Samsumg Galaxy S2 はルートで Android 4.1.2 ストックを実行します
- Samsung Galaxy S3 はルートで Android 4.1.2 ストックを実行します
- Samsumg Galaxy Tab Note 10.1 はルートなしで Android 4.1.2 ストックを実行します
- Asus Transformer Pad TF700T はルートなしで Android 4.2.1 ストックを実行します
問題は、Samsung デバイスが Arduino ボードと Asus タブを列挙しないことです。
すべてのデバイスで、モバイル端末でコマンドを実行します。
cat /proc/tty/drivers
およびAsusは特定のドライバーを提示します:
ACM /dev/ttyACM 166 0-31 serial
このドライバーは Samsung デバイスでは表示されません。このドライバーは 16 進ファイルを Arduino ボードにアップロードするために不可欠です。このドライバーを Samsung デバイスにインストールするにはどうすればよいですか? または、hex ファイルをアップロードするにはどうすればよいですか?
すべてのデバイスの Android は、/dev/bus/USB/002/xxx にファイルを作成します。ここで、xxx は Arduino ボードまたはその他の USB デバイスです。
よろしくお願いします!