aboutsummaryrefslogtreecommitdiff
path: root/docs/ja/flashing.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/ja/flashing.md')
-rw-r--r--docs/ja/flashing.md247
1 files changed, 247 insertions, 0 deletions
diff --git a/docs/ja/flashing.md b/docs/ja/flashing.md
new file mode 100644
index 000000000..1118fb5e2
--- /dev/null
+++ b/docs/ja/flashing.md
@@ -0,0 +1,247 @@
1# 書き込みの手順とブートローダ情報
2
3<!---
4 original document: 7494490d6:docs/flashing.md
5 git diff 7494490d6 HEAD -- docs/flashing.md | cat
6-->
7
8キーボードが使用するブートローダにはかなり多くの種類があり、ほぼ全てが異なる書き込みの方法を使います。幸いなことに、[QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) のようなプロジェクトは、あまり深く考える必要無しに様々なタイプと互換性を持つことを目指していますが、この文章では様々なタイプのブートローダとそれらを書き込むために利用可能な方法について説明します。
9
10`rules.mk` の `BOOTLOADER` 変数で選択されたブートローダがある場合、QMK は .hex ファイルがデバイスに書き込むのに適切なサイズかどうかを自動的に計算し、合計サイズをバイト単位で(最大値とともに)出力します。この処理を手動で実行するには、`check-size` を付けてコンパイルします。例えば、`make planck/rev4:default:check-size`。
11
12## DFU
13
14Atmel の DFU ブートローダはデフォルトで全ての atmega32u4 チップに搭載されており、PCB (旧 OLKB キーボード、Clueboard) に独自の IC を持つ多くのキーボードで使われています。一部のキーボードは、LUFA の DFU ブートローダ(または QMK のフォーク) (新しい OLKB キーボード)を使う場合もあり、そのハードウェアに固有の追加機能が追加されます。
15
16DFU ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください(オプションとして代わりに `lufa-dfu` や `qmk-dfu` が使えます):
17
18```make
19# Bootloader selection
20# Teensy halfkay
21# Pro Micro caterina
22# Atmel DFU atmel-dfu
23# LUFA DFU lufa-dfu
24# QMK DFU qmk-dfu
25# ATmega32A bootloadHID
26# ATmega328P USBasp
27BOOTLOADER = atmel-dfu
28```
29
30互換性のあるフラッシャ:
31
32* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI)
33* QMK の [dfu-programmer](https://github.com/dfu-programmer/dfu-programmer) / `:dfu` (推奨のコマンドライン)
34* [Atmel の Flip](http://www.microchip.com/developmenttools/productdetails.aspx?partno=flip) (非推奨)
35
36書き込み手順:
37
381. `RESET` キーコードを押すか、RESET ボタンをタップします(または RST を GND にショートします)。
392. OS がデバイスを検知するのを待ちます。
403. メモリを消去します(自動的に実行されるかもしれません)
414. .hex ファイルを書き込みます
425. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません)
43
44あるいは:
45
46 make <keyboard>:<keymap>:dfu
47
48### QMK DFU
49
50QMK には LUFA DFU ブートローダのフォークがあり、ブートローダを終了してアプリケーションに戻る時に単純なマトリックススキャンを行うことができます。また、何かが起きた時に、LED を点滅したり、スピーカーでカチカチ音をたてたりします。これらの機能を有効にするには、`config.h` で以下のブロックを有効にします (ブートローダを終了するキーは、ここで定義された INPUT と OUTPUT に接続する必要があります):
51
52 #define QMK_ESC_OUTPUT F1 // 通常 COL
53 #define QMK_ESC_INPUT D5 // 通常 ROW
54 #define QMK_LED E6
55 #define QMK_SPEAKER C6
56
57製造元と製品名は `config.h` から自動的に取得され、製品に「Bootloader」が追加されます。
58
59このブートローダを生成するには、`bootloader` ターゲット、例えば `make planck/rev4:default:bootloader` を使います。
60
61実稼働対応の .hex ファイル(アプリケーションおよびブートローダを含む)を生成するには、`production` ターゲット、例えば `make planck/rev4:default:production` を使います。
62
63### DFU コマンド
64
65ファームウェアを DFU デバイスに書き込むために使用できる DFU コマンドがいくつかあります。
66
67* `:dfu` - これが通常のオプションで、DFU デバイスが使用可能になるまで待機したのちファームウェアを書き込みます。5秒ごとに、DFU デバイスが存在するかチェックしています。
68* `:dfu-ee` - 通常の hex ファイルの代わりに `eep` ファイルを書き込みます。これを使用するのはまれです。
69* `:dfu-split-left` - デフォルトオプション (`:dfu`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「左側の」 EEPROM ファイルも書き込まれます。_これは、Elite C ベースの分割キーボードに最適です。_
70* `:dfu-split-right` - デフォルトオプション (`:dfu`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「右側の」 EEPROM ファイルも書き込まれます。_これは、Elite C ベースの分割キーボードに最適です。_
71
72## Caterina
73
74Arduino ボードとそのクローンは [Caterina ブートローダ](https://github.com/arduino/ArduinoCore-avr/tree/master/bootloaders/caterina) (Pro Micro またはそのクローンで構築されたキーボード)を使用し、avr109 プロトコルを使って仮想シリアルを介して通信します。[A-Star](https://www.pololu.com/docs/0J61/9) のようなブートローダは Caterina に基づいています。
75
76Caterina ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください:
77
78```make
79# Bootloader selection
80# Teensy halfkay
81# Pro Micro caterina
82# Atmel DFU atmel-dfu
83# LUFA DFU lufa-dfu
84# QMK DFU qmk-dfu
85# ATmega32A bootloadHID
86# ATmega328P USBasp
87BOOTLOADER = caterina
88```
89
90互換性のあるフラッシャ:
91
92* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI)
93* avr109 を使った [avrdude](http://www.nongnu.org/avrdude/) / `:avrdude` (推奨のコマンドライン)
94* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS)
95
96書き込み手順:
97
981. `RESET` キーコードを押すか、RST をすばやく GND にショートします (入力後7秒で書き込みます)
992. OS がデバイスを検知するのを待ちます。
1003. .hex ファイルを書き込みます
1014. デバイスが自動的にリセットされるのを待ちます
102
103あるいは
104
105 make <keyboard>:<keymap>:avrdude
106
107
108#### Caterina コマンド
109
110ファームウェアを DFU デバイスに書き込むために使用できる DFU コマンドがいくつかあります。
111
112* `:avrdude` - これが通常のオプションで、Caterina デバイスが(新しい COM ポートを検出して)使用可能になるまで待機し、ファームウェアを書き込みます。
113* `:avrdude-loop` - これは `:avrdude` と同じコマンドを実行します。ただし書き込みが終了すると再び Caterina デバイスの書き込み待ちに戻ります。これは何台ものデバイスへ書き込むのに便利です。_Ctrl+C を押して、手動でこの繰り返しを終了させる必要があります。_
114* `:avrdude-split-left` - デフォルトオプション (`:avrdude`) と同様に通常のファームウェアが書き込まれます。ただし、分割キーボードの「左側の」 EEPROM ファイルも書き込まれます。_これは、Pro Micro ベースの分割キーボードに最適です。_
115* `:avrdude-split-right` - デフォルトオプション (`:avrdude`) と同様に通常のファームウェアが書き込まれます。ただし、分割キーボードの「右側の」 EEPROM ファイルも書き込まれます。_これは、Pro Micro ベースの分割キーボードに最適です。_
116
117
118
119## Halfkay
120
121Halfkay は PJRC によって開発された超スリムなプロトコルであり、HID を使用し、全ての Teensys (つまり 2.0)に搭載されています。
122
123Halfkay ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください:
124
125```make
126# Bootloader selection
127# Teensy halfkay
128# Pro Micro caterina
129# Atmel DFU atmel-dfu
130# LUFA DFU lufa-dfu
131# QMK DFU qmk-dfu
132# ATmega32A bootloadHID
133# ATmega328P USBasp
134BOOTLOADER = halfkay
135```
136
137互換性のあるフラッシャ:
138
139* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI)
140* [Teensy ローダー](https://www.pjrc.com/teensy/loader.html)
141* [Teensy ローダーコマンドライン](https://www.pjrc.com/teensy/loader_cli.html) (推奨のコマンドライン)
142
143書き込み手順:
144
1451. `RESET` キーコードを押すか、RST をすばやく GND にショートします (入力後7秒で書き込みます)
1462. OS がデバイスを検知するのを待ちます。
1473. .hex ファイルを書き込みます
1484. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません)
149
150## USBasploader
151
152USBasploader は matrixstorm によって開発されたブートローダです。V-USB を実行する ATmega328P のような非 USB AVR チップで使われます。
153
154USBasploader ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください:
155
156```make
157# Bootloader selection
158# Teensy halfkay
159# Pro Micro caterina
160# Atmel DFU atmel-dfu
161# LUFA DFU lufa-dfu
162# QMK DFU qmk-dfu
163# ATmega32A bootloadHID
164# ATmega328P USBasp
165BOOTLOADER = USBasp
166```
167
168互換性のあるフラッシャ:
169
170* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI)
171* `usbasp` プログラマを使った [avrdude](http://www.nongnu.org/avrdude/)
172* [AVRDUDESS](https://github.com/zkemble/AVRDUDESS)
173
174書き込み手順:
175
1761. `RESET` キーコードを押すか、RST を GND にすばやくショートしながら、ブートピンを GND にショートしたままにします。
1772. OS がデバイスを検知するのを待ちます。
1783. .hex ファイルを書き込みます
1794. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません)
180
181## BootloadHID
182
183BootloadHID は AVR マイクロコントローラ用の USB ブートローダです。アップローダーツールは Windows でカーネルレベルのドライバを必要としないため、DLL をインストールせずに実行することができます。
184
185bootloadHID ブートローダとの互換性を確保するために、以下のブロックが `rules.mk` にあることを確認してください:
186
187```make
188# Bootloader selection
189# Teensy halfkay
190# Pro Micro caterina
191# Atmel DFU atmel-dfu
192# LUFA DFU lufa-dfu
193# QMK DFU qmk-dfu
194# ATmega32A bootloadHID
195# ATmega328P USBasp
196BOOTLOADER = bootloadHID
197```
198
199互換性のあるフラッシャ:
200
201* [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash) (推奨の Windows GUI)
202* [bootloadhid コマンドライン](https://www.obdev.at/products/vusb/bootloadhid.html) / QMK の `:BootloadHID` (推奨のコマンドライン)
203
204書き込み手順:
205
2061. 以下のいずれかの方法を使ってブートローダに入ります:
207 * `RESET` キーコードをタップします (全てのデバイスでは動作しないかもしれません)
208 * キーボードを接続しながらソルトキーを押し続けます (通常はキーボードの readme に書かれています)
2092. OS がデバイスを検知するのを待ちます。
2103. .hex ファイルを書き込みます
2114. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません)
212
213あるいは:
214
215 make <keyboard>:<keymap>:bootloadHID
216
217## STM32
218
219全ての STM32 チップには、変更も削除もできない工場出荷時のブートローダがプリロードされています。一部の STM32 チップには USB プログラミングが付属していないブートローダがありますが(例えば STM32F103)、プロセスは同じです。
220
221現時点では、STM32 の `rules.mk` には、`BOOTLOADER` 変数は不要です。
222
223互換性のあるフラッシャ:
224
225* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (推奨の GUI)
226* [dfu-util](https://github.com/Stefan-Schmidt/dfu-util) / `:dfu-util` (推奨のコマンドライン)
227
228書き込み手順:
229
2301. 以下のいずれかの方法を使ってブートローダに入ります:
231 * `RESET` キーコードをタップします (STM32F042 デバイスでは動作しないかもしれません)
232 * リセット回路が存在する場合、RESET ボタンをタップします
233 * それ以外の場合は、(BOOT0 ボタンあるいはブリッジ経由で)BOOT0 を VCC にブリッジし、(REEST ボタンあるいはブリッジ経由で)RESET を GND にショートし、BOOT0 ブリッジを放す必要があります。
2342. OS がデバイスを検知するのを待ちます。
2353. .bin ファイルを書き込みます
236 * DFU 署名に関する警告が表示されます; 無視してください
2374. デバイスをアプリケーションモードにリセットします(自動的に実行されるかもしれません)
238 * コマンドラインからビルドする場合(例えば、`make planck/rev6:default:dfu-util`)、`rules.mk` の中で `:leave` が `DFU_ARGS` 変数に渡されるようにしてください (例えば、`DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave`)。そうすれば、書き込みの後でデバイスがリセットされます
239
240### STM32 コマンド
241
242ファームウェアを STM32 デバイスに書き込むために使用できる DFU コマンドがいくつかあります。
243
244* `:dfu-util` - STM32 デバイスに書き込むためのデフォルトコマンドで、STM32 ブートローダデバイスが見つかるまで待機します。
245* `:dfu-util-split-left` - デフォルトのオプション (`:dfu-util`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「左側の」 EEPROM の設定も行われます。
246* `:dfu-util-split-right` - デフォルトのオプション (`:dfu-util`) と同様に、通常のファームウェアが書き込まれます。ただし、分割キーボードの「右側の」 EEPROM の設定も行われます。
247* `:st-link-cli` - dfu-util ではなく、ST-LINK の CLI ユーティリティを介してファームウェアを書き込めます。