LPC1114
ここでは LPC1114 のファームウェア更新についてまとめています。
2020年12月に発表された IchigoJam R は RISC-V に変更されましたので、
このページでのファームウェア更新は IchigoJam R では行なえません。方法を確認でき次第、別途記載いたします。
採用されている LPC1114 は更新に失敗する事でファームウェアが失われ、起動できなくなるケースはまれです。
起動できない場合は別の問題である場合があります。
運営者は数年ファームウェアの更新を経験していますが、LPC1114 が完全に使えなくなった事はありません。
一方でオプションの選択により、LPC1114 に入っていたプログラムは消去される場合があります。
プログラムを残す必要がある場合は、予めパソコンへプログラムを転送しておくか、EEPROM へ保存して下さい。
EEPROM は接続していた場合でもこの方法で中身が削除される心配はありません。
なお、この手順が困難な場合、PCN のファームウェアバージョンアップサービスもご利用いただけます。
「普通郵便返送」と「普通郵便+特定記録返送 (追跡付)」があります。
このページでは LPC1114 を採用している次の OS・本体でのファームウェア更新手順について記載しています。
IchigoJam R(2020年12月発表)は RISC-V に変更されましたので対象外で、このページの方法は使用できません。
一方 IchigoJam Q(2023年7月発売開始)は LPC1114 なので、このページの方法を使用できます。
次の OS・本体 は異なる OS を入れる事ができます。
例えば IchigoJam S に IchigonQuest を入れて動作可能です。
また、次のファームウェアを更新する場合も同じ手順となります。
ブレッドボードなどで自作した場合も含みます。
日本では主に 2 種類のキーボードが使用されています。
一部のキーボードでは、かな表記がなくても日本語キーボードの扱いになっている場合があります。
IchigoJam BASIC・IchigoLatte のファームウェアを更新する場合は
キーボードの種類にあわせてファイルを選択する必要があります。
IchigoJam BASIC 0.9.9 以前と IchigoJam BASIC 1.0.0 以降ではプログラムの保存方法が変化し、
プログラム番号 0 以外の 1 と 2 がなくなります。
開発者の福野さんが IchigoJam BASIC 0.9.x 系から IchigoJam BASIC 1.0.x 系への
セーブデータマイグレーションツール(データ引き継ぎツール)を公開しています。
MacBookとIchigoJamのマイグレーション(お引っ越し)| 福野泰介の一日一創
IchigoJam BASIC 0.9.9 以前が入っていた IchigoJam で、ファームウェア更新同様の手順で ISP モードで起動し、
ichigojam-trans.bin または ichigojam-trans.hex を一度 CPU へ入れます。
電源を切って ISP モードを外し、電源を入れると間もなく LED が点滅します。
1秒ごとの点滅で正常にプログラムが写されています。
あとは ISP モードで電源を入れ直し、IchigoJam BASIC 1.0.0 以降のファームウェアへ更新します。
これでプログラム番号 1・2 も引き継ぐ事が可能です。
0.9.7 以前の保存プログラムは……
0 以外なくなってしまいます
データ引き継ぎツールでこのとおり
USB-シリアルモジュールと IchigoJam・IchigoLatte・IchigoDake は次のように接続します。
TXD と RXD が交互(クロス)になっている事にご注意下さい。
ただし、一部の USB-シリアルモジュール はクロスせずに接続する場合があります。
USB−シリアルモジュール | - | IchigoJam・IchigoLatte・IchigoDake など |
TXD | - | RXD (15) |
RXD | - | TXD (16) |
GND | - | GND (8・22・CN5 端子 5) |
GND(IchigoJam の GND(8・22)などと接続も可) | - | ISP (24) |
VCC(3.3V・3V3) (microUSB 電源の代わりに接続可能) | - |
VCC または + (7・21) 3.3V (IchigoJam U を除く CN5 端子 4) |
5V (microUSB 電源の代わりに接続可能) | - | 5V (CN5 端子 1) |
GND(接続するよう説明する所あり) | - | RESET (23) |
CN5 端子は IchigoJam U・T・S の場合ですが、IchigoJam 互換機でも同等の端子が存在する場合があります。
簡単なのは、IchigoJam の空いている GND と ISP の端子を
接続する方法です。(右写真のオレンジ色ジャンパー)
電源を入れている場合は一度切って接続して下さい。
電源を入れると IchigoJam のランプが LED 1 より弱く点灯します。
(通常は電源を入れた直後一瞬点灯した後に消灯。
LED を交換した場合や自作機として組み立てたばかりの場合は
点灯しない場合あり)
これで ISP モードに入っています。
ランプ点灯を確認できない場合は誤って接続している場合があります。
すぐに電源を切って、接続を確認して下さい。
この ISP モードに入った状態で
下記ファームウェアの更新を行って下さい。
IchigoJam の紹介サイト・ブログなどによって
RESET 端子を用いる手順がありますが、
RESET 端子の代わりに電源スイッチの切→入で行えます。
従って、必ずしも RESET 端子を接続する必要はありません。
運営者は実際 RESET 端子を使わずに更新しています。
IchigoCake は 2 つの CPU が 1 基板に存在します。
ファームウェアの更新は、USB-シリアルを接続するピンソケットの場所によってファームウェアを入れる CPU が決まります。
この作業では J1 の状態に影響ありません。(通常片方の CPU は ISP モードにならないので)
5V を接続する場合は CN5 端子の 5V を使用できます。GND・VCC/3.3V は他の端子も使用できます。
特に BASIC・JavaScript の CN3 側に PanCake のファームウェアを入れると起動しなくなってしまいます。
ただし、誤って入れてしまった場合でも、再度正しいファームウェアを入れ直して、起動できるようになります。
本体ランプ LED1 は BASIC・JS の ISP モードのみ点灯します。PanCake の ISP モードは消灯で正常です。
なお、秋月電子通商 販売の IchigoCake 組み立てキット は LPC1114 にファームウェアが入っていない状態です。
LPC1114 は入っていない初回に限り ISP-GND の接続をしなくても ISP モードで起動するようになっています。
PanCake ファームウェアは
CN7 端子に USB-シリアル を接続
BASIC・JavaScript ファームウェアは
CN3 端子に USB-シリアル を接続
IchigoDake を DakeJacket に接続して使用している場合でも
ファームウェアを更新する場合は必ず IchigoDake のピンへ接続する必要があります。
DakeJacket へ IchigoJam のように接続してファームウェアを更新すると
DakeJacket 中央にある LPC1114FDH28 を更新してしまいます。
ただし、誤って入れてしまった場合でも、再度正しいファームウェアを入れなおして、改善できます。
IchigoDake のピンソケットを付けていない場合でもポイントピンとフッククリップや
またはスルーホール用テストワイヤーを用いて接続する事ができます。
IchigoDake には IchigoDake 版へファームウェアを更新して下さい。バージョン番号の後ろに「D」が付きます。
特に DakeJacket を使用する場合は IchigoDake 版が必須です。
IchigoDake 版は IchigoDake の公式サイトからダウンロードできます。
IchigoDake 公式サイト -「Download」のところにある IchigoDakeOS.zip を入手して下さい。
DakeJacket のファームウェアも公開されています。
こちらは IchigoJam・IchigoLatte プリント基板と同じ手順で更新しますが、DakeJacket には電源 USB 端子がないため、
代わりに USB-シリアルモジュール の 3.3V-VCC・3.3V または 5Vー5V を接続して下さい。
IchigoDake の更新は IchigoDake への接続必須
DakeJacket の更新は IchigoJam・IchigoLatte に同じ
IchigoDyhook 本体にはピンソケットがありませんので、IchigoDake へ接続する必要があります。
ピンソケットを半田付けするか、ポイントピン・フッククリップまたはスルーホール用テストワイヤーが必要です。
IchigoDyhook で IchigoJam BASIC 使用する場合は IchigoJam BASIC 1.4.1D 以降へ更新して下さい。
DakeJacket を使用しない場合はオリジナル版の IchigoJam BASIC 1.4b15 以降も使用できます。
(オリジナル版に IchigoDyhook 対応が反映されています)
IchigoJam 互換機の一部では ISP モードに入れるためのスイッチ・ジャンパ・ボタンが付いている場合があります。
GND-ISP をジャンパワイヤで接続する代わりに次の方法を使用可能です。
IchigoJam と同じように ISP-GND をジャンパワイヤで接続しても可能です。
SkyBerryJAM の
ISP ボタン・Reset ボタン
ai.shuttle.jam の ISP MODE
(ピンヘッダを付けた状態)
IchigoJam EX の SW4
(スイッチを付けた状態)
IchigoKamuy は USB 端子をパソコンに接続した状態が USB-シリアル 接続した状態となりますので、
GND-ISP をジャンパワイヤで接続し、パソコンに接続して電源を入れる事で ISP モードにできます。
ファームウェアのファイルはいくつか存在している場合があります。
OS 別に目的のファイルを見つける方法は次のとおりです。
DakeJacket 版(IchigoDake)と IchigoCake BASIC はファームウェアが別配布になっています。ご注意下さい。
別途項目を入れています。
IchigoJam BASIC のファームウェアは IchigoJam 公式サイトからダウンロードできます。
ベータ版は 2018年より GitHub からのダウンロードになっています。
IchigoJam/IchigoJam.github.io | GitHub
ベータ版のバージョンについての解説は Facebook グループ IchigoJam-FAN や
福野泰介の一日一創 で開発者の福野さんが投稿しています。
ベータ版の一部バージョンは一部の用途を目的に公開されている場合があるため、
必ずバージョン別の投稿内容を確認して適切なバージョンをダウンロードして下さい。
.zip ファイルで公開されています。元々は Windows の形式ですが、macOS・Linux でも現在は対応しています。
いくつかのファイルが存在します。正式版では次の分類があります。
従って、日本向けで使用する場合、frkbd・pal・mn・vi を含むファイル名のファームウェアへ更新しないで下さい。
ただしキーボードの種類(日本語キーボード・英語キーボード)によって
jpkbd・uskbd または us の有無で適切なファイルを選択する必要があります。
IchigoJam BASIC ベータ版では、機能追加により上記に該当しないファイル名で配布されている場合があります。
IchigoLatte 最新版のファームウェアは公式サイトの Download からです。
IchigoLatte 公式サイト
.hex ファイルのみで公開されています。ファイル名の違いは次の通りです。
IchigoLatte は外婦クリスタル必須です。IchigoJam 初代プリント基板やブレッドボードなどを使用する場合は注意を要します。
IchigoQuest 最新版のファームウェアは公式サイトの ダウンロード からです。
IchigoQuest 公式サイト
.hex ファイルのみで公開されています。ファイル名の違いは表示言語・方言の違いです。
jp・us の違いは表示の違いであり、IchigoJam BASIC・IchigoLatte のようなキーボードの種類ではありません。
IchigonQuest も外婦クリスタル必須です。IchigoJam 初代プリント基板やブレッドボードなどを使用する場合は注意を要します。
IchigoDake+DakeJacket で使用する場合は必ず IchigoDake 版のファームウェアへ更新して下さい。
IchigonQuest は IchigoDake でしか発売されていないため、通常はこの DakeJacket 版を入れる事になります。
download の「IchigoDakeOS.zip ダウンロード」をダウンロードして下さい。
解凍すると IchigoJam BASIC・IchigoLatte・IchigonQuest の各フォルダがあります。
DakeJacket 版は IchigonQuest を除き日本語言語のみで配布されています。
.hex ファイルのみで、dj が含まれたファイル名での配布です。
ファイル名での違いは IchigoJam BASIC・IchigoLatte はキーボードの種類、
IchigonQuest は表示言語・方言の種類別となります。
PanCake は IchigoJam と同じ LPC1114FN28 を採用しています。
そのため、同じ方法でファームウェアを更新可能です。
PanCakeプチコン3号Edition はファームウェアが公開されていません。
この更新を行うと、プチコン3号Edition ではない PanCake へ更新されてしまいます。
PanCake 公式サイトの DOWNLOAD から最新版を得られます。
.hex ファイルのみで pancake.hex となっています。
通常は PanCake プリント基板から LPC1114FN28 を外し、
同じ CPU を使用する IchigoJam へ一時的に装着して更新をおすすめします。
この場合は IchigoJam と全く同じ方法でファームウェアを更新します。
PanCake プリント基板に直接 LPC1114 を半田付けしてしまっている場合は次のようにします。
モジュールに 3.3V がない場合は 3 端子レギュレータなどを経由して 3.3V にして下さい。
DakeJacket は(IchigoDake とは別に単体で)LPC1114FDH28 を採用しています。
そのため、必要な場合は IchigoJam などと同じ方法でファームウェアを更新できます。
誤って DakeJacket に接続してファームウェアに別の OS を更新してしまった場合、
DakeJacket のファームウェアを更新して改善できます。
公式サイトより「DakeJacket ファームウェア」の「ZIP DOWNLOAD」から入手できます。
2018年4月公開の初版は Ver 5 です。
IchigoCake は IchigoJam・IchigoLatte・IchigoDake より大容量の LPC1114 を採用しています。
そのため、 ファームウェアも IchigoCake 専用になります。
IchigoCake 公式サイトより各ファームウェアをダウンロードします。
ファームウェアを入れるのは次のファイルです。IchigoLatte・PanCake は複数ファイルが存在するので注意を要します。
異なるバージョンを入れると、起動できても、拡張機能が動作しないなどの問題が発生します。
ファイル名 | 注意事項 |
ichigocake.hex ※ | cake の hex ファイル。(jam ではない) |
ichigolatte.w.jp.jex または ichigolatte.w.us.hex | w がついた hex ファイル。jp・us はキーボードの種類 |
pancake.C.Hex | C がついた hex ファイル |
※ IchigoCake BASIC はキーボードの種類を KBD コマンドで変更できます。(IchigoJam BASIC RPi に同じ)
このページの上記でも説明していますが、ファームウェアに合わせて接続先が異なります。
の TXD・RXD 端子を USB-シリアルモジュール と接続し、GND-ISP をオス-オスのジャンパワイヤで接続します。
VCC も同じ CN3・CN7 を使用する事をおすすめします。GND は他の周辺端子も使用可能です。5V は CN5 を使用できます。
あとは IchigoJam・IchigoLatte・PanCake プリント基板と同じ手順でファームウェアを入れて下さい。
Windows などで解凍した場合、.DS_Store ファイルや __MACOSX フォルダが表示されますが、
macOS が生成する OS 独自のファイル・フォルダです。削除しても影響ありません。
(IchigoJam 開発者 福野さん、PCN・na-s.jp 代表 松田さん は共に普段は Mac を使用しています)
なお、ファームウェアは 転載不可 となっていますので、ファイルを直接再配布しないで下さい。
必要な場合はファームウェアを配布しているページの URL へリンクを行って下さい。
ファームウェアを更新するソフトウェアは専用のツールが必要になります。
IJUtilities は lpc21isp(後記)を用いた
ファームウェア更新機能を備えています。
lpc21isp は IJUtilities に含まれているため、すぐに使用可能です。
特に Windows では lpc21isp を用いたツールが存在していないため、
Flash Magic(後記)よりも操作が少なく、素早く更新できます。
IJUtilities - 配布サイト
IJUtilities を起動した後、
ターミナルセンター ウインドウの
ツールバー オプション - Firm書換え (IchigoJam, PanCake...)
を選択して下さい。lpc21isp ウインドウが表示されます。
Port は USB-シリアルモジュールのポート番号、
Firm は入れるファームウェアのファイル、
Option は .bin ファイルを入れると -bin が入りますが、
それ以外に -wipe(入れる前に消去)なども使えます。
ISP モードにしておいた状態で Start を押すと実行されます。
右画面は実際に IchigoJam BASIC を更新し、正常に完了した表示です。
IchigoJam に関係なく LPC1114 でよく使用されているツールです。
当初はこの方法が主なファームウェアの更新手段だったため、紹介サイトも多いですが、
細かい設定が多く、経験がない人は IJUtilities を使った方が良いかもしれません。
Flash Magic を入手します。Windows 版と macOS 版があります。
インストールして起動します。
はじめて起動した場合は Step 1 - Communications の Select を押し、
Device Select 画面で LPC1114/102 を選択して下さい。
ファームウェアは .zip を解凍し、.hex ファイルを指定します。
macOS でもポート番号は Windows と同じ COM● の表示です。
macOS での COM● 割り当てはターミナルより下のコマンドで調べられます。
$ ls -l /Applications/FlashMagic.app/Contents/Resources/dosdevices/COM*
なお、Flash Magic には Terminal があり、通常起動した IchigoJam の送受ができるので、
更新を行ったファームウェアの簡単な動作確認を行う事もできます。
lpc21isp で素早く更新する事もできます。コマンド実行から数秒~十数秒で更新を行えるので、とても便利です。
macOS では Homebrew からパッケージ名 lpc21isp でインストールできます。
lpc21isp SouceForge | OSDN | GitHub
例えば次のように実行します。
$ lpc21isp ichigojam-xtal.hex /dev/tty~ 115200 1200
bin ファイルの場合は -bin をファイル名の前に入れて下さい。
また -wipe を追加すると、消去してからの書き込みになります。
(更新後 IchigoJam の動作がおかしい時に試してみて下さい。
プログラムもなくなるので、予め EEPROM などに保存して下さい)
-verify を追加すると、書き込み後に確認を行います。
/dev/tty〜 のところが分からない場合は次のようにして確認します。
外している時と接続している時で1項目変わるところです。
$ ls -l /dev/tty*
なお、次のコマンドで端末になり、通常の IchigoJam を起動した状態で IchigoJam の送受も可能です。
(カナなどはコードの違いで文字化けします。また Back Space などが効きません。Esc で終了)
ファームウェアが正常に更新されたか、パソコン上から確認したい時に便利です。
$ lpc21isp -termonly -localecho /dev/tty~ 115200 1200
Mac 向けの macOS 版は Maclpc21isp で素早く更新できます。
IchigoJam BASIC から IchigonQuest に変更するなど、OS の変更を行う場合、
ファームウェアの更新後、何か動きがおかしい場合は、中身をすべて削除するようにして下さい。
この操作は入っているプログラムを完全に削除します。必要な場合は予めパソコンや EEPROM へプログラムを保存して下さい。
例えば IchigonQuest ではこれを行わないと、更新前のデータが残るために
ぼうけん● を選んだ後 つくる などを選択した時に LED が点滅して再起動する場合があります。
一時特に多かったのは外部クリスタルのない IchigoJam 初代プリント基板などで
外部クリスタルが必要なファームウェアへ更新したのに、外部クリスタルを付けずに電源を入れた場合です。
(この時はジャンパワイヤの拡張をすべて外した状態でも電源を入れて本体ランプが点灯します)
IchigoJam BASIC では IchigoJam BASIC 1.1.1 以降は自動判別になりましたが、
IchigoLatte および IchigonQuest は外部クリスタル必須ですので、注意を要します。
IchigoJam をよく使用している場合は、ターミナルソフトが起動していながら、
Flash Magic や lpc21isp が起動しているためにポートを開くのに失敗する事があります。
具体的な例として「Flash Magic で更新作業して、Tera Term で不明な文字が〜」という場合、
Tera Term が起動しているのが原因で更新できていません。
Tera Term を閉じて、Flash Magic のみを動作させて下さい。
日本語・カナ版ではないファームウェア(例えば mn・vi 付)へ更新してしまった、
ベータ版へ更新したけど正式版へ戻したい、という場合は
該当するバージョンで再度ファームウェアを更新すれば大丈夫です。
ファームウェアの更新に失敗して LPC1114 が二度と使用できなくなるケースは運営者は聞いた事がありません。
また運営者は数年で多くのファームウェア更新を経験していますが、LPC1114 が使用できなくなった経験はありません。
通常は ISP モードに入ったままだったなど、別の問題のケースです。起動しなくても慌てずに確認して下さい。
ファームウェアの更新方法は他の IchigoJam 利用者などからも紹介されています。こちらも参考にして下さい。
IchigoJamのファームウェアを書き換える | コドモとアプリ - CP2102 USB-シリアルモジュールを用いて IJUtilities で更新
IchigoJamのファームを書き換える | コンピュータを楽しもう! - 超小型USBシリアル変換モジュール を用いて Flash Magic で更新
ichigojam ファームウェアの更新 | 活動の備忘録 - FT232RL を用いて Windows から Flash Magic で更新
IchigoJam の紹介と OS X で使う方法のまとめ | YNOMURA.COM - CH340 USB-シリアルモジュール を用いて Flash Magic で更新
Facebook グループ IchigoJam-FAN 内 - macOS での書き換え方法に関して
Mac を使用した時の動画も公開されています。
SkyBerryJAM は 栃木県立栃木工業高等学校 が管理する登録商標であり、
SkyBerryJAM は 栃木県立栃木工業高等学校 の商標です。
Raspberry Pi は
Raspberry Pi 財団 の登録商標です。
Raspberry Pi is a registered trademark or
trademark of
the Raspberry Pi Foundation.
"RISC-V" の商品名は RISC-Vインターナショナル が管理する登録商標です。
The “RISC-V” trade name is a registered trade mark of
RISC-V International.