v4.2.0

v4.2.0 wprowadza nowy tryb OpenMV Viewer oraz okno dialogowe Debug Protocol Settings służące do dostrajania częstotliwości odpytywania między IDE a kamerą, odświeża całe dołączone oprogramowanie układowe płytek do wersji v4.5.6 oraz naprawia kilka problemów z edytorem, terminalem i oknami dialogowymi. To wydanie pozostaje na bazie Qt Creator 10.0.1, więc nie wprowadza żadnych zmian łamiących zgodność z istniejącymi projektami.

Najważniejsze zmiany

  • Tryb OpenMV Viewer można uruchomić za pomocą nowej opcji wiersza poleceń -viewer_mode, aby wyświetlać wyłącznie bufor ramki i wyjście szeregowe.

  • Okno dialogowe Debug Protocol Settings, otwierane przyciskiem FPS na pasku stanu, pozwala dostroić częstotliwości odpytywania między IDE a kamerą oraz korzystać z połączonego trybu odpytywania get_state.

  • Dołączone oprogramowanie układowe odświeżone do v4.5.6 na wszystkich płytkach, z dodaną obsługą sensora PAG7920 oraz zaktualizowanym oprogramowaniem układowym WiFi/Bluetooth CYW4343.

  • Przykłady Open-AMP dodane dla Arduino Giga i Portenta H7, demonstrujące komunikację dwurdzeniową.

  • Naprawiono utratę historii cofania/ponawiania oraz historii edycji przy podłączaniu lub odłączaniu kamery.

Nowe funkcje

  • Dodano nową opcję wiersza poleceń -viewer_mode, która uruchamia aplikację jako uproszczony OpenMV Viewer. Operacje na plikach New/Open/Save/Save As/Close/Print oraz ostatnio używane pliki, menu Edit, akcje Run/Stop, edytor zbioru danych, kilka przełączników narzędzi oraz centralny panel edytora kodu są ukryte, tak że wyświetlany jest tylko bufor ramki i wyjście szeregowe (27ba14cc5).

  • Dodano okno dialogowe Debug Protocol Settings, otwierane kliknięciem przycisku FPS na pasku stanu, które pozwala dostroić częstotliwości odpytywania między IDE a kamerą oraz korzystać z nowego połączonego trybu odpytywania get_state. Odstępy odpytywania frame-size-dump, get-script-running oraz get-tx-buffer są teraz dostrajane w ustawieniach Split Polling tego okna dialogowego, pozostawiając jedno odpowiadające im nadpisanie wiersza poleceń (-override_per_command_wait) dla oczekiwania na pojedyncze polecenie (d0ee9d22a, fabb8c4fe).

  • Dodano nową kategorię przykładów Open-AMP (examples/11-Open-AMP, w tym vuart.py) dostępną dla Arduino Giga i Portenta H7, demonstrującą komunikację dwurdzeniową (03808a403).

Pozostałe zmiany i ulepszenia

  • Lista wyboru typu płytki w bootloaderze pokazuje teraz czytelne dla człowieka nazwy płytek, jednocześnie nadal mapując je z powrotem na wewnętrzny identyfikator oprogramowania układowego (52763b52e).

  • Selektor ścieżki oprogramowania układowego w oknie dialogowym bootloadera zapamiętuje teraz i wstępnie wypełnia ostatnio użyty plik oprogramowania układowego (cc7a9806e) oraz udostępnia uzupełnianie z historii ścieżek (284784bc2).

  • Po aktualizacji oprogramowania układowego okno dialogowe wyświetlane po aktualizacji instruuje teraz, aby odłączyć kamerę, usunąć przewód zwierający SBL do 3,3 V i ponownie podłączyć kamerę (1bf5c15ad).

  • Menu Examples nie zwija już zawsze folderów z jednym elementem podrzędnym do ich folderu nadrzędnego; dzieje się to teraz tylko wtedy, gdy włączone jest filtrowanie przykładów (014849db1).

  • Preferencje wyświetlania i wpisywania w edytorze (znaczniki zwijania, automatyczne zwijanie pierwszego komentarza, wyświetlanie zakończeń linii pliku, brak wcięć przy tabulatorze, komentarze jednowierszowe) są teraz wymuszane do wartości domyślnych OpenMV i nie są już nadpisywane przez zapisane ustawienia (570b7028b).

  • Dodano zabezpieczenie wymuszonego zamknięcia, które kończy zamykanie IDE po 10 sekundach i w ostateczności przerywa zablokowany wątek szeregowy, tak aby IDE zawsze mogło zakończyć działanie (58a2dfedb).

Poprawki błędów

  • Naprawiono utratę historii cofania/ponawiania oraz historii edycji przy podłączaniu lub odłączaniu kamery poprzez wydzielenie poprawek skryptu specyficznych dla sensora do pojedynczej funkcji pomocniczej fixScriptForSensor() zamiast edytowania zawartości bufora w miejscu (50b0403f1).

  • Naprawiono konwersję plików wideo do MJPEG poprzez dopasowywanie koderów zamiast dekoderów na liście formatów wyjściowych oraz wymuszanie kontenera AVI dla wyjść .mjpeg/.mjpg (35fb91935).

  • Naprawiono panele szuflady bufora ramki pokazujące błędną początkową widoczność poprzez przywracanie stanu pionowego rozdzielacza przed stanem poziomego rozdzielacza podczas uruchamiania (f0d930f02).

  • Naprawiono nakładanie się okienek podręcznych LED-states i More-Examples na inne okna modalne poprzez odraczanie ich do momentu, gdy żaden widżet modalny nie jest aktywny (e007defeb).

  • Odfiltrowano linie KeyboardInterrupt oraz Exception: IDE interrupt z wyjścia terminala szeregowego, tak aby zatrzymanie skryptu nie wypisywało już fałszywego śladu stosu ani wyjątku (c4a2dcab8, b1c459d83).

  • Zaktualizowano wyrażenie regularne filtra śladu stosu błędów, tak aby ślady stosu MicroPython 1.23 były poprawnie parsowane, wykluczając linie KeyboardInterrupt oraz zagnieżdżone linie File z traktowania jako linia błędu (6df9ecb78).

  • Zapobieżono próbom otwierania przez IDE nieistniejącego pliku źródłowego podczas przechodzenia do lokalizacji wyjątku poprzez wcześniejsze sprawdzenie, czy plik istnieje na ścieżce urządzenia (4e8e98c2e).

Obsługa platform i narzędzi

  • Baza Qt Creator: 10.0.1.

  • Dołączone oprogramowanie układowe płytek odświeżone do v4.5.6 dla OpenMV2/3/4/4P/PT, RT1060, Giga, Portenta H7, Nicla Vision, Nano RP2040 oraz Arduino Nano 33 BLE Sense, ze zaktualizowanymi bootloaderami i oprogramowaniem układowym UVC (03808a403).

  • Dodano obsługę sensora obrazu PAG7920 (03808a403).

  • Zaktualizowano dołączone oprogramowanie układowe WiFi CYW4343 do wersji 7.45.98.102 oraz dodano oprogramowanie układowe Bluetooth CYW4343, programując je do pamięci flash dla Arduino Giga, Portenta H7 oraz Nicla Vision (które są wyposażone we wbudowany moduł WiFi/Bluetooth CYW4343) (03808a403).

Zmiany łamiące zgodność

Brak. v4.2.0 pozostaje na bazie Qt Creator 10.0.1 i nie wprowadza żadnych zmian wpływających na istniejące projekty lub przepływy pracy.