MSPBSL_CUSTOMBSL432 — MSP432 用 MSB ブートローダ
MSPBSL_CUSTOMBSL432 — MSP432 用 MSB ブートローダ
MSPBSL_CustomBSL432 Package
MSP430™ マイコン (MCU) 上のブートローダ (BSL) を使用すると、開発ユーザーの皆様はプロトタイプ製作段階、最終製造段階、またはサービス提供段階で、MSP マイコン (MCU) 内の組込みメモリとの通信を実施できます。この通信は、UART、I2C、SPI、USB などの標準インターフェイス経由で実施します。必要に応じて、プログラマブル メモリ (フラッシュ / FRAM) とデータ メモリ (RAM) の両方を変更することができます。
以下に、MSP 製品ラインアップ全体で MSPBSL の概要を理解し、効果的に使用するために必要なステップを示します。開発中デバイス上にある BSL がどの機能をサポートしているか、または BSL との通信にどのインターフェイス方式が必要か、という点の最新情報は、次の場所で参照できます。「表1. BSL 機能の概要」 (ステップ 1 でリンクされている各 BSL ユーザー ガイドに記載されています)。
アプリケーションによっては、BSL が満たしていない要件に対応できるように、カスタマイズ済みブートローダが必要です。さらに、MSP430F5xxx、MSP430F6xxx、SimpleLink MSP432 マイコン (MCU) ファミリのような一部の MSP マイコン (MCU) では、ファクトリでプログラム済みの BSL を開発ユーザーの皆様がカスタマイズすることもできます。ただし、大半のデバイスでは ROM 内の BSL に変更を加えることはできません。そのようなデバイスの場合、メイン メモリ ブートローダなどの代替ソリューションを使用してブートロード プロセスをカスタマイズする必要があります。
BSL の基本を理解した後、開発ユーザーが考えるのは、BSL との通信、または BSL を使用してデバイスのプログラム (書き込み) を実施することです。以下に概要を示す複数の方法で、この作業を実施できます。
通信ブリッジ – BSL を PC に接続するためのハードウェア
MSP430 マイコン (MCU) の BSL を PC に接続するために、いくつかの追加ハードウェアが必要になることがあります。以下に、MSP430 の BSL を PC に接続するためのいくつかのオプションを示します。
MSP430-BSL Programmer (「BSL Rocket」) は、MSP430 の BSL と USB を PC に接続するためのブリッジ (架け橋) の役割を果たします。MSP430-BSL Rocket は、Olimex LTD と TI ( テキサス・インスツルメンツ) の提携による成果です。MSP430-BSL Programmer の PCB (プリント基板) とファームウェアはオープン ソース形式であり、UART、I2C、SPI の各通信をサポートしています。
MSP-FET プログラマ (書き込みツール) とデバッガも、プログラミング (書き込み) の目的で BSL インターフェイスをサポートしています。
MSP-GANG 量産プログラマは、一度に最大 8 個のマイコン (MCU) へのプログラム (書き込み) を実施できます。この製品プログラマも、UART BSL インターフェイスをサポートしています。
カスタム ボード上の USB デザインを使用して、USB ペリフェラルを搭載している MSP430 マイコン上の USB BSL にアクセスすることもできます。また、Python ベースの GUI も利用できるので、MSP430 デバイス上の USB BSL ファームウェアのアップグレードに役立ちます。このソフトウェアは、以下のリンク先にある USB デベロッパー向けパッケージの一部です。
BSL Scripter – PC 側のソフトウェア
BSL Scripter はコマンドライン プログラムであり、Windows®、Linux®、macOS® X のいずれかが動作している PC 上でこのプログラムを実行すると、通信ブリッジ経由で MSP430 マイコン (MCU) の BSL との通信を実施できます。サポート対象の通信ブリッジは、MSP-BSL プログラマ (「BSL Rocket」)、MSP-FET、および特定の MSP430 フラッシュ ベース デバイス上にある USB BSL です。このプログラムの使用方法の詳細については、『BSL Scripter ユーザー ガイド』を参照してください。ダウンロードした BSL Scripter Software 一式の中には、BSLDEMO2 (BSL 向けだが非推奨のコマンドライン ツール) も付属しており、BSL Scripter がサポートしていない古いデバイスで活用することができます。BSLScipter はスタンドアロンで入手することもできるほか、UniFlash v4.6.0 またはそれ以降の一部にも統合されています。
組込みプログラミングソリューション
アプリケーションによっては、BSL 経由で MSP430 マイコンへのプログラミング (書き込み) を実施する際に、PC にアクセスできないことがあります。このような場合、UART、I2C、USB のいずれかを経由し、MSP430 BSL プロトコルを使用してホスト BSL ドライバを容易に書き込むこともできます。以下のアプリケーション ノートで、この機能を説明しています。選択した組込みホスト向けのカスタム ソリューションは、ステップ 1 の BSL ユーザー ガイドに記載されている BSL プロトコルに従う必要があります。
『MSP430™ ブートローダと SimpleLink™ MCU』は、MSP430 ブートローダ向けの組込みホストを持たせるためのソフトウェアを提供するアプリケーション ノートです。
『MSP430™ ブートローダと Sitara™ Embedded Linux Host』は、UART ベースの MSP430 ブートローダ用の組込みホストを持たせるためのソフトウェアを提供するアプリケーション ノートです。該当のプロジェクトは、Sitara Embedded Linux Host を使用して実装するホストをベースにしています。
『Linux® を使用した I2C 経由での MSP430™ ファームウェアのアップデート』は、I2C ベースの MSP430 ブートローダに対する組込みホスト用のソフトウェアを提供するアプリケーション ノートです。該当のプロジェクトは、Debian Linux のストック (標準的) ディストリビューションを実行している TI BeagleBone Black を使用して実装するホストをベースにしています。
アプリケーションによっては、BSL が満たしていない要件に対応できるように、カスタマイズ済みブートローダが必要です。さらに、MSP430F5xxx、MSP430F6xxx、SimpleLink MSP432 マイコン (MCU) ファミリのような一部の MSP マイコン (MCU) では、ファクトリでプログラム済みの BSL を開発ユーザーの皆様がカスタマイズすることもできます。ただし、大半のデバイスでは ROM 内の BSL に変更を加えることはできません。
BSL 関連のカスタム資料
フラッシュをベースとする MSP430F5xxx および MSP430F6xxx の各マイコン (MCU) ファミリを使用する場合、デベロッパーの皆様は BSL ソース コードに変更を加え、標準的な BSL に対して、さまざまなペリフェラル インターフェイス、カスタム エントリ シーケンス、または他のカスタム機能を追加することができます。BSL をカスタマイズする場合、以下にリンク先を示す BSL ソース コードを参考資料として使用することができます。BSL430-SOURCE ソフトウェア パッケージ内には、入手可能なすべての BSL ファームウェア イメージと BSL ソース コードが収録済みです。BSL ソース コードを入手できるのは、BSL の最新バージョン限定です (以前のバージョンに対応するソース コードは入手できません)。
MSP432E4 マイコン (MCU) 向けのソース コードは、SimpleLink MSP432E4 SDK の一部として入手できます。
メイン メモリ BSL
MSP430 マイコン (MCU) には、2 種類のメイン メモリ (アプリケーション側) BSL があり、アプリケーションのニーズに合わせてこれらをカスタマイズすることができます。これらのソリューションは、デバイスに付属している BSL を置き換えるのではなく、BSL をカスタマイズするためにアプリケーション ソフトウェアの上位に配置されます。
フラッシュ ベースの MSP430 マイコン (MCU) 向けに、次の MSPBOOT が提供されています。
FRAM ベースの MSP430 マイコン (MCU) 向けに、OTA (ワイヤレス) アップデート オプションに対応する MSPFRBOOT が提供されています。
ファームウェアのセキュア アップデート
アプリケーションによっては、ファームウェアのセキュア アップデートが必須です。そのような状況では、次の資料が利用できます。
Crypto-Bootloader (CryptoBSL) は、MSP430FR59xx と MSP430FR69xx の各 FRAM マイコン (マイクロコントローラ) 上で開発と実装を行ったカスタム ブートローダです。このブートローダは複数の暗号化関数を使用し、フィールド (現場) でファームウェア アップデートを実施する際にセキュリティを強化できるようにします。
MSPBSL_CustomBSL432 Package
Source code and released BSL images for MSP430
MSPFRBoot Software Package
MSP430FRBoot – Main Memory Bootloader and Over-the-Air Updates for MSP430 FRAM
This software package includes all necessary source code and sample applications that are required to use and customize the bootloader.