v4.8.9

v4.8.9 je vydání zaměřené na efektivitu v nečinnosti a spolehlivost odpojení, postavené na Qt Creator 14.0.2. Přepracovává způsob, jakým IDE sleduje hardware, takže přestane dotazovat, když se nic neděje, zpřísňuje cestu připojení/odpojení a prořezává přibalenou kolekci modelů. V tomto rozsahu nedochází k přechodu na novou verzi Qt Creator, ale několik výchozích chování a názvů přibalených modelů se změnilo, takže si prostudujte níže uvedené nekompatibilní změny.

Hlavní novinky

  • Událostmi řízené sledování hardwaru nahrazuje nepřetržité dotazování zařízení: IDE nyní zastaví své časovače skenování v nečinnosti a sériové porty a disky znovu prohledá pouze v reakci na skutečné události připojení/odpojení USB a připojení/odpojení disku, čímž výrazně snižuje zatížení CPU a využití zdrojů v nečinnosti.

  • Časovače nečinnosti řízené aktivitou: časovač událostí snímkového bufferu (frame buffer) (dříve spouštěný každou 1 ms) nyní běží pouze při připojení a časovač blikání kurzoru terminálu (500 ms) nyní běží pouze tehdy, když je terminál zaměřen.

  • Synchronizace importu na pozadí je ve výchozím nastavení vypnuta: automatická synchronizace importních složek Examples a Documents/OpenMV je nyní zakázána a její přepínač v nabídce je skryt, takže IDE již tyto složky nepřetržitě neprohledává.

  • Rychlejší a spolehlivější odpojení: sériový port je uzavřen a kamera uvolněna okamžitě, časové limity protokolu byly sníženy a zaseknutá kamera se nyní obnoví namísto zamrznutí.

  • Přehlednější tlačítko režimu snímkového bufferu (frame buffer), které zobrazuje JPG Mode nebo RAW Mode, aby byl aktuální stav komprese na první pohled zřejmý.

Nové funkce

  • Nativní sledování hardwarových událostí prostřednictvím nového HardwareMonitor, který vysílá hardwareEventDetected pomocí IOKit a DiskArbitration na macOS, okna pouze pro zprávy WM_DEVICECHANGE ve Windows a netlink socketu NETLINK_KOBJECT_UEVENT na Linuxu. Časovače skenování sériových portů a disků jsou nyní řízeny 10s skenovacím oknem, které se při každé události restartuje (a6612fec9, 462b55f7b, 17c2e93c7).

Další změny a vylepšení

  • Časovač zpracování událostí snímkového bufferu (frame buffer) (dříve spouštěný každou 1 ms) se nyní spouští při připojení a zastavuje při odpojení a časovač blikání kurzoru terminálu (500 ms) se nyní spouští a zastavuje při získání/ztrátě zaměření terminálu namísto trvalého běhu (a02afea53).

  • Automatická synchronizace importních složek Examples a Documents/OpenMV je ve výchozím nastavení zakázána a přepínač je skryt; časovače skenování složek se již nespouští při inicializaci a běží pouze tehdy, když je (nyní skrytá) akce povolena (478f83e97).

  • Přepínací tlačítko formátu snímkového bufferu (frame buffer) nyní zobrazuje JPG Mode, když je komprese JPEG zapnuta, a RAW Mode, když je vypnuta (c48831224).

  • Při připojení IDE nyní vždy použije výchozí preferenci JPEG dané desky pro snímkový buffer (frame buffer) namísto obnovení dříve uložené volby JPG/RAW pro danou desku (c48831224).

Opravy chyb

  • Odpojení nyní uzavírá sériový port a uvolňuje kameru (a port) přímo v close(), čímž je odpojení rychlejší a spolehlivější (1e8941080, 9d31bcf80).

  • Časovač nečinnosti sériového portu se nyní zastaví a příznak v2 protokolu se vymaže při uzavření portu, čímž se opravuje zastaralé chování časovače nečinnosti po odpojení (4bd2fd9ea).

  • Časové limity příkazů protokolu byly upraveny (časový limit otevření snížen z 5 s na 2 s, opětovná synchronizace a CHANNEL_SIZE používají krátký časový limit 1 s) a každý sériový příkaz nyní při selhání uvolní objekt kamery, takže zaseknutá kamera se obnoví a odpojí rychleji namísto zamrznutí (04aa6aea3).

  • Opraven problém se zamykáním/zamrznutím při zastavování skriptu: událost zastavení skriptu nyní také vymaže stav událostí snímku a resetuje časovače připravenosti snímku (3695b0704).

  • Protokol nyní toleruje krátká čtení z kamery a vrací částečnou datovou část nebo text namísto jejího zahození nebo chyby (0c8ccd58e).

Podpora platforem a nástrojů

  • Základ Qt Creator: 14.0.2.

  • Desky kombinující modul AE3 nebo N6 se senzorem PAG7936 nebo PS5520 nyní dostávají vyšší výchozí rozlišení QVGA (dříve pouze AE3 + PAG7936), takže se příslušné příklady automaticky povýší z QQVGA na QVGA (fcc0c3227).

  • Přibalená kolekce modelů ST MoveNet pro odhad pózy byla vyčištěna: nadbytečné varianty per-tensor (_pt) a duplicitní varianty singlepose/st_movenet byly odstraněny a zbývající per-channel modely heatmap byly přejmenovány na movenet_singlepose_192, movenet_singlepose_224 a movenet_singlepose_256 (18f66c4c1).

  • Z kolekce modelů byl vyřazen přibalený model sémantické segmentace DeepLabV3 a jeho ukázkové prostředky (a929e0dc1).

Nekompatibilní změny

Pro uživatele viditelné změny chování a přibalených prostředků mezi v4.8.8 a v4.8.9.

  • Při připojení snímkový buffer (frame buffer) nyní vždy používá výchozí preferenci JPEG dané desky a ignoruje jakoukoli dříve uloženou volbu JPG/RAW pro danou desku (c48831224).

  • Synchronizace importních složek Examples a Documents/OpenMV na pozadí je ve výchozím nastavení zakázána a její přepínač je skryt (478f83e97).

  • Několik přibalených modelů bylo odstraněno nebo přejmenováno: model sémantické segmentace DeepLabV3 je pryč a modely ST MoveNet byly prořezány a přejmenovány na movenet_singlepose_192/224/256. Skripty, které odkazují na staré názvy souborů modelů, je nutné aktualizovat (a929e0dc1, 18f66c4c1).