v2.8.1

v2.8.1 為 OpenMV IDE 帶來完整的 Arduino 開發板支援,新增了 Arduino Nano RP2040 Connect 與 Nano 33 BLE 開發板的韌體載入功能,並加入了分頁式編輯器與程式碼縮圖。本版本仍維持 Qt Creator 4.0.2 基礎版本,並隨附新的 4.1.0 OpenMV 韌體。本版本含有破壞性變更:自動縮排現在預設為關閉,且 OPENMV2/3/4/4P、OPENMVPT 與 PORTENTA 開發板的合併 openmv.bin / openmv.dfu 韌體映像已被移除,這對於任何依賴這些預設值或檔名的使用者而言屬於工作流程與行為上的變更。

重點摘要

  • 為 Nano RP2040 Connect 與 Nano 33 BLE 提供 Arduino 開發板韌體載入,透過新隨附的 bossac(SAM-BA)與 picotool/elf2uf2/rp2040load 工具鏈進行燒錄。

  • 分頁式編輯器,使開啟的檔案以可切換的分頁形式顯示於編輯器頂端,並提供切換與重新排序分頁的快捷鍵。

  • 程式碼縮圖 捲軸會呈現文件的縮小概覽,並提供 Text Editor 設定頁面以切換顯示與設定其寬度。

  • 新的 Arduino 與 Portenta 範例,包含完整的 Nano RP2040 Connect 範例集以及十個 Portenta-H7 WiFi 指令碼。

  • 隨附韌體更新至 4.1.0,涵蓋所有 OpenMV 相機以及 Arduino Nano 33 / Nano RP2040 映像。

  • 安裝程式現在會安裝 Arduino Nano RP2040 Connect 與 Portenta H7 的 Windows USB 驅動程式

新功能

  • Arduino 開發板支援: 新增了 Arduino Nano RP2040 Connect 與 Nano 33 BLE 開發板的完整韌體載入支援,透過新的 bossac.txt/boards.txt 描述檔(外加既有的 picotool.txt)所驅動的隨附 bossac(SAM-BA)與 picotool/elf2uf2/rp2040load 工具鏈進行燒錄(deccee67634e0c0ee1ef5334782eb9c00a33)。

  • 分頁式編輯器: 新增了編輯器分頁列外掛,使開啟的檔案以可切換的分頁形式顯示於編輯器頂端,並提供上一個/下一個分頁的快捷鍵(Ctrl+Page Down / Ctrl+Page Up)(325cd8d875501a4082)。

  • 程式碼縮圖: 新增了程式碼縮圖捲軸外掛,並附帶 Text Editor 設定頁面(啟用切換、寬度、行數閾值與捲軸滑桿透明度),會在捲軸中呈現文件的縮小概覽(325cd8d87)。

  • Portenta-H7 WiFi 範例: 新增了十個 WiFi 範例指令碼(連線、掃描、靜態 IP、DNS、NTP、HTTP 用戶端、HTTP-SSL 用戶端、MJPEG 串流器、MQTT 發佈/訂閱)(b2133f9f5)。

其他變更與改善

  • 分頁重新排序: 新增了將目前分頁向左或向右移動的快捷鍵(Ctrl+Shift+Page Down / Ctrl+Shift+Page Up),並停用了編輯器衝突的預設 Ctrl+PgUp/Ctrl+PgDown/Ctrl+Up/ Ctrl+Down 繫結,使分頁列快捷鍵得以運作(5501a4082)。

  • Nano RP2040 Connect 範例: 隨附了一套完整的 Python 範例草稿碼,涵蓋基礎、IMU 感測器、BLE、WiFi、音訊 FFT 與熱像相機(91847b183)。

  • Arduino 連線提示: 新增了兩個連線流程對話框:當偵測到舊版 Arduino RP2040 USB PID 時,提供指示使用者將 REC 短接至 GND 並重設開發板的復原提示;以及當要求清除快閃檔案系統時,告知 Nano 33 BLE 沒有內建資料快閃磁碟的資訊通知(91847b183)。

  • 額外的 Arduino 與 Portenta 範例: 新增了 Arduino Nano 33 BLE Sense(閃爍)、Portenta H7 BLE 溫度的新 Python 範例,改善了 Portenta H7 PWM 控制,更新了 Portenta H7 乙太網路點對點指令碼,以及更新了 ulab 濾波器範例(45a4564f4),外加一個 Portenta H7 乙太網路纜線測試範例(af1b2fcff)。

  • OpenMV WiFi-Shield 範例:14-WiFi-Shield 之下新增了一個新的 http_post.py HTTP POST 範例(c73d9fdcf)。

  • WiFi 讀取逾時: 拆分了讀取逾時,使 WiFi 連線獲得較長的停滯逾時(3000ms,相對於序列的 1000ms),並在 WiFi 停滯後重新傳送待處理命令而非直接失敗(81f00ac58)。

  • 簡化的編輯器框架: 隱藏了編輯器工具列的分割與關閉分割按鈕,並在 Linux 上強制啟用高 DPI 自動縮放,以保持編輯器版面一致(bc14a2290)。

  • 離線文件: 重新整理了隨附的離線文件,新增了各感測器的相機接腳圖(H7 OV7725、H7 Plus OV5640、M4/M7 變體),並更新了 IDE 概覽與教學頁面(97ff73ebd)。

錯誤修正

  • 修正了韌體燒錄期間使用的 RP2040(PICO)快閃清除位移,使正確的快閃區域得以被清除(91847b183)。

  • 將隨附的 Linux/macOS bossacpicotool 二進位檔設為可執行,使韌體載入在這些平台上得以運作,並對縮圖算繪器加上防護,使其僅在 Qt >= 5.6 上執行(76613152f)。

  • 修正了韌體升級提示,使其遵循對話框按鈕(檢查 QDialog::Accepted),並使序列/TCP 傳輸的停滯處理在有新資料到達時重新啟動計時器,使長時間傳輸不再虛假逾時(dd4ce12a5)。

平台與工具支援

  • Qt Creator 基礎版本: 4.0.2。

  • 隨附韌體: 將隨附的 OpenMV 韌體更新至 4.1.0 版(firmware.txt:4.0.2 -> 4.1.0)(b78603045);在週期較早階段,同一檔案曾逐步經過中間的 4.0.1 與 4.0.2 組建(beec4d25beb9c00a33)。

  • 新的快閃工具鏈: 為所有平台(windows/osx/linux32/linux64/arm/aarch64)隨附了 bossac 以及 picotool/elf2uf2/rp2040load 工具鏈。

  • Windows USB 驅動程式: 新增了 Arduino Nano RP2040 Connect 與 Portenta H7 開發板的已簽署驅動程式安裝,透過安裝程式執行(bc14a2290a8ae96e1b)。

  • 新辨識的感測器: 在隨附的 share/qtcreator/firmware/sensors.txt 感測器表中,新增了 PAJ6100 影像感測器(914546e78)以及 GC21450x21)與 MT9M114 相機感測器(9a8b1c762);MT9M114 的 ID 最初為 0x81,後來更正為 0x2481eb9c00a33)。

破壞性變更

本版本中使用者可見的工作流程與行為破壞性變更。

  • 自動縮排現在預設為關閉。 編輯器的自動縮排預設值已翻轉為關閉(並在載入時強制關閉),且 Tab 鍵不再進行縮排;Auto indentTab key performs auto-indent 控制項已從 Text Editor > Behavior 設定頁面移除,因此除非在韌體/原始碼中變更,否則輸入時不再自動縮排新行(bc14a2290)。

  • OPENMV2/3/4/4P、OPENMVPT 與 PORTENTA 開發板的合併 openmv.bin / openmv.dfu 韌體映像已被移除(OPENMVPT 僅有 openmv.bin,因其從未隨附 openmv.dfu);僅保留各別的 bootloader/firmware/uvc 映像(84cd4cd2d)。

  • vsync_gpio_output 範例(位於 OpenMVArduino/Portenta-H702-Board-Control 範例集中)現在需要韌體新的 set_vsync_callback API,而非 set_vsync_output,且回呼函式現在切換的是 LED_BLUE 而非 IR LED(f13453bdc)。