Windowsに関する情報、Tipsをまとめています。

Linux,Windows,PC:パソコンWindows 10,セキュリティ,暗号鍵,Windows PC,Windows 11,TPM

所有3PCのWindows11要件チェック結果
所有3PCのWindows11要件チェック結果

今秋リリース予定のSun Valleyは、新OSのWindows 11でした。TPM 2.0が障壁になり、所有3PCのうち2PC(Note/Backup)はWindows 10からWindows 11へ無償アップグレードができません。アップグレード要件に変更が無ければ、MainのみWindows 11になり、残りはWindows 10のまま・・・、Windows 11ショックです。

このWindows 11ショック原因のTPM、現状の対処法などをまとめます。

TPM (Trusted Platform Module)

TPMは、MicrosoftがWindows 11(以下Win 11)要件にした専用ハードウェアで、PCを起動するBIOS/UEFIのデバイスです。セキュリティキー、暗号鍵や機密性の高いユーザーデータの保護・保管機能を持ち、最新版Version 2が必要です。

このTPM機能を既に持っているPCでも、Win 10では未使用が多かったのが判っています。弊社Main PCもそうで、設定を変更し最初の図のようにWin11対応チェック結果が全てOKになりました。

テレワークでPC需要が高いこの時期に、敢えてTPMをWin 11アップグレード要件にしたMicrosoftの狙いが、もしも新しいPCへの買換え需要喚起だとしたら、残り2PCは、WindowsからLinux MintへのOS乗換も対処法に入れます。

※2021年7月8日、Linux Mint 20.2 MATEがリリースされました。サポート期間は2025年までです。

弊社テレワーク利用中のMCU開発アプリケーションは、マルチプラットフォーム対応なのでOS乗換に問題はありません。

MCUのTPM相当機能

MCUにも暗号鍵などを保管するTPM相当の外付けチップがあります。例えば、関連投稿のNXP)EdgeLock SE050、Maxim)DS28E38などです。これらは、MCU外付けのセキュリティ強化ハードウェアです。

また、これら外付けハードウェアを使わずに、セキュリティ強化内蔵Flashへ機密情報を保存するCortex-M33コアMCUなどもあります。

これらMCUへTPM相当の機密情報保持機能を実装すると、開発工数が増えることが判っています。

Win 11要件のTPMは、IoT MCUがMicrosoft Azure接続時、上記どちらかの機密情報保持機能を持たないMCUは、例え接続中であっても、将来のセキュリティ脅威を理由に接続拒否することに近いと思います。

MCU開発者は、新たな開発案件が増えて喜びそうですが、Azure利用中の顧客は、納得するでしょうか? Azure以外のAWSやGoogleクラウドへの移行にならないでしょうか?

関連投稿:多様化MCU RTOS対策

一方、スマホなどモバイルデバイスのTPM相当:機密情報保持機能も知りたいと思います。今後調査予定です。

TPM効果

  • なぜBIOS/UEFIのTPMハードウェアなのか、OSソフトウェアで代替しない(できない)理由は何か?
  • TPM情報は、PCのバックアップアプリでバックアップ/リカバリできるか?
  • BIOS/UEFI更新時、TPM情報は保持されるのか?
  • TPM不具合発生時、Win 11は起動しないのか?
  • PC廃棄時のTPM情報の完全削除とその確認方法は?
  • TPM搭載Win 11 PCと、非搭載Win 10 PCのサイバー攻撃防衛差は、どの程度か?

など、TPM採用の明確な理由とその効果を示した情報は、今のところ見当たりません。Win 10でTPMをデフォルト未使用としたのも、なんらかの理由や副作用があったからだと思います。

定性的には、セキュリティ対策が重要であることは解ります。しかし、定量的な比較や副作用も知りたいです。

具体的に、TPM無し(未使用)BIOS/UEFI のWin 10 PCと、TPM有効化Win 11 PCで比較し、攻撃防御差が大きいなら費用対効果によりWin 11対応の新PC購入もありえます。

もちろんPCハードウェアも経年劣化します。しかし、パーツ単体交換が容易なのもWin PCのMacやスマホに無い特徴です。最初の図のようにWin 10で快適に動作するハードウェアが、BIOS/UEFI TPMだけでNGになるのは、「足切り」に近いと感じます。

Win 10と同様、Win 11でもユーザ責任でTPM未使用オプションが設定できれば済む話です。Win 11プレビュー版は、TPM無しでも動作します。このオプション相当は既に存在します。

TPM効果、その具体的・数値的な攻撃防御差評価は、必要でしょう。

Windows 11とWindows 10の運用対処法

現在判っているWin 11とWin 10の主な運用面差が下表です。

Windows 11 Windows 10
OSコア 新OS(Cobalt) 旧OS
大型更新 年1回 年2回
サポート期間 大型更新後2年 大型更新後1.5年
サポート終了2025年10月

Win 11の下図のような新GUIに対して、使いなれたWin 10やWin 7に近いGUIへ戻す無償ツールが既にあります。筆者もOSの見た目の新しさは不要です。現行Win 10でさえ、上記ツールを使って効率的なGUIに変えて運用中です。

Windows11の新GUI
Windows11の新GUI

当然ながら新しいOSコア(Cobalt)ですので、旧OS比、見た目以外の性能も改善されるでしょう。

しかし、Win 10の旧OSコアがトラブルなく安定するまで数年を要したことや大型更新回数が年1回に減ったことも考慮すると、最低でもWin 11新OSコア(Cobalt)安定に1年はかかると思います。

従って、次回Win 11大型更新の1年後まで、アップグレードを待つのは、安全策として良さそうです。

Windows 10サポート延長

Win 10のサポート終了は、2025年10月14日となっています。しかし、良い意味で撤回し、「Win 7のようにサポート終了が延長」される可能性は高いと筆者は思います。

その理由は、Win 10 Version 21H1が、20H1からの3世代、2年に渡る同じOSコアの小規模更新をした結果、更新トラブルが減り安定度が増したこと、Win 11へ更新できない多くのWin PCの「最後の受け皿OS」となること、などです。

サポート終了のWin 7、2023年1月10日にサポート終了予定のWin 8.1のPCは、足切りTPMのためWin 11へのアップグレードが不可能です。Win 7/8.1世代のPCは全てWin 10になり、アップグレードしないWin 10を含めて2025年10月までこれらPC群は稼働できます。

4年半後、2025年10月予定のこれらPC群へのWin 10サポート終了は、多くのユーザ反感を買うと同時に、セキュリティ更新無しで稼働するPCを多数生みます。

何らかの方法でWin 10へTPM相当機能を実装するか、または、セキュリティサポートを延長することは、これまで足切りアップグレードを避けることでシェアを伸ばしてきたMicrosoftの宿命だと思います。

まとめ

2025年10月14日のWindows 10サポート終了までは、Windows 11 TPM要件のため、所有3PCをWin11とWin10の2種運用とするか、それとも3PCともWin10運用とするか、今秋のWindows 11リリース後のトラブル状況や、前章までに示した対処法で決める予定です。

ポイントの1つは、TPM未使用のWin 10 PCとTPMを使うWin 11 PCのサイバー攻撃防御差、その費用対効果です。
※ネットカフェのWin PC移行状況でこの評価結果が判ると思います。

ただMCUテンプレートを新たに開発する立場からは、最新PC環境、つまりWin 11で新開発テンプレートの動作確認は必須です。2 OS運用は余分に手間が掛かりますが、Win11とWin10の併用にならざるを得ない、というのがWindows 11ショックの根源です😣。

なおMicrosoftは、Win 11要件の見直しも行っているようです。TPM相当手段や未使用オプションなどに期待しています。また、7月14日発表のWindows 365 Cloud PCも、料金次第ですが気になる存在です。

* * *

速報:Microsoftは、7月15日(米国現地時間)、Windows 11とは別に、次期Windows 10バージョン 21H2 、サポート期間1.5年の提供を発表しました。また、5年サポート期間の Windows 10バージョンLTSC(Long-Term Servicing Channel)も提供するようです。今秋、提供開始予定です。

Windows,PC:パソコンクリーンインストール,大型更新,Windows 10 21H1,Windows 10 21H2,Sun Valley

5月19日に手動更新したWindows 10 21H1は、その後も安定して動作中です。この21H1と次回大型更新で「この10年間で最も重要なWindowsアップデートの1つ」と言われるSun Valleyこと21H2 の2記事を紹介し、今秋21H2大規模更新失敗時の対処案を示します。

秋21H2は大規模更新、春21H1機能追加はわずか

今秋のWindows 10大型更新は、Microsoft CEO) Nadella氏よると「この10年で最も重要なWindowsアップデートの1つ」で、スタートメニュー、アクションセンター、ファイルエクスプローラー、タスクバーなどの見慣れたユーザインタフェース(GUI)が新しいデザインへ変更、新機能追加の可能性もあるそうです(CNET Japan、2021/06/03)。

6月24日のオンラインイベントで次世代Windowsの詳細が発表されそうです。開発コード名Sun Valleyこと次期Windows 10バージョン21H2は、大規模更新になりそうです。

一方、今春の“21H1の機能追加はわずか(日経クロステック、2021/05/31)”の記事で、Windows 10大型更新と更新規模、その更新プログラム配布方法について解り易い図が掲載されていますので、抜粋し21H2の予想を追加しました。

Windows 10バージョン 大型更新開始時期 更新規模 更新プログラム配布方法
20H1 2020年上期 大規模? 通常(一括ダウンロード)
20H2 2020年下期 小規模 有効化パッケージ
21H1(今春:現状) 2021年上期 小規模 有効化パッケージ
21H2(今秋予定) 2021年下期 大規模? 通常(一括ダウンロード予想)

更新プログラム配布方法の有効化パッケージとは、大型更新開始前に、更新内容を無効化した状態でPCへ段階的に更新プログラムをパッケージで配布しておき、大型更新時にそれらを有効化する方法です。小規模更新の場合には、更新プログラムダウンロード時間が短くなるなどのユーザメリットがあります。

大規模更新では事前配布パッケージ自体もおそらく大きくなるため、Windows7から8/8.1への更新と同様、事前配布無しに一括して更新プログラムをダウンロードする通常方法になると予想します。

OSクリーンインストール歴史

Windows 10初版リリースが2015年なので、ここ10年の範囲にはWindows 7や8/8.1なども含まれるでしょう。筆者は、Windows 7や8の時代は、新OSリリースに合わせて、または、PCの調子が悪い時は、リカバリよりもOSクリーンインストールを行っていました。

既存アプリケーションの再インストールや再設定も必要で、手間と時間がかかる作業でしたが、リカバリよりも新OSをクリーン環境で使うメリットが大きいと判断したからです。

Windows 10へアップグレート後は、クリーンインストール回数は減り、20H1以降は、全てのPCで問題なく大型更新が成功しています。クリーンインストールの手間を考慮すると、少々のトラブルは、自己修復してきたとも言えますが、それでも旧OSに比べ、安定度や安心感は高いと評価しています。

Windows 21H2大規模更新失敗対策案

今秋21H2は、操作性も含めた大規模更新で、開発中止したWindows 10X機能などを含める噂もあり、共通コアOSに比べ、更新失敗の可能性は高くなります。関連情報を収集分析しますが、所有PCは、最終的には3つの更新結果になると予想しています。

  • 21H2手動更新成功
  • 21H2手動更新失敗➡21H2クリーンインストール
  • 21H2手動更新失敗➡21H1へリカバリし継続使用

更新成功を期待しますが、失敗時は、21H2をクリーンインストールする案と、21H1へリカバリして継続使用する2案があります。

現在使用中の21H1は、20H1から続く共通コアOSのWindows 10です。21H1サポート終了の2022年12月(2022年5月という記事もあり)までは、継続使用でも安心して運用ができます。またGUIも、現状のままでも不満はありません。

最新21H2をクリーンインストールするか否かは、発表される次世代Windowsの内容次第です。

魅力的なOSであれば、手間をかけてもクリーンインストールするでしょう。次世代Windowsの内容は、本ブログでも適宜取上げていきます。

Windows,PC:パソコンWindows Update,21H1,手動更新

5月19日、2021年春のWindows 10 21H1手動更新に成功しました。更新方法は、関連投稿:20H2の時と同じです。

Windows 10 Version 21H1
Windows 10 Version 21H1

2日経過した現在、トラブルは無く、Microsoft Office/LibreOfficeやブラウザなどの主要アプリケーション、FreeRTOSアプリケーションテンプレート開発に使用中のMCUXpresso IDEも正常に動作しております。1世代前の20H2と特に変わった点は見当たらず、今回もまた小規模更新でした。本稿も最新21H1で作成しました。

要点と春21H1手動更新用USBメディア作成

前回の20H2との違いは、21H1用のMediaCreationTool21H1.exeをダウンロードし、USB/DVDメディアを作成する点です。どなたでもダウンロードできます。

21H1ビルド番号は、19043.985です。コチラの記事のMicrosoft表明から、既に何回か更新されています。

手動更新の要点は、「旧Windows 10 20H2起動状態」で、作成したUSBのsetup.exeを実行すること、トラブルに備えた「バックアップ&リカバリーができる」ことです。これらを注意すれば、個人用ファイルと既存アプリを引き継いだまま、手動でWindows 10 21H1へ更新できます。

その他の留意事項

手動更新メリットは、ユーザ主体でWindows更新ができることです。デメリットは、Windows 10レジストリがデフォルト値に戻ること、一部の既存アプリ設定が引き継がれない場合があることです。

弊社の場合、今回の手動更新で、Dynamic Theme、EaseUS Todo Backupに引き継がれていない設定がありました。特に、EaseUS Todo Backupは、バックアップアプリで重要です。このように、重要なアプリは、Windows更新完了後、ユーザ自身で動作と設定確認をすることをお勧めします。

※OS更新後の既存アプリ動作と設定確認は、手動更新以外の方法でもユーザ自身で行う必要があると思います。細かい話をすると、ローカルアカウント画像が引き継がれていないPCもありました😅。この程度は、更新トラブルに含めません。

秋21H2:大規模更新リスク対処

年2回のWindows 10大型更新と更新規模
年2回のWindows 10大型更新と更新規模

各種Windows記事によると、次回秋の21H2は、スタートメニューなど操作性も含めて大規模更新になるそうです。

今回春の21H1は、従来OSコアと共通の小規模更新でした。そこで、弊社所有Windows PC 3台全てを19日に手動更新し、2日経過した現在、いずれも安定動作しております。更新に要した時間は、0.5日/3PCでした(バックアップ時間除く)。

大規模更新が見込まれる次回21H2は、更新トラブル有無を1PC当たり2~3日かけて慎重に確認後、段階的に手動更新する予定です。

小規模更新との差は、動作確認を3PC並列に行うか、1PCずつ直列に行うかです。直列確認中に1台でもトラブルが発生した時は、以降のOS更新を止めます。これにより、作業中の業務停止を防ぎ、Windows大規模更新へのリスク対策とします。

今秋のMCU開発業務が一段落付いた頃を見計らって、21H2大規模更新に1週間/3PCを費やす予定です。

RL78マイコン,MCU:マイコン,LPCマイコン,MPU/SBC:IoT用プロセサ,Linux,Kinetisマイコン,Windows,PC:パソコン,STM32マイコン,PSoC/PRoCマイコン,MSP432マイコン,Cortex-M0+コアCortex-M0+,Windows 10,Cortex-M4,セキュリティ,Edge MCU,IoTエッジ,Linux,CPU,マルチコア

PCのCPUは、IntelとAMDの2社が独占状態でした。しかし、AppleがARMベースの新CPU:M1を発表し、そのコストパフォーマンスは、Intel/AMDの3倍(!)とも言われます(記事:「ソフト技術者もうなるApple「M1」の実力、新アプリに道」や、「Apple M1の実力を新世代のIntel/AMD CPUと比較」など)。

本稿は、これらPC CPUコアの現状から、次世代IoT MCUコアの3層構造と筆者希望的観測を示します。

CPUコア:Apple/Intel/AMD

筆者が学生だった頃は、マシン語のPCソフトウェアもありました。CPUコア性能が低いため、ユーザ要求を満たすアプリケーション開発には、ソフトウェア流用性や開発性を無視したマシン語開発もやむを得ない状況でした。

現在のCPUコア性能は、重たいGUIやネットワーク処理を複数こなしても、ユーザ要求を満たし、かつ流用性も高いC/C++などの高級言語でのアプリケーション開発が普通です。Appleは、この状況でIntel/AMDコストパフォーマンス比3倍のM1 CPUを開発しました。

このM1 CPUを使えば、従来CPUのボトルネックが解消できるために、より優れたGUIや新しいアプリケーションの開発が期待できます。

このM1実現の鍵は、5nmルールの製造技術と新しいCPU設計にあるようです。

MCUコア:ARM/Non ARM

MCUはARMコアとNon ARMコアがありますが、Non ARMコアのコストパフォーマンス比は、M1程ではありません。従って、主流はARM Cortex-M系シングルコア採用MCUで、事実上ARMコア独占状態です。開発言語はC言語でベアメタル開発、製造プロセスも数10nmと、いわば、数10年前のIntel独占CPUコアに近い状況です。

RISC-Vという新しいMCUコアも出てきましたが、まだ少数派でその性能も未知数です。Intel/AMD CPUと比較記事の最後に記載された「競争こそユーザの利益」には、MCU世界はなっていません。

ARMはコア設計図のみ提供し、デバイス実装はMCUベンダが担当します。従って、現状のMCU世界が続く場合には、MCU高速化は製造技術進化とマルチコア化が鍵です。

ARMは、エッジAIに向けたNPUを発表しました。独自MCUコアと付随する開発環境を提供でき、かつコストパフォーマンスがARMコアの数倍を実現できるMCUベンダが無い現状では、ARMの頑張りがIoT MCUを牽引すると思います。

NVIDIAによるARM買収が、今後のARM動向に及ぼす影響は気になる状況ではあります。

IoT MCUコア

MCUコアとCPUコアの一番の差は、ユーザ要求コストです。これは、同じコアのMCU製品に、内蔵周辺回路やFlash/RAM容量の異なる多くのデバイスをベンダが提供中であることからも解ります。ユーザは、MCUに対して無駄なコストは払いたくないのです。

つまり、MCUデバイスはアプリケーション専用製品、CPUデバイスは超汎用製品、ここが分岐点です。

IoT MCUには、エッジAI、セキュリティ、無線通信(5GやWi-Fi)などのIoT機能追加が必要です。これら機能を並列動作させる手段として、RTOSも期待されています。この状況対応に、MCUコアも高性能化やマルチコア化に進化しつつあります。

セキュリティや無線通信は、予め決まった仕様があり、これら対応の専用ライブラリがベンダより提供されます。但し、セキュリティは、コストに見合った様々なセキュリティレベルがあるのも特徴です。ソフトウェア技術者は、専用ライブラリのMCU実装には神経を使いますが、ライブラリ本体の変更などは求められません。この仕様が決まった部分を「IoT基本機能」と本稿では呼びます。

MCUソフトウェア開発者が注力すべきは、ユーザ要求に応じて開発するIoTアプリケーション部分です。この部分を、「IoT付加機能」と呼び、「IoT基本機能」と分けて考えます。

ユーザのアプリケーション専用MCU製品意識は、IoT MCUでも変わりません。例えば、IoT基本機能の無線機能は不要や、ユーザがコストに応じて取捨選択できるセキュリティレベルなどのIoT MCU製品構成になると思います。一方、IoT付加機能だけを実装するなら、現状のMCUでも実現可能です。

以上のことから、IoT MCUは3層構造になると思います。

IoT MCUコアの3層構造
IoT MCUコアの3層構造
機能 追記
Back End IoT MCU IoT基本機能+付加機能+分析結果表示 収集データ分析結果ビジュアル表示
IoT MCU IoT基本機能+付加機能 高性能、マルチコア、RTOS利用
Front End IoT MCU センサデータ収集などのIoT付加機能
最小限セキュリティ対策
収集データは上層へ有線送信
コスト最重視

最下層は、ユーザ要求アプリケーションを実装し、主にセンサからのデータを収集するFront End IoT MCUです。ここは、現状のARM/Non ARMコアMCUでも実現できIoT付加機能を実装する層です。デバイスコスト最重視なので、最小限のセキュリティ対策と収集データを有線、または無線モジュールなど経由で上位IoT MCUへ送信します。IoT MCUサブセット版になる可能性もあります。

中間層は、高度なセキュリティと市場に応じた無線通信、エッジAI機能などのIoT基本機能がフル実装できる高性能MCUコアやマルチコア、RTOS利用へ進化した層です。IoT付加機能も同時実装可能で、下層の複数Front End IoT MCUが収集したセンサデータを、まとめて上位Back End IoT MCUまたは、インターネット空間へ直接送信できます。製造技術進化とマルチコア化、ARM新コア(Cortex-M23/33/55など)が寄与し、IoT MCUの中心デバイスです。

最上層は、第2層のIoT MCU機能に加え、インターネット空間で収集データを分析・活用した結果をユーザへビジュアル表示する機能を追加した超高性能MCUコア活用層です。自動車のADAS(Advanced Driver-Assistance Systems:先進運転支援システム)のおかげでユーザへのビジュアル表示要求はより高度になります。このユーザ要求を満たす次世代の超高性能IoT MCU(またはMPU)が実現します。

最下層のFront End IoT MCUは、現状のCortex-M0+/M4コアで弊社テンプレート適用のMCUが生き残ってほしい、というのが筆者の希望的観測です。
それにしてもAppleのコスパ3倍M1、凄いです。iPhoneもそうですが、抜きん出た技術と経営能力、Jobs精神、健在ですね。

Windows,PC:パソコンWindows 10,大型更新

年2回のWindows 10大型更新、Windows 10最新バージョン20H2がリリースされました。Windows Updateを待たずにユーザ主体で最新のWindows 10大型更新を実行する方法と、そのメリット/デメリットを示します。

まとめ

準備 MediaCreationTool20H2.exeダウンロード 0.5時間
※Pro/64bitは8GBでOK
USB/DVDインストールメディア作成
旧Windows 10バックアップ(更新失敗リカバリ対策) ※環境依存で省略
更新 旧Windows 10起動状態で作成USBのsetup.exe実行 1~3時間(PC依存)
※この間クリック1回
新Windows 10へ引き継ぐもの選択後インストールクリック
新Windows 10の大型更新自動完了

旧Windows 10バージョン2004のアプリケーションとユーザデータの両方を保持したまま、新Windows 10バージョン20H2を上書きインストールする方法です。メリットとデメリットが以下です。

メリット いつ始まるか判らない新Windows 10大型更新をユーザ主体で開始
タイミングの良いバックアップを取るので、良いところからリカバリ
アプリとユーザデータ両方保持で、新Windows 10でも即開発継続
USBは複数PC更新に使え、新Windows 10トラブル回復ツールにもなる
デメリット レジストリはデフォルト値へ戻る。ユーザ変更時は再設定が必要。

Windows 10上書きインストール準備

Windows 10大型更新がリリースされると、同時にMicrosoft公式ツール:MediaCreationTool20H2も発表されます。

MediaCreationTool20H2は、Windows 10新規/再インストールに必要な全ファイルをUSBやDVDへ保存するツールです。Windows ProとHome、64ビット版と32ビット版の各バージョンを保存できますが、Windows Pro/64ビット版のみなら8GB容量のUSBで十分です。

MediaCreationツールでUSBメディア作成の様子
MediaCreationツールでUSBメディア作成の様子

ツールダウンロードとUSBメディア作成時間は、ダウンロードリンク速度に依存しますが、約30分です。

作成したUSBは、複数PCの大型更新に使えます。また、Windows 10起動トラブル、例えばスタートアップ修復やコマンドプロンプト処理などの回復ツールとしても動作します。

MediaCreationツールで作成したUSBメディアの大型更新と回復の2用途
MediaCreationツールで作成したUSBメディアの大型更新と回復の2用途

以上がWindows 10上書きインストール開始前の最低限の準備です。

但し、今回に限らずWindows 10の大型更新には、多くの不具合報告があります。使用中のPCが大型更新で不具合に遭遇しても、不具合前へリカバリできるシステムバックアップも、更新前のユーザ側準備としては必須です。

バックアップツールは、有償/無償含め様々です。バックアップだけでなく、リカバリができる確認もお勧めします。リカバリ本番で失敗する例は、世の中にたくさんあります。バックアップ所要時間は、使うツールやご利用環境に依存しますので、省略しています。

バックアップのもう1つの重要事項は、タイミングです。開発が一段落したなど、バックアップに適し、ユーザや開発者が安心しているタイミングがあります。ユーザの都合が良いタイミングでバックアップを確実にとり、かつ、Windows 10大型更新を迎えれば、たとえトラブルにあっても冷静に対処できます。

Windows 10上書きインストール更新

Windows 10上書きインストールの最重要事項は、旧Windows 10起動状態で作成したUSB/DVDのsetup.exeを実行することです。以下、Windows Pro/64ビット版USBを例に説明します。

旧Windows 10起動後に準備で作成したUSBを装着し、setup.exeをクリックします。すると、最新の更新プログラムダウンロードが始まり、インストール準備完了へ画面が変わります。

Windows 10上書きインストール更新の様子
Windows 10上書きインストール更新の様子

「個人用ファイルとアプリを引き継ぐ」がデフォルトになっています。これが、旧Windows 10アプリケーションとユーザデータの両方を保持のまま、新Windows 10を上書きインストールする設定です。

引き継ぐもの変更をクリックすると、アプリ、または、個人用ファイルのみ、どちらもなしなども選択可能です。どちらもなしの場合が、クリーンインストールに相当します。

上書きインストール中、このインストール準備完了画面のインストールのみがクリック個所です。インストールクリック後は、何の操作も不要です。PCが勝手に何回か再起動し、新Windows 10バージョン20H2の初期画面が表示され大型更新完了です。

Windows10 20H2のバージョン情報
Windows10 20H2のバージョン情報

更新開始から完了までの所要時間は、PC(ネットワーク速度やPC性能)に依存します。おおよそ1時間から3時間程度です。この間のクリックは1回だけです。クリック後は読書や運動などでもして気楽に新Windows 10初期画面を待てば良いでしょう。

Windows 10上書きインストールメリット/デメリット

Windows 10上書きインストールの最大メリットは、ユーザ主体でWindows 10大型更新を開始できること、同時に、更新失敗に備えたシステムバックアップが取れることです。

どちらもWindows任せ、つまりWindows Updateで自動開始にすると、ユーザや開発者が不安定な時や思わぬタイミングで更新を開始し、バックアップを忘れる、適切なバックアップが取れないなど、本来なら起こるはずが無いユーザ起因のトラブルにも遭遇する可能性がでてきます。

新Windows 10バージョン20H2は、旧Windows 10バージョン2002の小変更版と言われます。小変更なら尚更早く更新完了し、Windows 10最新バージョン20H2による安定したPC運用を望みたいと筆者は思います。但しMicrosoftは、Windows 10バージョン20H2のUpdate配布を遅らせるとの2020/10/23情報もあります。

Windows 10のライフサイクルは、わずか1.5年です。この間半年毎に2回大型更新があり、たとえ各回の更新を延期しても、1.5年後には必ず大型更新が必須です(ライフサイクルは、関連投稿:WindowsとLinux Mintの大型更新比較を参照してください)。

Windows 10起因の大型更新トラブル遭遇確率は、ユーザ主体開始でも自動開始でも大差ないと思います。むしろユーザ主体上書きインストールの方が、ユーザ起因トラブルがない分、トータルの大型更新トラブル確率は低くなるかもしれません。

※本稿は、大型更新トラブルの原因を、Windows 10起因とユーザ起因、これら2つに分けて考えています。

上書きインストールのデメリットは、上書きなのでWindows 10レジストリがデフォルト値に戻ることです。デフォルト値は、MicrosoftがWindows 10運用上、最も安全と考える値です。しかし例えば、ネットワークのパスワード保護共有を有効→無効にユーザが変更している場合などは、再設定が必要です。

ご利用中のPCで、メリット/デメリットを天秤にかけ、本方法適用をご自身でご判断ください。

なお弊社は、本稿のWindows 10上書きインストール更新方法で、メインPC/ノートPC/バックアップPC:3台のWindows 10バージョン1909→2002→20H2の過去3回の大型更新を、運よく(?)成功した実績があります。

サイト関連,RL78マイコン,MCU:マイコン,LPCマイコン,Kinetisマイコン,Windows,PC:パソコン,STM32マイコン,PSoC/PRoCマイコン,お知らせ,MSP432マイコン,Cortex-M0+コアテンプレート,IoTマイコン,セキュリティ,Firefox Send,ファイル共有,Google Drive,利便性

クラウドファイル共有サービス:Firefox Sendが2020年9月17日終了となりました。弊社テンプレート配布に最適なFirefox Send終了、残念です。代替にGoogle Driveを使いますが、送受双方に手間が1つ増えます。

本稿は、この増えた手間を説明し、セキュリティと利便性が相反することを示します。

Firefox SendからGoogle Driveへクラウドファイル共有サービス変更
Firefox SendからGoogle Driveへクラウドファイル共有サービス変更

Firefox SendとGoogle Drive比較

Firefox Sendは「ファイル共有」専門サービス。共有ファイル保存期間はアップロード後最大7日、または、ダウンロード1回で共有ファイルがオンライン上から自動的に消去されるなど、「ファイル保存」が主目的のGoogle Driveにない使い勝手がありました。

ファイル共有Firefox Sendとファイル保存Google Drive比較
Firefox Send Google Drive
ファイル共有期間 最大7日 設定不可
受信側ダウンロード回数 1回 設定不可
利用料金 無料(最大2.5GB) 無料(最大15GB)
ダウンロード側ログイン 不要 不要
パスワード保護 可能 可能
特徴 ファイル共有に最適 ファイル保存に最適

共有ファイルダウンロードリンクを送信側から受信側へメール通知、受信側がFirefox/Chrome/Edgeなどのモダンブラウザを使って共有ファイルダウンロードに成功しさえすれば、ファイル共有は終了です。ここまでは、Firefox SendとGoogle Drive全く同じです。Firefox Sendは処理完了です。

違いは、Google Driveがファイルの共有期間やダウンロード回数の制限を設けることができない点です。また、受信側が共有ファイルをダウンロードしたことを、送信側が知る手段もありません。

Google Driveでのダウンロード成功後、受信側に成功通知メールをお願いするのは、Firefox Sendでは自動で行われる共有ファイル削除、または、共有停止を送信側が手動にて行うためです。

Firefox Sendに比べ、Google Driveでは送受双方に処理完了までにこの手間が1つ余分に掛かる訳です。

Firefox Send終了理由

Firefox Sendサービス終了の理由は、マルウェア配布手段として悪用されるケースが増え、開発元Mozillaがサービスラインナップ全体コスト、戦略的焦点を見直した結果と発表されています。

高度な暗号化とファイル自動消去のFirefox Send共有サービスは、Firefoxという誰にでも知られた信頼性の高いダウンロードリンククリックだけで簡単にマルウェアをデバイスへ送れます。一般のユーザだけでなく、ハッカーにとっても便利なツールとして悪用されたのでしょう。

無料一時保存ファイルのマルウェア排除を実施することは、無理だとMozillaがあきらめたのだと思います。ただ、次々に生まれるマルウェア排除は、たとえ有料でも困難かもしれませんが…。

セキュリティと利便性の相反例です。また、セキュリティとその対価:費用対効果を考えさせる例でもあります。

企業が自社クローズドサーバーでのみ社員ファイル共有を許可するのは、費用対効果の実現解なのでしょう。
※同様に、IoT MCU開発でもセキュリティ実現解検討が必須です。

Google Drive代替理由

Firefox Send代替にGoogle Driveを選んだ理由は、ファイルの「ダウンロード前や共有前」に、ウィルススキャンが自動的に行われるからです。ウィルス検出時は、警告表示があります。

※ウィルススキャンは圧縮ファイルでも実施されます。但し、パスワード保護を行うとスキャン不可能になりますのでパスワードは設定しません。Firefox Sendでもこれら処理は実施されていたと思いますが…、ハッカーはパスワード保護でスキャンをかわしたのだと思います😥。

無償、セキュリティ、信頼度の高さ、モダンブラウザで利用できる点、これらからGoogle Driveを代替として弊社は選びました。

全テンプレート継続販売

販売中の弊社テンプレートは、戦略的焦点(???)から販売継続いたします。販売中止のサイト変更手間と消えるリンク対応などを考慮すると、そのまま継続販売する費用対効果が高いからです。

本ブログでは、その時々に応じてテンプレート販売中止・終了予定なども記載しますが、マイコンテンプレート名が購入サイトに掲載している限り販売は継続いたしますので安心(?)してご購入ください😌。

MCU:マイコン,MPU/SBC:IoT用プロセサ,Windows,PC:パソコンIoTマイコン,セキュリティ,IoT,暗号化,侵入,脆弱性,多要素承認,デジタル後進国

MCU開発中、進捗が詰まることはだれでもあります。そんな時にスタックした気分を変えるMCUセキュリティ関連話題を投稿します。

MCU開発には集中力が必要ですが、その持続は、精々数時間です。人のスタック深さは有限ですので、開発を経過時間で区切るのが1つ、別方法として集中気分を切替て開発詰まりを乗切る時の話題を示します。

気分転換が目的ですので、硬い話ではありません😁。

セキュリティ更新終了

Microsoftが、Office 2010は今年2020年10月13日、Windows 10バージョン1903は2020年12月8日にサポートを終了します。これらソフトウェアご利用中の方は、新ソフトウェアへの入替が必要です。

サポート終了とは、「セキュリティ更新プログラム配布終了」のことです。ソフトウェア自体がPCで使えなくなる訳ではありません。しかし、ハッカーなどによる新たなサイバー攻撃を防ぐ手段が無くなりますので、安全・安心な利用ができなくなります。

ところで、安全・安心の根拠、セキュリティ、セーフティ、セキュア…などの日本語は、あいまいに使われます。しかし、英語の「SecurityとSafetyは別物」です。

オンラインセミナー:STマイクロエレクトロニクスのTrustZone対応マイコンによるIoTセキュリティによると、

  • Security:外部からの危害(攻撃や改竄)から、MCU内部が保護されている状態
  • Safety:MCU誤動作や故障などが原因で、MCU外部へ衝突や爆発などの危害を与えない状態

英語でのSecurityとSafetyの使い分けは、対象がMCU内部ならSecurity、MCU外部ならSafetyと、明確な区別があります。

MCUセキュリティ関連資料を英語で読むときは、対象は単語で解ります。日本語訳資料を読むときは、対象がMCU内部か外部かを区別して理解する必要があります。

IoT機器侵入調査

総務省、IoT機器に侵入を試みる際のIDとパスワードの組み合わせを、従来の100通りから600通りに増やし、侵入できたIoT機器所有ユーザへ対策を呼び掛けた。2020年9月11日、ITmedia。

つまり、ハッカーの代わりに総務省)国立研究開発法人情報通信研究機構(NICT)が、NOTICE:National Operation Towards IoT Clean Environmentに参加しているISP 62社のIPアドレスに対して、疑似攻撃をしかけ、問題があったIPアドレスユーザへ注意を促した、ということです。

過去のサイバー攻撃にあったIDとパスワードにたまたまなっていた場合、たとえ厳重な管理であっても安全でない(!Security)訳です。IoT機器のアクセス方式、「IDとパスワード」には、限界があるかもしれません。

多要素承認

金融庁、銀行・決済各社に本人確認の徹底を要請。2020年9月16日、ITmedia。

ハッカーによるドコモ口座の不正利用が、多要素認証で防げるのかについてのセキュリティ専門家解説は、筆者には正直言って判りません。

多要素認証とは、セキュリティ情報アクセス時、スマホなどの本人しか持たないモバイルデバイスへ送った認証コードなどを使ってログインする仕組みです。「パスワードレスログイン」とも言われます。

海外ドラマでは、スマホの乗っ取りも簡単です。モバイルデバイスの2要素認証コード入力で十分なのでしょうか? スマホを持たない人は、決済サービスを利用できない、またはさらに生体認証が必要なのでしょうか?

この多要素認証をMCUへ実装する場合、どうすれば良いのでしょうか?

暗号化脆弱性

TLS 1.2とそれ以前に脆弱性、2020年9月16日、マイナビニュース。

ブラウザ経由でクレジットカード番号を送る時、通信データを暗号化し盗聴を防ぐしくみが、TLS:Transport Layer Securityです。このTLS 1.2に脆弱性が見つかり、TLS 1.3を使うなどの対策が示されています。

MCUで以前は問題無かった暗号化技術にこのような対策を実施するには、組込み済みソフトウェア、またはハードウェアの一部更新が必要です。

暗号化部品が壊れた、または脆弱性発見時、対象部品のみ交換できるMCU機器があれば良いのですが…。

デジタル後進国

“デジタル後進国”で検索すると、「日本はデジタル、IT後進国」だという記事概要が多く見つかります。

セキュリティ用語の区別もあいまいなままの日本です。先進国開発済みのMCUセキュリティ技術を、理解不足のまま流用しても当面は良いのでしょうが…、セキュリティとあいまい性、本質的に相反する気がします。
ハッカーの攻撃は、あいまい性で生じるMCUセキュリティのすきまを狙うのですから。

MCUセキュリティに関しては、何事にもあいまい性が好まれ日本不得意な「明確さ」、これが必須だと思います。

*  *  *

MCU開発時、スタック気分を変える時に役立つMCUセキュリティ関連話題を5つ投稿しました。

IDとパスワードで保護するMCUセキュリティ
IDとパスワードで保護するMCUセキュリティ

Linux,Windows,PC:パソコンWindows 10,大型更新,Linux Mint,MCU開発,PC OS,アップデートマネジャー,Windows Update

春と秋の年2回大型更新するWindows 10のリリース開始からサポート終了までのライフサイクルは、1.5年です。Windows 10最新バージョン2004へ更新済みの場合、2021年12月14日までは、2回目/3回目の大型更新を延期でき、この間の大型更新トラブルも回避できる可能性があります(COVID-19の影響は除いています)。

一方、Linux Mint 20の大型更新は春の年1回、ライフサイクルは5年です。

本稿は、このPC OSの大型更新を比較し、MCU開発用OSの安定性という観点から、Linux Mintが優位であることを示します(関連投稿:Linux Mintお勧め理由の続編という位置づけです)。

WindowsとLinux Mintの大型更新比較結果

Windows 10(Version 2004) Linux Mint 20(Ubuntu 20.04 LTS)
大型更新回数 年2回 年1回
ライフサイクル 1.5年(2021/12/14まで)

※この間2回の大型更新予定

5年(2025年春まで)

※この間4回の大型更新予定

大型更新方法 Windows Update(手動延期可能) ユーザによるクリーンインストール
大型更新間隔 0.5年 1年
通常更新方法 Windows Update アップデートマネジャー(5章参照)

Windows 大型更新(Windows 10)

2020年2回目の大型更新、Windows 10バージョン20H2の内容が判りました。バージョン20H2も、様々な機能追加・更新の発表があり、大型更新トラブルが少ないことを願っています。一方で、コチラの記事によると、現行バージョン2004では旧バージョンから消えた重要機能も少なくないようです。

※Windowsの機能追加・削除によるMCU開発弊害の例が、関連投稿:FRDM評価ボードOpenSDA接続問題の3章にあります。

Windows 10運用に安定性を求める場合は、1.5年のライフサイクル期間中、大型更新を「手動延期」する方法があります。但し、大型更新毎に変わるメニューやタスクバーなどのPC基本操作が、最新版で無くてもかまわない場合です。職場利用のPCなどは、この運用方法でも良いかもしれません。

個人利用のPCは、大型更新が基本です。Windows Updateは「最新版へ更新」するのがデフォルト設定ですし、巷に溢れるWindows 10情報は、どれも最新版の話題で、ユーザに大型更新バイアスをかけ続けるからです。

但し、プリンタや接続機器も多種多様な個人利用PCの場合、大型更新トラブルの発生確率は、職場利用のPCよりも高くなる傾向があります。

この大型更新トラブル確率が増すにも関らず、デフォルトでは最新版へ更新することが、Windows 10の矛盾点だと思います。

Windows Updateは、OS自身の大型更新と、通常のセキュリティ更新の2機能が混在しています。これは、Windows 10が商用であるがゆえに、より早い競合製品(Apple macOSやLinux)差別化もビジネス的には必要なためか(?)と筆者はあきらめています。

Windows Updateで無理やり大型更新も行うのではなく、ユーザ主体で大型更新が開始できる別ボタン、例えばInstall New Windowsを設ければ、少なくとも大型更新起因のトラブルは回避できると思うのですが…。

Linux Mint大型更新(Linux Mint 20)

Windows と最も異なるのは、Windows Updateに相当するLinux Mintアップデートマネジャーに、OS大型更新機能が無い点です。

Linux Mintのアップデートマネジャーは、稼働中OSの主にセキュリティ関連更新を行います(標準搭載のFirefoxブラウザなどは、このアップデートマネジャーで最新版へ更新されます)。つまり、ユーザが主体的に操作しない限りOS大型更新はできない仕様です。

旧版Mint 19からMint20への更新は、基本的にはOSクリーンインストールで行います。旧Mint 19利用中のユーザ追加アプリケーションやユーザフォルダなどを、新Mint 20へ引き継ぐバップアップツールが標準で用意されています。

また、現行Mint 20と旧Mint 19のOS自体を比較しても、差はデスクトップの色や壁紙程度で、本来のOS部分は、(詳細に見れば別ですが)大差は見当たりません。

Linux Mint 20のリリースノートを読み、大型更新の必要性をユーザが感じなければ、そのままLinux Mint 19を使い続けても最長5年間はセキュリティ更新が受けられます。

MCU開発用PC OS安定性評価

MCU開発用のPC OS として、以下の2点からLinux Mintが優れると評価します。

  • Linux Mint大型更新間隔は、Windows 10の0.5年に比べ1年と長い
  • Linux Mint大型更新は、ユーザが主体的に開始する

MCU開発速度が上がり、MCUソフトウェア/ハードウェア生産性が向上しても、プロジェクト開始から終了まで数か月~1年は要するでしょう。EclipseベースIDEなどのMCU開発ツールも、この間に1回程度は更新がありえます。

これらMCU開発ツールの動作土台となるPCのOSは、少なくてもプロジェクト実行中の1年程度は安定的に、かつ大型更新する場合でもユーザ主体で開始してほしいと願う開発者は、筆者だけではないと思います。

アップデートマネジャーの使い方(Linux Mint 20)

Linux Mintアップデートマネジャーの使い方
Linux Mintアップデートマネジャーの使い方

Linux Mint 20起動時、①アップデートマネジャーを起動しても、「このシステムは最新の状態です」と表示されることがあります。この時は、念のため、②再読込をクリックします。

すると、更新情報を再チェックし、何らかの更新がある場合には、リスト表示されますので、③アップデートインストールをクリックします。

インストール中に「以下のパッケージがインストールされます」と表示される場合は、デフォルトのまま④OKをクリックします。

①~④によりLinux Mint 20へ最新アップデートが適用されます。

※これらの操作はWindows Update「更新プログラムのチェックボタン」を、ユーザ自身で押すことに相当します。

また、ファイアウォールのデフォルトは無効です。「起動する」をクリックし、自宅/会社/パブリック選択後、Statusを変更、有効に変更することをお勧めします。

MCU:マイコン,LibreOffice,LPCマイコン,Linux,Kinetisマイコン,Windows,PC:パソコン,STM32マイコンLPCXpresso,Windows 10,LibreOffice,STM32CubeIDE,開発環境,Fresh,Still,Linux Mint,Linux

PCへインストールするLinuxには、様々なディストリビューションがあります。ディストリビューションとは、Linux 本体とLibreOfficeなどの標準搭載アプリケーションを1パッケージにまとめ、利用者がLinuxインストールとその活用を即座にできるようにした配布形態のことです。

本稿は、これらディストリビューションの中で、筆者がLinux Mint 20 MATEエディション(64ビット)をWindows MCU開発環境トラブル発生時、代替に使えるLinuxディストリビューションとしてお勧めする理由を示します。

Linuxディストリビューション

2020年7月発表のWebサイト向けLinuxディストリビューションシェアを見ると、UbuntuやDebianなどがメジャーなディストリビューションであることが判ります。

様々なLinuxディストリビューション、特にUbuntuやDebian、Raspberry Pi用のRaspbianと本稿のLinux Mint概要は、コチラの情報が参考になります。用途、安定性/情報量/デザイン性などでディストリビューションを評価した結果が示されています。

Linux Mintとメジャーディストリビューションの差

UbuntuとLinux Mintの関係を、まとめました。

  • Ubuntuベースの派生形として、様々なデスクトップPCディストリビューション(Linux Mint)がある
  • Ubuntuは定期的にアップグレートされるが、主にセキュリティ修正のみでアプリケーションの大幅更新をしない5年長期サポート版:LTS版(最新は2020年4月リリース:Ubuntu Desktop 20.04)もあり、このLTS版に準ずる派生ディストリビューション(Linux Mint 20.x)がある
  • Ubuntuアプリケーションリポジトリ(公式アプリケーション保存庫)をそのまま使える派生ディストリビューション(Linux Mint)がある

MCU開発者の方は、EclipseベースIDE(EclipseベースIDE≒Ubuntu)なら、どれもほぼ同じユーザインタフェースで、同じプラグインが使えるのと同様と言えばご理解頂けると思います。

Ubuntuが最もシェアが高いのは、派生ディストリビューションのベースだからです。また、MCUベンダのLinux版IDEなどの説明書も、トップシェアUbuntu利用を前提に提供されます。

Linux Mintは、Ubuntu派生ディストリビューションの1つで、Linux特有のコマンド操作やリポジトリもUbuntuと同じです。また、UbuntuよりもWindowsやMacの操作に近いGUIを持ち、万一の際のシステムバックアップツール(TimeShift)も標準搭載済みです。

つまり、「Windows/Macユーザが、Linux Mintインストール後、Linux本体のカスタマイズは不要で、即MCU開発アプリケーションが利用できる点」が、Linux Mintをお勧めする最大の理由です。

※MCU開発アプリケーション(例えばNXPのMCUXpresso IDE、STMのSTM32CubeIDE)は、非搭載ですので、別途インストールは必要です。

Linux MintとメジャーディストリビューションUbuntuの主な差は、GUI、少し遅れるリリース時期と考えて頂ければ良いと思います。

Linux Mintの3エディション

Windows Home/Proと同様、Linux Mintにも、3種類のエディションがあります。

GUI処理の軽い方から、Xfce/MATE/Cinnamonエディションと呼ばれます。少し古い版ですが、Linux Mint 17 ユーザズガイドによると、どのエディションを使えば良いかわからない時は、METAエディションを使ってください、とあります。

筆者は3種類とも試しましたが、処理の軽さとメニューの解りやすさ、使いやすさからMETAエディションをお勧めします。

GUIは、好みの問題がありますので、3エディションをインストールして試すと良いでしょう。クリーンインストール所要時間は、せいぜい30分程度です。インストール方法は、まとめに記載しております。

まとめ:お勧めLinux MCU開発環境Linux Mint 20 MATEエディション(64ビット)

最新Ubuntu Desktop 20.04ベースで、Windows MCU開発環境トラブル発生時、代替に使えるLinuxディストリビューションとして、Linux Mint 20 METAエディション(64ビット)をお勧めする理由を示しました。

多発するWindows起因のトラブル発生時、Windows MCU開発に慣れた開発者が、MCU開発を中断することなくLinux環境で継続するには、Windows操作に近いGUI、LTS版のOS安定性、Linux特有コマンドへの情報量多さなどが必要で、これらを満たすのがLinux Mintです。

Linux Mint 20 METAエディション(64ビット)のPCインストール方法は、ユーザズガイドにも記載されていますが、コチラなどを参考にすると素早くインストールができます。

Linux Mint 20と旧版Mintシェアは、Mint公式ブログのMonthly News – July 2020によると、投稿時点では、32ビットPCにも対応した前版Mint 19.xのほうが高いのですが、いずれ逆転すると思います。全ての32ビットOS新規開発は、完了しました。

Mint 20標準搭載のLibreOfficeは、安定性重視のStill版v6.4.5です。カスタマイズ不要と書きましたが、Fresh版v7.0.0へ変更したい方は、コチラに方法が記載されています。



MCU:マイコン,Linux,Kinetisマイコン,Windows,PC:パソコン,Cortex-M0+コアテンプレート,ARMマイコン,Kinetis E,Kinetis Design Studio,IoTマイコン,FRDM-KL25Z,MCUXpresso IDE,Linux Mint,MCUXpresso SDK,FRDM-KE02Z40M,OpenSDA

Kinetis E(Cortex-M0+/40MHz、5V Robust)テンプレートv2開発障害となっている評価ボード:FRDM-KE02Z40MのOpenSDAとMCUXpresso IDEデバッガ間の接続問題は、残念ながら未解決です。今回は、このOpenSDA問題を簡単に整理します。また、Linuxによる第2のMCU開発環境構築の新設カテゴリも示します。

Kinetis OpenSDA

OpenSDA Block Diagram(出典:OpenSDA Users Guideに加筆)
OpenSDA Block Diagram(出典:OpenSDA Users Guideに加筆)

Figure 1は、MCUXpresso IDEとKineties MCU間のブロック図です。旧Freescaleは、Kinetis Design Studio:KDSというFreescale製IDEとKinetis MCU評価マイコンボード間の接続は、OpenSDAというインタフェースで接続していました。

このOpenSDAは、KDS直接接続だけでなく、PC(Windows 7)との接続時、File System(USBメモリ)として動作し、クラウド開発環境:mbed開発にも利用できる2種類のプログラミング機能を持ちます。

現在問題発生中のFRDM-KE02Z40MのOpenSDAも、Windows 7当時は問題なく動作していました。その結果、Kinetis Eテンプレートv1発売ができました。

MCUXpresso IDE接続問題(Windows 10)

Freescaleを買収したNXPは、自社LPCと新旧Freescale Kinetis両マイコンに新しい統合開発環境:MCUXpresso IDEを用意しました。このMCUXpresso IDEの評価ボード接続インタフェース一覧(一部抜粋)が下図です。

MCUXpresso SDK support platform(出典:Getting Started with MCUXpresso)
MCUXpresso SDK support platform(出典:Getting Started with MCUXpresso)

簡単に説明すると、MCUXpresso IDEは、NXP純正評価ボードEVKやLPCXpresso54xxx接続インタフェース:CMSIS-DAPと、新旧FRDM評価ボード接続インタフェース:OpenSDA v1系/v2系とmbedの3種類全てをサポートします。

接続問題が発生するのは、OpenSDAの一部です(表内にFRDM-KE02Z40Mが無いのは不安ですが、記載漏れだと思います)。FRDM-KL25Z(Cortex-M0+/48MHz、General Purpose)のOpenSDAは、MCUXpresso IDEと問題なく接続できています。

接続問題解決には、Figure 1のMSB Bootloaderを、MCUXpresso IDE対応済みの最新版へUpdateすることが必要です。

MSB Bootloader更新注意点(Windows 10)

MSB Bootloader更新方法は、評価ボードのリセットボタンを押しながらPC(Windows 10)とUSB接続し、エクスプローラーに現れるBootloaderフォルダへ、最新版:BOOTUPDATEAPP_Pemicro_v118.SDAをドラッグ&ドロップするだけです(FRDM-KE02Z40Mの最新Bootloaderは、コチラから取得できます)。

この操作後、再度評価ボードとPCを接続すると、今度はエクスプローラーに通常モードのFRDM-KE02Z40Mフォルダが現れ、更新完了となるハズです。ところが、筆者の評価ボードは、Bootloaderモードから通常モードへ復帰しません。

従って、MCUXpresso IDEとFRDM-KE02Z40MをUSB接続しても、IDEは評価ボード無しに認識します。

簡単に説明しましたが、実際はWindows 10でのBootloader 更新時、「Windows 7では不要であったストレージサービスの一時停止が必須」です(詳細は、コチラのNXP情報のStep 2を参照してください)。

調べると、Windows 8以降に一般的なユーザには知らせずに追加したWindows PCのUSBメモリへの隠しフォルダ書込み機能(これが上記一時停止するストレージサービス)が、諸悪の根源のようです。

FRDM評価ボードOpenSDA接続問題整理と対策(Windows 10)

以上を整理し、対策をまとめます。

・旧Freescale製FRDM評価ボードが、新しいNXP MCUXpresso IDEと接続できない原因は、評価ボードOpenSDAのMSB Bootloaderにあり、対策は、MCUXpresso IDE対応版Bootloaderへの更新を、Windows 10ストレージサービスを停止させた状態で行うことが必要。

旧Freescale製(つまりWindow 7対応)のまま入手したFRDM評価ボードは、FRDM-KE02Z40M以外でもIDE接続問題が発生することがありますので、上記まとめを参考に対策してください。

このまとめと対策にたどり着く前に、Windows 10でストレージサービスを停止せずにFRDM-KE02Z40MのOpenSDA MSB Bootloader更新を何度か繰返しました。評価ボードが、Bootloaderモードから通常モードへ復帰しない理由は、これかもしれません😥。

筆者は、Windows 7時代からFRDM評価ボードを活用してきました。まさか、Bootloaderモード時にWindows 10ではサービス一時停止が必須だとは思いもしませんでした。しかも、このサービスは隠しフォルダ対応なので、通常ではWindows 7と同様にBootloader更新が正常終了したように見えます。

事前に調査しなかった筆者が悪いのですが、旧Freescale評価ボード記載Windows 7対応マニュアル通りに対処すれば、筆者と同じトラブルに出会う人は多いハズです。

また、OpenSDAユーザズガイドにも上記トラブルからの復帰方法の記載はありません。ネット検索か、NXP communityが解決手段でしょう😥。解決方法が見つかれば、本ブログでお知らせします。

エンドユーザを無視したかのようなWindows 10の度重なる変更に起因するトラブルは、今後も増える可能性があると思います。次章は、その対策です。

Windows MCU開発者向けLinuxカテゴリ新設

筆者は、昨年からLinux MintでのMCUXpresso IDE開発環境もWindows 10のバックアップ用に構築しています。このLinux環境でも、残念ながら今回のトラブル回復はできていません。

今回はLinux/Windows両方NGでしたが、Windows以外の第2のMCU開発環境があると、何かと便利です。

そこで、本ブログで、Windows MCU開発に慣れた開発者が、簡単にLinuxを使うための情報も発信したいと思います。このための新設カテゴリが、PC:パソコン>Linuxです。
※親カテゴリPC:パソコンへ、LibreOfficeとWindowsも移設しました。

Windows 10、Linuxともに単なるPC OSです。Linux上でMCU開発アプリケーション、本ブログではNXP MCUXpresso IDEやSTM STM32CubeIDEを利用するために、最低限必要な情報に絞って説明する予定です。

Linux情報量もまたWindows同様多いのですが、Windowsに慣れたMCU開発者としては、当面不要な情報も多く、Windowsの代わりにLinuxを短期間で効率的に活用するMCU開発環境構築が目標・目的です。今回のようなWindows PCでのトラブル発生時、Linux PCへ移ってMCU開発を停止することなく継続するのが狙いです。

MCU Devopments Windows and Linux 2 Routes
MCU Devopments Windows and Linux 2 Routes

Linuxのシステム動作要件は下記で、Windows 10よりも低いので、古いPCでも快適に動作します。ただし新しいOS利用なら「64ビットCPUは必須」ですが…😅。32ビットPC OSの新規開発は、終了しました。

  • 1GB RAM (2GB recommended for a comfortable usage)
  • 15GB of disk space (20GB recommended)
  • 1024×768 resolution

COVID-19の影響で、市場に中古PCが安価で数多く出回っていますので、これら活用も一案かと思います。