インストール - Code Composer Studio
概要
Code Composer Studio(以降、CCSという)はTexas Instruments社(以降、TI社という)が提供しているIDE(統合開発環境)である。
オープンソースの統合開発環境であるEclipseをベースに作成しているため、Eclipseを使用したことのあるユーザにはユーザーインタフェースがほぼ一緒なので違和感なく使用できる。
また、CCSにはこれ以外にも大きな特長がある。
- CCSの特長1 : 無償
- CCS 7以降で全機能を無償で使用できるようになった。
- IDEが有償だと製品検討時の実験的な導入ですら手を出しづらいが、CCSは無償なので評価ボードとJTAGエミュレータを用意するだけで試すことができる。
- MSP430等であれば、JTAGエミュレータ機能を搭載した評価ボードが低価格で用意されているので、製品導入の検討目的だけでなく、電子工作でも手を出しやすい環境が整っている。
- CCSの特長2 : TI社のマイコン、プロセッサー製品ほぼ全てに対応
- CCSはTI社のマイコン、プロセッサ製品のほぼ全てに対応している。(※あまりにも古い製品など、対応していない製品も一部ある)
- 製品毎に異なるIDEだと、その都度インストールの手間が掛かり、ディスク容量も消費してしまう。また、UIも変わってしまうので慣れるのに時間が掛かってしまう。
- 一方、CCSは製品が変わっても基本的な使い方は同じである。例えば、MSP430の開発に慣れた人がC2000の開発をしても、IDEの使い方を1から習得し直す手間は掛からない。
- CCSの特長3 : アップデートの頻度が高い
- 無償になっても比較的高い頻度でアップデートされている。
ライブラリのインストール
CCSの実行に必要な依存関係のライブラリをインストールする。
パッケージ管理システムからインストール
- SUSEの場合
- libncurses5とlibusb-0_1-4のインストールを行う。
- libncurses5は、テキストユーザインタフェースを作成するためのAPIを提供するライブラリである。
- libusbは、USBライブラリである。
# SLE / openSUSE Leap sudo zypper install glibc-32bit libncurses5 python libpython2_7-1_0 gconf2 libnsl1 libusb-0_1-4
ソースコードからインストール
SLEDの場合、libncurses5およびlibusb-0_1-4はパッケージ管理システムから提供されていないため、ビルドしてインストールする必要がある。
libusb-0_1-4のインストール
libusb-0_1-4のGithubからソースコードをダウンロードする。
git clone https://github.com/libusb/libusb-compat-0.1.git cd libusb-compat-0.1
configureスクリプトを生成する。
autoreconf -i
libusb-0_1-4をビルドおよびインストールする。
mkdir build && cd build # 64bit版 ../configure --prefix=<libusb-0_1-4のインストールディレクトリ> make -j $(nproc) make install
# 32bit版 export LIBUSB_1_0_SONAME="/usr/lib/libusb-1.0.so.0"; \ CC="gcc -m32" CXX="g++ -m32" ../configure --prefix=<libusb-0_1-4のインストールディレクトリ> make -j $(nproc) make install
~/.profileファイル等に、以下の環境変数を追記する。
# ~/.profileファイル
export PATH="/<libusb-0_1-4のインストールディレクトリ>/bin:$PATH"
export LD_LIBRARY_PATH="/<libusb-0_1-4のインストールディレクトリ>/lib64:/<libusb-0_1-4のインストールディレクトリ>/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)"
export PKG_CONFIG_PATH="/<libusb-0_1-4のインストールディレクトリ>/lib64/pkgconfig:/<libusb-0_1-4のインストールディレクトリ>/lib/pkgconfig:$PKG_CONFIG_PATH"
libncurses5のインストール
libncurses5の公式Webサイトにアクセスして、libncurses5のソースコードをダウンロードする。
または、wget
コマンドを実行して、libncurses5のソースコードをダウンロードする。
wget https://invisible-mirror.net/archives/ncurses/ncurses-5.x.tar.gz
ダウンロードしたファイルを解凍する。
tar ncurses-5.x.tar.gz cd ncurses-5.x
ビルドディレクトリを作成する。
mkdir build && cd build
libncurses5をビルドおよびインストールする。
(1)から順に(4)までビルドおよびインストールする。
(1) 32bit版 ワイド文字対応 ../configure \ CC="/<GCC6.5以前のインストールディレクトリ>/bin/gcc -m32" \ CXX="/<GCC6.5以前のインストールディレクトリ>/bin/g++ -m32" \ --bindir=/<libncurses5のインストールディレクトリ>/baselibs-32bit \ --libdir=/<libncurses5のインストールディレクトリ>/lib \ --with-shared --with-cxx-shared --with-normal --with-ticlib --with-debug \ --without-progs --without-tests --without-manpages \ --enable-widec --enable-pc-files \ --program-suffix="w" \ --prefix=<libncurses5のインストールディレクトリ> \ CPPFLAGS="-P" make -j $(nproc) # pkgconfファイルは強制的に/usr/lib/pkgconfigディレクトリにインストールされるため、 # スーパーユーザ権限で実行する sudo make install.libs # pkgconfigファイルをインストールディレクトリに移動する mkdir /<libncurses5のインストールディレクトリ>/lib/pkgconfig sudo mv \ /usr/lib/pkgconfig/formw.pc \ /usr/lib/pkgconfig/menuw.pc \ /usr/lib/pkgconfig/ncurses++w.pc \ /usr/lib/pkgconfig/ncursesw.pc \ /usr/lib/pkgconfig/panelw.pc \ /usr/lib/pkgconfig/ticw.pc \ /<libncurses5のインストールディレクトリ>/lib/pkgconfig # スーパーユーザでインストールしているため、オーナーを一般ユーザに変更する sudo chown -R $USER:$(id -gn) <libncurses5のインストールディレクトリ> # 不要なファイルを削除する rm -rf /<libncurses5のインストールディレクトリ>/include rm -rf /<libncurses5のインストールディレクトリ>/share
(2) 32bit版 非ワイド文字 ../configure \ CC="/<GCC6.5以前のインストールディレクトリ>/bin/gcc -m32" \ CXX="/<GCC6.5以前のインストールディレクトリ>/bin/g++ -m32" \ --prefix=<libncurses5のインストールディレクトリ> \ --bindir=/<libncurses5のインストールディレクトリ>/baselibs-32bit \ --libdir=/<libncurses5のインストールディレクトリ>/lib \ --with-shared --with-cxx-shared --with-normal --with-ticlib --with-debug --with-termlib --disable-widec --enable-pc-files \ --without-progs --without-tests --without-manpages \ CPPFLAGS="-P" make -j $(nproc) # pkgconfファイルは強制的に/usr/lib/pkgconfigディレクトリにインストールされるため、 # スーパーユーザ権限で実行する sudo make install.libs # pkgconfigファイルをインストールディレクトリに移動する mkdir /<libncurses5のインストールディレクトリ>/lib/pkgconfig sudo mv \ /usr/lib/pkgconfig/form.pc \ /usr/lib/pkgconfig/form_g.pc \ /usr/lib/pkgconfig/menu.pc \ /usr/lib/pkgconfig/menu_g.pc \ /usr/lib/pkgconfig/ncurses.pc \ /usr/lib/pkgconfig/ncurses_g.pc \ /usr/lib/pkgconfig/ncurses++.pc \ /usr/lib/pkgconfig/panel.pc \ /usr/lib/pkgconfig/panel_g.pc \ /usr/lib/pkgconfig/tic.pc \ /usr/lib/pkgconfig/tic_g.pc \ /usr/lib/pkgconfig/tinfo.pc \ /usr/lib/pkgconfig/tinfo_g.pc \ /<libncurses5のインストールディレクトリ>/lib/pkgconfig # スーパーユーザでインストールしているため、オーナーを一般ユーザに変更する sudo chown -R $USER:$(id -gn) <libncurses5のインストールディレクトリ> # 不要なファイルを削除する rm -rf /<libncurses5のインストールディレクトリ>/include rm -rf /<libncurses5のインストールディレクトリ>/share
(3) 64bit版 ワイド文字対応 ../configure \ CC="/<GCC6.5以前のインストールディレクトリ>/bin/gcc" \ CXX="/<GCC6.5以前のインストールディレクトリ>/bin/g++" \ --prefix=<libncurses5のインストールディレクトリ> \ --libdir=/<libncurses5のインストールディレクトリ>/lib64 \ --with-shared --with-cxx-shared --with-normal --with-ticlib --with-debug \ --without-progs --without-tests --without-manpages \ --enable-widec --enable-pc-files \ CPPFLAGS="-P" # pkgconfファイルは強制的に/usr/lib/pkgconfigディレクトリにインストールされるため、 # スーパーユーザ権限で実行する sudo make install.libs # pkgconfigファイルをインストールディレクトリに移動する mkdir /<libncurses5のインストールディレクトリ>/lib64/pkgconfig sudo mv \ /usr/lib/pkgconfig/formw.pc \ /usr/lib/pkgconfig/menuw.pc \ /usr/lib/pkgconfig/ncurses++w.pc \ /usr/lib/pkgconfig/ncursesw.pc \ /usr/lib/pkgconfig/panelw.pc \ /usr/lib/pkgconfig/ticw.pc \ /<libncurses5のインストールディレクトリ>/lib64/pkgconfig # スーパーユーザでインストールしているため、オーナーを一般ユーザに変更する sudo chown -R $USER:$(id -gn) <libncurses5のインストールディレクトリ> # 不要なファイルを削除する rm -rf /<libncurses5のインストールディレクトリ>/include rm -rf /<libncurses5のインストールディレクトリ>/share
(4) 64bit版 非ワイド文字 ../configure \ CC="/<GCC6.5以前のインストールディレクトリ>/bin/gcc" \ CXX="/<GCC6.5以前のインストールディレクトリ>/bin/g++" \ --prefix=<libncurses5のインストールディレクトリ> \ --libdir=/<libncurses5のインストールディレクトリ>/lib64 \ --with-shared --with-cxx-shared --with-normal --with-ticlib --with-debug --with-termlib \ --without-tests --without-manpages \ --disable-widec --enable-pc-files \ CPPFLAGS="-P" make -j $(nproc) # pkgconfファイルは強制的に/usr/lib/pkgconfigディレクトリにインストールされるため、 # スーパーユーザ権限で実行する sudo make install.libs # pkgconfigファイルをインストールディレクトリに移動する mkdir /<libncurses5のインストールディレクトリ>/lib64/pkgconfig sudo mv \ /usr/lib/pkgconfig/form.pc \ /usr/lib/pkgconfig/form_g.pc \ /usr/lib/pkgconfig/menu.pc \ /usr/lib/pkgconfig/menu_g.pc \ /usr/lib/pkgconfig/ncurses.pc \ /usr/lib/pkgconfig/ncurses_g.pc \ /usr/lib/pkgconfig/ncurses++.pc \ /usr/lib/pkgconfig/panel.pc \ /usr/lib/pkgconfig/panel_g.pc \ /usr/lib/pkgconfig/tic.pc \ /usr/lib/pkgconfig/tic_g.pc \ /usr/lib/pkgconfig/tinfo.pc \ /usr/lib/pkgconfig/tinfo_g.pc \ /<libncurses5のインストールディレクトリ>/lib64/pkgconfig # スーパーユーザでインストールしているため、オーナーを一般ユーザに変更する sudo chown -R $USER:$(id -gn) <libncurses5のインストールディレクトリ>
~/.profileファイル等に、以下の環境変数を追記する。
export PATH="/<libncurses5のインストールディレクトリ>/bin:/<libncurses5のインストールディレクトリ>/baselibs-32bit/bin:$PATH"
export LD_LIBRARY_PATH="/<libncurses5のインストールディレクトリ>/lib64:/<libncurses5のインストールディレクトリ>/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)"
export PKG_CONFIG_PATH="/<llibncurses5のインストールディレクトリ>/lib64/pkgconfig:/<llibncurses5のインストールディレクトリ>/lib/pkgconfig:$PKG_CONFIG_PATH"
CCSのインストール
- インストーラのダウンロード
- まず、CCSのインストーラをTIの公式Webサイトからダウンロードする。
- Windowsの場合はWindows 64bitをダウンロード、Linuxの場合はLinux 64bitをダウンロードする。
- アンチウイルスソフトの無効化
- インストーラを実行する前に、使用しているPCのアンチウイルスソフトを一時的に無効化する。
- 無効化する理由は、アンチウイルスソフトがCCSのインストール処理に悪影響を与える恐れがあるためである。インストールが完了したら有効に戻す。
- インストーラの実行
- 上記でダウンロードしたファイルを解凍して、以下のファイルを実行する。
- インストール開始直前の初期チェックが行われる。
- Windowsの場合
- ccs_setup_xxx.exeファイルを実行する。
- Linuxの場合
- ./ccs_setup_<バージョン>.runファイルを実行する。
./ccs_setup_<バージョン>.run --mode gtk --prefix <CCSのインストールディレクトリ>
- CCSのインストール
- [License Agreement]画面では、[I accept ...]ボタンにチェックを入力して[Next]ボタンを押下する。
- [Choose Installation Location]画面では、CCSをインストールするフォルダを選択することができる。[Next]ボタンを押下する。
- [Processor Support]画面では、MSP430を始めとするTI製品のコンパイラ等を選択してインストールすることができる。
- 使用する製品にチェックを入力する。もし迷う場合は全てにチェックしても構わない。[Next]ボタンを押下する。
- [Select Debug Probes]画面では、サードパーティ製のJTAGエミュレータをインストールするかどうかを選択することができる。
- もし迷う場合は、全てにチェックを入力する。[Finish]ボタンを押下する。
- [Finish]ボタンを押下するとインストールが始まる。
- Windowsの場合、インストール中にセキュリティに関するウインドウが表示されることがある。
- (インストール時にチェックした項目によっては表示されないこともある)
- (もし、[Windowsセキュリティの重要な警告]画面が表示された時は、[アクセスを許可する]ボタンを押下する)
- ([Windowsセキュリティ]画面が表示された時は、[インストール]ボタンを押下する)
- Code Composer Studioのインストールの完了
- インストール完了後、[Launch ...]ボタンにチェックを入力したまま[Finish]ボタンを押下すると、CCSが起動する。
- Linuxの場合は、/<Code Composer Studioのインストールディレクトリ>/ccs/install_scriptsディレクトリに移動して、専用デバイスドライバをインストールする必要がある。
/<Code Composer Studioのインストールディレクトリ>/ccs/install_scripts
sudo ./install_drivers.sh
- 最後に、udevルールファイルを再読み込みする。
sudo udevadm control --reload-rules && sudo udevadm trigger
CCSのアンインストール
CCSのインストールディレクトリに移動する。
cd <CCSのインストールディレクトリ>
まず、TIのudevルールファイルを削除する。
./ccs/install_scripts/uninstall_drivers.sh
または、手動でTIのudevルールファイルを削除する。
cd /etc/udev/rules.d sudo rm 61-msp430uif.rules \ 70-mm-no-ti-emulators.rules \ 71-ti-permissions.rules \ 99-jlink.rules
最後に、CCSをアンインストールする。
./uninstall_ccs.run --mode gtk
MSP430 SDK (MSP430ware) のインストール
MSP430 SDKは、MSP430マイコン向けの効果的なコードを記述する場合に役立つリソースを集めたものである。
これらは、全てのMSP430マイコンをサポートしている。
なお、MSP430 SDKは、以前はMSPWareおよびMSP430Wareとして知られている。
この設計リソースコレクションには、
MSP430ドライバライブラリのようなデバイスやペリフェラルに特化したライブラリから、グラフィックスライブラリや静電容量式タッチライブラリのようなアプリケーションに特化したライブラリまで、
高度に抽象化されたソフトウェアライブラリの幅広いセレクションが含まれている。
特に、MSP430ドライバライブラリは、ソフトウェア開発者が便利なAPIを活用して低レベルで複雑なハードウェアペリフェラルを制御して、結果としてコードを読みやすく保守しやすくするために不可欠である。
MSPドライバライブラリは、最も初期のシリーズを除くすべてのデバイスをサポートしている。
Code Composer StudioおよびTI Developer Zoneのユーザは、Resource ExplorerからMSP430 SDKにアクセスすることができる。
TIの公式Webサイトにアクセスして、MSP430 SDKのインストーラをダウンロードする。
TIのアカウントにログインする必要があることに注意する。
MSP430 SDKをインストールする。
./MSP430Ware_<バージョン>_setup.run --prefix <MSP430 SDKのインストールディレクトリ> --mode gtk --installer-language ja # または kdesu -c "./MSP430Ware_<バージョン>_setup.run --prefix <MSP430 SDKのインストールディレクトリ> --mode gtk --installer-language ja"
また、TIのResource ExplorerのWebサイトにアクセスして、TI社マイコンのサンプルコードをダウンロードすることも可能である。
エラー
スーパーユーザ権限でのインストール (CCS 9.2 〜 9.3)
CCS 9.2および9.3には不具合があり、スーパーユーザ権限でインストールした場合、一般ユーザで実行したとする。
この時、プロジェクトでターゲットを構成する場合、または、特定のデバイスファミリ(C2000、Hercules)を使用して新しいターゲット構成ファイルを作成する場合、以下に示すようなエラーが出力される。
# ターゲット構成ファイルの作成: インクルードまたはインスタンスxmlファイルの解析に問題があります。 /opt/ti/ccs930/ccs/ccs_base/common/targetdb/../Modules/C2000/C2000_FPU32_Registers.xml(そのようなファイルまたはディレクトリはありません)
# 新しいプロジェクトでの接続の構成: ファイルの解析エラー: (0, 0)での致命的なエラー : 例外が発生しました!type : RuntimeException, メッセージ : プライマリドキュメントエンティティを開けませんでした。 Id=/opt/ti/ccs930/ccs/ccs_base/common/targetdb/../Modules/C2000/C2000_FPU32_Registers.xml
# ファイルの解析中: /opt/ti/ccs930/ccs/ccs_base/common/targetdb/../Modules/C2000/C2000_FPU32_Registers.xml
これは、インストールツリー内のいくつかのサポートファイルの権限が不適切に設定されているために発生する。
これを修正するには、CCSのインストールディレクトリにあるccsディレクトリ下の全てのディレクトリとファイルに対して、全てのユーザの読み込み権限と実行権限を付加する。
cd /opt/ti/ccs930/ccs sudo chmod -R go+rX *
アップデートエラー
Code Composer Studioをアップデートする時、以下に示すような内部エラーが発生する場合がある。
An internal error occurred during: "Computing size". Profile epp.package.cpp is not current. Expected timestamp 1717462470939 but was 1717462431485.
これは、プロファイル"epp.package.cpp"のタイムスタンプが期待値と異なることが原因である。
このエラーを解決するためには、以下に示す手順を実施する。
- Code Composer Studioを完全に終了する。
- Code Composer Studioのワークスペースフォルダを削除、または、名前を変更する。
- Code Composer Studioを再起動して、新しいワークスペースを作成する、または、別の場所にワークスペースを指定する。
- 問題のプロジェクトをインポートし直す、または、新しいプロジェクトを作成する。
もし、上記の手順でエラーが解決しない場合は、以下の追加手順を実施する。
- Code Composer Studioをアンインストールする。
- TIの公式Webサイトから最新バージョンのCode Composer Studioをダウンロードしてインストールする。
- 新しいワークスペースを作成して、プロジェクトを再度インポート、または、新規作成する。
プロジェクトの作成
はじめに
まず、プロジェクトを保管するワークスペース向けのディレクトリを作成する。
なお、ディレクトリのパスのに全角文字がある場合、CCSのコンパイラ等のツールが動作しない可能性があることに注意する。
Code Composer Studioの起動後、上記で作成したワークスペースを指定する。
次に、ワークスペース内にプロジェクトを作成する。
作成方法は、以下に示すように2通りある。
- 新規作成する方法
- ライブラリのサンプルプロジェクトをインポートして作成する方法
初心者の場合は、サンプルプロジェクトをインポートして作成する方がよい。
これは、サンプルプロジェクトは最初からライブラリがプロジェクト内に組み込まれているためである。
新規作成は、ライブラリを使用せずに1から設計者がソースコードを記述する場合や古いバージョンのライブラリを使用する場合等に選択する。
作成
Code Composer Studioの起動後、[File]メニューバー - [New] - [CCS Project]を選択する。
[New CCS Project]画面が表示されるので、プロジェクトの各種設定を行う。
まず、[Target:]プルダウンから使用するマイコンのファミリーとマイコンの型番を選択する。
次に、[Connection:]プルダウンから使用するデバッガを指定する。
LaunchPadボードの場合は、TI MSP430 USB X [Default]を選択する。
何を指定すればよいか不明の場合は、デバッガを接続した状態で[Identify]ボタンを押下して、デバッガとPCの接続確認を確認する。
もし、選択が間違っている場合や未接続の場合はエラーが出力される。
※注意
[Identify]ボタンを押下した時、デバッガのファームウェアをアップデートするよう促される場合がある。
この時、[Update]ボタンを押下する。
サンプルプロジェクトの使用
サンプルプロジェクトを使用する場合、Resource Explorerツールを使用する。
- [View]メニューバー - [Resource Explorer]を選択する。
または、[View]メニューバー - [Getting Started]を選択して、[Getting Started]画面から[Resource Explorer]を選択する。 - Resource Explorerでは、サンプルプロジェクト以外にもマイコン、LaunchPadボード、ライブラリのドキュメント等の開発時に必要な資料が1通り存在する。
もし、サンプルソースコード等が必要な場合は、Resource Explorerを使用して探すことを推奨する。 - Resource Explorerの起動後、使用するサンプルソースコードをインポートする。
- [MSP430 microcontrollers] - [Embedded Software] - [MSP430Ware] - [Devices] - [MSP430ファミリー名] - [MSP430の型番] -
- [Peripheral Examples] - [Driver Library] - [Example Projects] -> [サンプルソースコードの種類] - [サンプルソースコードのプロジェクト名]に保存されている。
- 使用するサンプルプロジェクト名にマウスオーバーして、プロジェクト名の右側にある点をクリックして、[Import to CCS IDE]を選択する。
これにより、ワークスペースにサンプルプロジェクトがインポートされる。
なお、プロジェクトがローカルに存在しない旨のエラーが出力される場合は、[Install]を選択する。
また、インポートしたサンプルプロジェクトは、プロジェクト名やファイル名を適当にリネームして使用する。 - 最後に、[Finish]ボタンを押下する。
※備考
Resource Explorerには、多くのサンプルプロジェクトが存在しているため、様々なサンプルプロジェクトをインポートしてMSPの動作確認をすることができる。
MSP-FET
第2世代MSP-FETは、Code Composer Studio v7.0、IAR EW430 v7.1、IAR EWAR v8.10以降のIDEでサポートされている。
それ以前のIDEで使用する場合は、こちらのE2E投稿を参照すること。
第2世代MSP-FETと第1世代MSP-FETを区別する方法については、MSP-FETのユーザガイド(5.6.1節 - general features)を参照すること。
MSP-FETファームウェアのアップデート
MSP Flasherは、JTAGを介してMSP430およびMSP432マイコンをプログラミングするためのオープンソースのシェルベース (コマンドライン) インタフェースであり、一般的なプログラミング機能を提供する。
CCSやIARのようなIDEを使用せずに、バイナリファイルを直接メモリにダウンロードするために使用できる。
また、ファームウェアの抽出やJTAGアクセスの永久ロックにも使用できる。
まず、TIの公式Webサイトにアクセスして、MSP Flasherをダウンロードする。
ダウンロードしたファイルを解凍する。
unar MSPFlasher-<バージョン>-linux-x64-installer.zip
MSP Flaserをインストールする。
chmod u+x MSPFlasher-1.3.20-linux-x64-installer.run ./MSPFlasher-<バージョン>-linux-x64-installer.run --prefix <MSP Flaserのインストールディレクトリ> \ --installer-language ja \ --mode <gtk | xwindow | text | unattended> # もし、gtkを選択して描画が崩れる場合は、xwindowまたはtextを指定する
MSP-FETのファームウェアをアップデートする。
-n NO_TARGET
オプションを付加する場合、MSP FlaserはMSP-FETのファームウェアのみを更新するため、ターゲットマイコンへの接続は行わない。
# 通常のアップデート
./MSP430Flasher -n NO_TARGET
# 自動アップデートを行う場合
# -s
オプションは、このユーザプロンプトを抑制するためのものである
# ファームウェアのバージョンとMSP Debug Stackのバージョンの間に不一致がある場合、ファームウェアのアップデートが自動的に行われる
./MSP430Flasher -n NO_TARGET -s
アップデートの実行中において、MSP FlaserがMSP-FETのファームウェアのバージョンとMSP Debug Stack (libmsp430.soまたはMSP430.dll) のバージョンの競合を検出した場合、
MSP Flaserにファームウェアをアップデートさせるようユーザに促す。
>> FETのファームウェアが古いです。 >> 更新しますか?(Y/N):
[Y]キーを入力する場合、MSP-FETのファームウェアが更新されて、ステータスレポートが表示される。
アップデートに成功した後、MSP Flasherルーチンの実行が継続される。
[N]キーを入力する場合、実行中のインスタンスを古いファームウェアで再開する。
TIでは、MSP-FETのファームウェアがMSP Debug Stackのバージョンと一致していない間は、MSP Flasherを使用してマイコンへの書き込みを行わないことを推奨している。
アップデート中にエラーが検出された場合、MSP Flaserはユーザにアップデートの再試行またはキャンセルを促す。
更新を繰り返す場合は、[R]キーを入力する。
[C]キーを入力する場合、実行中のインスタンスを古いファームウェアで再開する。