v1.9.0

v1.9.0 は国際化リリースです。十数言語にわたって完全に翻訳されたユーザーインターフェースを追加し、加えて各ボードの実際のフラッシュ消去セクタレイアウトを読み取ってより安全にファームウェアを書き込む新しいブートローダー問い合わせプロトコルを追加します。IDE は引き続き Qt Creator 4.0.2 上に構築されており、付属の OpenMV ファームウェアは 2.9.0 に更新されています。既存のプロジェクトに対する破壊的変更はありません。

ハイライト

  • 多言語 UI が利用可能になり、中国語(簡体字および繁体字)、日本語、フランス語、イタリア語、スペイン語、ロシア語、ドイツ語、アラビア語、チェコ語、ハンガリー語、ポーランド語、スロベニア語、ウクライナ語の翻訳を追加します。

  • ブートローダーのフラッシュセクタ問い合わせ により、IDE はハードコードされたデフォルトのみに頼るのではなく、接続されたカメラの実際の消去セクタレイアウトをブートローダー経由で読み取れるようになります。

  • ボードごとの消去範囲boards.txt から読み取られるようになり、ファームウェアの再書き込み時に各カメラモデルが正しいフラッシュセクタを消去するようになりました。

  • ファームウェアが古い旨のプロンプト が、接続時に古いファームウェアバージョンを検出すると、カメラを自動でアップグレードするよう提案します。

  • 新しい付属サンプル に、描画プリミティブ、画像フィルタ、タイムラプス写真スクリプト、CMSIS CNN 物体分類のデモ、モーターシールドのサンプルが追加されます。

  • 付属ファームウェア 2.9.0 が M7 (OPENMV3) と H7 (OPENMV4) のファームウェアと DFU イメージ(および H7 ブートローダー)を更新します。

新機能

  • 多言語 UI 翻訳 が、中国語(簡体字および繁体字)、日本語、フランス語、イタリア語、スペイン語、ロシア語、ドイツ語、アラビア語、チェコ語、ハンガリー語、ポーランド語、スロベニア語、ウクライナ語を追加し、翻訳を再生成可能にするビルドルールを備えています(8350ff9ac4ef99202b0a7c85bfcc678482dd052113877e48ff5d349dddbc498)。

  • ブートローダーのフラッシュセクタ問い合わせ は、IDE がハードコードされたデフォルトのみに頼るのではなく、接続されたカメラに問い合わせてその実際のフラッシュ消去セクタレイアウト(開始、全開始、最終セクタ)を読み取る新しいブートローダープロトコルを追加します(38a84883e)。

  • ボードごとの消去範囲boards.txt(各行の末尾のセクタ番号)から読み取られるようになり、単一のグローバルデフォルトを使うのではなく、各カメラモデルが正しいセクタを消去します。初期実装は、8217b94c3 がボードマッチ条件を修正し、末尾セクタの区切り文字の正規表現を + から空白に変更するまで boards.txt(こちらはすでにスペース区切りの末尾番号を使用していました)と一致しませんでした。その後 4843e46a8 が残っていた qDebug() デバッグ出力を削除しました(68a45da028217b94c34843e46a8)。

  • ファームウェアが古い旨のプロンプト: 接続時にカメラのファームウェアが古いと検出された場合、IDE はアップグレードを促し、確認するとファームウェア更新を自動で起動するようになりました(a79a40b458217b94c3)。

  • 新しい付属サンプル に、描画プリミティブ(矢印、円、十字、線、矩形、テキスト、画像、塗りつぶし)、新しい画像フィルタ(ブラー、カートゥーン、エッジ、カラーおよびグレースケールのバイラテラル、光除去、カーネル、アンシャープ、ヒストグラムおよび適応的ヒストグラム平坦化)、タイムラプス写真のサンプル、CIFAR ラベルとともに img.classify_object() を使用する CMSIS CNN 物体分類のサンプル、モーターシールドのサンプルが追加されます(909016427)。

その他の変更と改善

  • デフォルトのプロジェクトディレクトリ~/OpenMV フォルダをデフォルトとするようになり、Open/Save ダイアログがセッションをまたいで最後に訪れたディレクトリを記憶して再度開くようになりました(fbdac7576)。

  • About ボックス が、(英語の)翻訳作成者を記載する Credits セクションを表示するようになりました。ローカライズされたビルドでは翻訳者文字列が差し替えられます(e8e823a112efbe1e29)。

  • 付属のオフラインドキュメントを更新し、特に omv.image API リファレンスとその他の MicroPython ライブラリページを拡張しました(aef76b825b0f4701af)。

  • カメラのマスストレージドライブ上での不要なディスクアクティビティを避けるため、切断時に実行されていた追加のディスクフラッシュ書き込みopenmv.null 一時ファイル)を無効化しました(6be486c62)。

バグ修正

  • 消去フラッシュセクタ値(全開始、開始、最終)の順序を入れ替えていたブートローダー問い合わせを修正し、ファームウェアおよびブートローダーの書き込み中にどのフラッシュセクタが消去されるかを正しくしました(fbdac7576)。

  • 動画録画のコンバーターとプレイヤーを作り直し、Windows、macOS、Linux で生成された一時スクリプト経由で ffmpegffplay を起動するようにして、スペースを含むファイルパスでも確実に動作するようにし、コンバーターが使用する付属の Linux ffmpeg のパスを修正しました(8f17f888d83cd73144)。

  • カメラへの接続が、ファームウェアバージョンのハンドシェイクがタイムアウトした際に、タイムアウトエラーを表示する前に最大 10 回まで自動的に再試行するようになり、誤った接続失敗を減らします(ae18dca93)。

  • コマンド開始時と終了時のコマンド間遅延を調整することで、macOS でのシリアルコマンドのタイミングを修正しました。ほとんどは引き上げられ(アーキテクチャ文字列、スクリプト実行、ディスクリプタ/テンプレート保存、システムリセット、フレームバッファ有効化を 25-50 ms に)、ファームウェアバージョンの遅延は再調整されました(開始を短く、終了を長く)。これにより通信タイムアウトを防止します(763357a08)。

  • カスタムボードダイアログに入力されるボード登録キーが、すべての空白を取り除くようになり、入力されたキーに誤って含まれたスペースが無視されるようになりました(6be486c628217b94c3)。

プラットフォームとツールのサポート

  • Qt Creator ベース: 4.0.2。

  • 付属の OpenMV ファームウェア: グローバルな firmware.txt のバージョンが(2.7.0 から 2.8.0 を経て)2.9.0 になりました。2.9.0 への更新では M7 (OPENMV3) と H7 (OPENMV4) のファームウェアと DFU イメージ、および H7 ブートローダーのみが更新されました(M7 は bootloader.elf のみ更新)。M4 (OPENMV2) のイメージは 2.8.0 で最後に更新されました(bfc0b188ec0a86dd35)。

  • OpenMV IDE のバージョン が内部的に(1.8.2 から)1.9.0 に引き上げられました(8f17f888d)。

破壊的変更

なし。このリリースはワークフローや動作の破壊を導入しません。既存のプロジェクトは変更なく引き続き動作します。