Skip to content

Arduino micro, a modified bootloader

(231020、240211、240217 HPへ)

The official bootloader of the Arduino micro takes 8 seconds to reset, because it reloads both the bootloader and the user code. SparkFun distributes "Pro micro" with a modified bootloader which reset a board within 0,75 sec. Arduino micro is compatible with SparkFun Pro micro, so it can share the modified bootloader.

Arduino microの公式デフォルトブートローダでは、リセットに8秒かかる。BootloaderとUserCodeの両方を読み直すためらしい。SpatkFun社は、互換機"SparkFun Pro micro"を販売しており、改良されたBootloaderを配布している。リセットボタンを押す(シングルクリックする)とUserCodeだけ読み直し0.75secで再起動し、ダブルクリックでbootloaderから読み直す仕様になっている。Arduino microは、SparkFun Pro microとの互換性をもつので、改良されたbootloaderに書き換えられる。

Preparations/準備

  • Comfirm/マイコンATmega32U4は2種類(3.3V 8MHz, 5V 16MHz)存在し、Arduino microは5V,16Mhzである

  • Library from SparkFun/Arduino IDEにSparkFun製品のライブラリをインストール(下記手順)

  • Programmer board/別のArduinoを書き込み装置に仕立てる(下記手順、私はUNOを用意した)

  • Target board/書き換えたいArduino micro

  • Cables with male-female terminals, 6/ジャンパーケーブル オスーメス 6本

Steps/作業

  1. Install library from SparkFun ライブラリをインストールする

    • Arduino IDE > Settings, paste an address below.

    • https://raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json

    • Tools >Boards >Boards Manager…

    • SparkFun AVR Baordsをinstall 1.1.13 (2023)

    • Tools > Boardsに、Sparkfun AVR Boardsが表示される

  2. Prepare UNO as a programmmer/UNOを書き込み装置に仕立てる Arduino as ISPを書き込む

    • Arduino UNOをUSBでPCに接続する

    • File > Examples > 11. ArduinoISP > ArduinoISP

    • Upload 書き込む

  3. Circuit/配線する

    • Arduino UNO 5V、GND、10、11、12、13と、Arduino micro ICSPピン(6ピン)を接続する

    circuit

    UNO micro
    5V 5V
    GND GND
    10 RESET
    11 MOSI
    12 MISO
    13 SCK
    • Arduino UNO(Programmer)を、PCにUSBでつなげる
  4. Settings/設定する

    • Tools > Board: “SparkFun pro micro” ボードを選ぶ

    • Tools > Port: “/dev/cu.usb…” ポートを選ぶ

    • Tools > Processor: “ATmega32U4 (5V, 16MHz) プロセッサーを選ぶ。Arduino microのATmeta32U4、5V 16MHzに合わせること。

    • Tools > Programer: “Arduino as ISP” UNOを書き込み装置とする

  5. Burn bootloader/ブートローダを書き込む

    • Tools > Burn bootloader ブートローダを書き込む

    • RESETが一瞬で完了するようになる。8秒かからない。ダブルクリックで8秒。

    • RX・TXのLEDが常時点灯するようになる

References/参考

  • Sparkfunの情報 https://learn.sparkfun.com/tutorials/pro-micro--fio-v3-hookup-guide#troubleshooting-and-faq

  • Sparkfun ブートローダの書き込みチュートリアル https://learn.sparkfun.com/tutorials/installing-an-arduino-bootloader

  • Pro microに書き込む例、配線の仕方 https://tomosoft.jp/design/?p=12039

  • ブートローダの違い https://zenn.dev/koron/articles/9fee38469a8acc

  • 書き換えること https://ehbtj.com/electronics/arduino-leonardo-speed-up-boot-time/

  • 書き換え方、配線、別にArduino UNO(ArduinoISPを書き込んでプログラマに仕立てたもの)が必要。 https://physical-computing-lab.net/arduino/learn_arduino_bootloader_install.html