中華互換 Arduino Nano を ebay で買ってみた 700円ぐらい。
Arduino 互換という意味ではもっと安いのもあるが、安いものは USB シリアル変換モジュールが中華チップなのでドライバのインストールとか挙動に不安がある。FTDI チップ搭載だとこれぐらいが最安っぽい。FTDI チップは偽物もあるらしく、ドライバ側で弾かれたりするみたいだが、今回買ったのは大丈夫だった。
USB Serial を別途用意するならもっとアホみたいに安いのがある (水晶やら何やらついててもAVR 単独で買うのと同じぐらい)。
今回買ったのはちゃんとブートローダーが書きこみ済みのもので、シリアルポート経由で書きこみができる。ただ、手元に Arduino IDE がないため、avrdude を直で読んで書きこんでみる。
最初適当にこんな感じにしてみたが失敗した。
$ avrdude -pm328p -cstk500v1 -P /dev/tty.usbserial-AL011AVX avrdude: stk500_recv(): programmer is not responding
ボーレートがあってないとこうなる可能性がある。-b オプションをかえてみる。
$ avrdude -pm328p -cstk500v1 -P /dev/tty.usbserial-AL011AVX -b b57600 avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.05s avrdude: Device signature = 0x1e950f avrdude: safemode: Fuses OK avrdude done. Thank you.
とかなればOK (この例では書きこみまでやってない)
LED が4つ載っていて、TX RX PWR L となっている。最後の L ってなんだ?と思って回路図を見てみたが、単に PB5 に繋がっている LED らしい。デフォルトだとLチカが書きこまれているようでチカチカする。
Arduino IDE でも Arduino Nano を指定して書きこむことができた。
最初なぜか Uno と勘違いして設定していて失敗しまくって、なんでだろう?ってなっていた。結局 Arduino.app/Contents/Java/hardware/arduino/avr/boards.txt を見て調べてる途中で気付いた。