v4.0.1¶
v4.0.1 je temeljita modernizacija koja prebacuje OpenMV IDE s njegovih dugovječnih temelja na Qt Creatoru 4.0.2 na Qt Creator 10.0.1. Cijeli skup OpenMV dodataka (preglednik međuspremnika slike, serijski/protokolni sloj, terminal, histogram, uređivači praga i ključnih točaka, video alati te omotači za upisivanje ugrađenog programa) ponovno se primjenjuje na novoj osnovi, uz uglađen par tema Flat Light/Flat Dark, isticanje Python sintakse svjesno OpenMV-a, ujedinjeni dijalog za učitavanje ugrađenog programa te široku podršku za otkrivanje uređaja na ARM64 Linuxu i macOS-u. Promjena osnove na Qt Creator velika je interna modernizacija, ali ne razbija korisničke projekte; nekoliko zadanih ponašanja i definicija pločica jest se promijenilo (vidi Promjene koje razbijaju kompatibilnost).
Najvažnije¶
Prebacivanje na Qt Creator 10.0.1. IDE se seli s Qt Creatora 4.0.2 na 10.0.1: uzvodni Qt Creator sveden je na osnovne dijelove za izgradnju (98b95fd3b), a cijeli OpenMV dodatak ponovno je dodan na novoj osnovi (0e8047372).
Teme Flat Light i Flat Dark. Uglađen par svijetle/tamne teme isporučuje se s usklađenim prilagođenim stilovima isticanja sintakse uređivača; birač teme ponovno je dostupan u Općim postavkama, ograničen samo na te dvije, a zadana tema sada je
flat-dark(21348924b, 13c3849e8).Serijski terminal s neobrađenim REPL-om (raw-REPL). Terminal sada pokreće, prekida, ponovno učitava i lijepi skripte putem ispravnog stroja stanja za MicroPython neobrađeni REPL (CTRL-A/CTRL-D), pouzdano obrađujući veće skripte (a7241079c).
Uređivanje Python koda svjesno OpenMV-a. OpenMV moduli, klase, funkcije, metode i argumenti dobivaju isticanje sintakse na temelju priložene dokumentacije, uz pametnije automatsko dovršavanje i alat za automatsko uvlačenje svjestan zagrada i dvotočki (801eab8a8, 8e9f967e7, 9fdff9c6d).
Ujedinjeni dijalog za učitavanje ugrađenog programa. Upisivanje sada prikazuje jedan kontekstualni dijalog (Brisanje diska / Upisivanje ugrađenog programa / Upisivanje pokretača) s trakom napretka i sklopivim zapisnikom Prikaži/Sakrij pojedinosti koji pamti svoje stanje (5b51356f8).
Podrška za OpenMV Cam RT1062. Dodani su ugrađeni program, DFU/flash učitavači, SDP/blhost nabrajanje te korak programiranja s upisivanjem eFuse-a za novu pločicu klase i.MX RT1060 (a6595f5f7), kojoj je zatim dodijeljena zasebna inačica pločice sa Secure Bootloaderom (SBL) (d2b11c6c8).
Nove značajke¶
Zastavice za automatizaciju. Zastavice
-auto_update(release/development/ putanja),-auto_erasei-auto_runomogućuju IDE-u da pri povezivanju učita/izbriše ugrađeni program te zatim pokrene otvorenu skriptu; nakon ponovnog povezivanja pokretača IDE čeka do 10 s da se kamera ponovno nabroji prije nego nastavi (b54affe79, f4e03d978).Zastavica ``-disable_stop`` i prekidač izbornika
stop on connect/disconnectomogućuju korisnicima da onemoguće zaustavljanje skripte pri povezivanju ili prekidanju veze (02724ca7d).Prekidač Stop Script on Connect/Disconnect (uključen prema zadanome) odvaja povezivanje/prekidanje veze od zaustavljanja skripte koja se izvodi; Auto Reconnect sada je prema zadanome isključen (a0e78057f).
Upit za vrstu pločice. Kada povezana pločica prijavi arhitekturu koja nije u mapiranju ugrađenog programa, IDE sada traži od korisnika da odabere vrstu pločice (pamteći zadnji izbor) umjesto da prekine s pogreškom „Unsupported board architecture!” (b7165eb3d).
Isticanje OpenMV Python sintakse boja poznate OpenMV module, klase, podatke, funkcije, metode i argumente koristeći popise ključnih riječi popunjene iz priložene dokumentacije (801eab8a8, b4d481bf5).
~300 KSyntaxHighlighting definicija jezika isporučuje se s uređivačem, pa se izvorne datoteke u brojnim jezicima ističu od prve (39674a4dc).
Priložene OpenMV primjer-skripte (Hello World, snimka, snimanje videa, optički tok, kamere za događaje, globalni zatvarač, FLIR Lepton i druge) sada su uvrštene u IDE i isporučuju se s njime (938ac6bbe).
Binarni/heksadekadski uređivač je omogućen kako bi korisnici mogli otvarati i pregledavati binarne datoteke, s alatnom trakom skraćenom da odgovara OpenMV sučelju (675bda966).
Usporedba dokumenata u memoriji. Nove datoteke i primjeri samo za čitanje sada dobivaju pomoćnu privremenu datoteku kako bi se nespremljeni dokumenti mogli uspoređivati, a dijalog za usporedbu vanjskih datoteka pamti zadnju korištenu mapu (5281e5f6c, 2934d5216).
Dodatak za uređivanje s karticama ponovno je dodan, dajući IDE-u traku dokumenata s karticama; izvorni kod dodatka za minimapu ponovno je dodan, ali je u izgradnji za ovo izdanje ostavljen onemogućen (0e8047372).
Rezervno upisivanje putem DfuSe i pydfu vraćeno je za DFU uređaje koji se ne mogu ciljati po serijskom broju, uz automatsko brisanje bez dijaloga tijekom povezivanja (e42a5be7d).
Upisivanje i.MX RT eFuse-a. Programiranje ugrađenog programa sada upisuje eFuse (
efuse-program-once) za pločice klase RT1060 (8053bb578, a6595f5f7).Stranica čarobnjaka Linux Root Installs omogućuje korisniku da pristane ili odustane od povišenog apt instaliranja biblioteka i instaliranja udev pravila, umjesto da se uvijek izvode (6bac80984).
Ostale promjene i poboljšanja¶
Pozadinsko skeniranje serijskih priključaka. Nabrajanje priključaka premješteno je s niti sučelja u namjenskog radnika
ScanSerialPortsThreadkako bi IDE ostao odzivan tijekom skeniranja (7be4dab26).Šire otkrivanje uređaja. Skeniranje priključaka preuređeno je u pomoćnu funkciju
filterPorts()koja se može ponovno upotrijebiti i koja obuhvaća picotool i i.MX DFU uređaje te ponovno klasificira poznate serijske priključke Arduino pokretača (stari NRF/RPI i PID-ovi učitavača) kao DFU uređaje (25a5d30fd).Više rezervnih terminala. Pri pokretanju priloženih alata za reprodukciju videa (Play Video File / Play RTSP Stream) na Linuxu, IDE sada uz
xtermignome-terminalpokušava i slxterminal,konsoleixfce4-terminal(df54007e0).Prijavljivanje ključeva pločice. Registracija kamere sada raščlanjuje odgovor „Remaining N” kako bi korisniku rekla koliko je ključeva pločice preostalo te dodaje zasebnu poruku o pogrešci „Invalid Board Key for Board Type” (5759e73eb).
Preuzimanja s GitHuba. Provjere verzije i preuzimanja resursa sada koriste
raw.githubusercontent.com/openmv/openmv-ide-versioni izdanjaopenmv/openmv-ideumjestoupload.openmv.io(994109c28).HTTPS posvuda. Svi OpenMV web zahtjevi (provjere verzije, registracija SWD ID-a, preuzimanja resursa i ugrađenog programa) sada koriste
https://(54347cad0).Automatizacija postavljanja na Linuxu. Instalacijski program otkriva nedostajuće biblioteke i udev pravila te, ako je potrebno, generira izvršnu datoteku
setup.shs točnim apt-get/pip i udev-pravilo naredbama za instalaciju (te datotekuREADMEkoja korisniku govori da je pokrene) (c6dc705e6).Tolerancija na spore pločice. Serijski terminal povisuje vrijeme čekanja po čitanju s 1 ms na 10 ms i šalje potvrdu „OK” kada skripta završi (c935e4489).
Glađi napredak upisivanja. Trake napretka za učitavanje ugrađenog programa sada se odmah prebacuju s neodređenog na 0-100 % umjesto nakon prvog postotnog koraka, kroz dfu-util, bossac, picotool i i.MX upisivanje (19d947308, 86d021f92).
Oporavak starog pokretača ponovno je dodan putem ne-brzog načina pokretača koji šalje naredbe za brisanje/upisivanje bez sinkronizacijskog popunjavanja upita brzog načina (c20112c07).
Čišće konzole alata. Terminali za upisivanje ugrađenog programa (bossac, dfu-util, picotool, imx, video alati) sada se izvode kao samostalni konzolni procesi s bolje oblikovanim ispisom naredbi (8053bb578).
Uglađivanje automatskog dovršavanja. Dovršavanje razlikuje klase, metode i funkcije zasebnim natuknicama za argumente, koristi ispravne ikone modela koda i poštuje javni/zaštićeni/privatni doseg prema prefiksu podvlake; procesor dovršavanja ključnih riječi također preskače vodeću prazninu prije pokazivača pri eksplicitno (ručno) pozvanom dovršavanju (8e9f967e7, 68b26b5fc).
Objedinjeni dijalozi. OpenMV-ovi prigodni dijalozi „Don’t show this again” – uključujući početni informativni dijalog
OpenMV Cam LED Colorste upite za nadogradnju ugrađenog programa i primjere – objedinjeni su u dijalogeCheckableMessageBox„Do Not Ask/Show Again”, u Opće postavke dodan je gumb „Reset Do Not Ask/Show Again Dialogs”, a oznake za savijanje koda prema zadanome su onemogućene (9fdff9c6d).Brendiranje svjesno teme. Dodani su pozdravni zasloni za tamni način, tamni/svijetli ST i NXP logotipi čipova u okviru O programu, boje opisa alata za tamni način te ispravne boje ikona za automatsko dovršavanje (d85fdeb19, 9895a8395, f45ceaaea, 7f3e1f383).
Čišćenje preglednika slika. Radnje dijeljenja, pozadine, obrisa i „postavi kao zadano” su skrivene, dodana je radnja prilagodbe zaslonu, a ispravljeno je određivanje veličine animiranih slika (b37c55e25).
Čišćenje kontekstnog izbornika. Stavke „Show in File System View”, „Open Terminal”, „File Properties” i „Add/Delete UTF-8 BOM on Save” su skrivene (5d862c78e).
Tamni serijski terminal. Samostalni terminal koristi ispravnu tamnu temu sa stiliziranim klizačima, ažuriranim ikonama alatne trake i ispravnim ponovnim učitavanjem ikone klizača za visok DPI preko zaslona (5c3af6880).
Čišćenje pronalaženja/pretrage. Ploča rezultata dobiva tamnu temu, birač tražilice je skriven, oznake su pojednostavljene, a Find-in-Files prema zadanome cilja mapu Documents/OpenMV (20a806550).
Identitet aplikacije. IDE sada prikazuje ispravnu OpenMV ikonu na radnoj površini, naslovnoj traci i programskoj traci (s rukovanjem visokim DPI-jem na Windowsu), a ID IDE-a promijenjen je u
openmvide(8ad1eed1f).Pozdravni zaslon za visok DPI prikazuje pozdravnu sliku u dvostrukoj veličini na Retina/200 %-skaliranim zaslonima (626ff673e).
Popravak akcijske trake. Lijeva akcijska traka (New File, Open, Save, Undo, Redo, Cut, Copy, Paste) je popravljena i dobila je prilagođene OpenMV ikone (b8479b5d0).
Logotipi u dijalogu O programu. Sada se prikazuju i Arduino i Edge Impulse partnerski logotipi (Edge Impulse je prije bio skriven) s inačicama u dvostrukoj veličini za visok DPI, a priložena pozdravna grafika je ažurirana (
splash-small-2/splash-large-2) (5facd8d9a).Select Word Under Cursor je omogućen; naredbe Go to Block Start/End (Ctrl+[ / Ctrl+]) i Select Block Up/Down nakratko su ponovno omogućene (36ed5b1a8), ali su u izdanju ostavljene onemogućene (626ff673e).
Linux unos na radnoj površini dobiva kategoriju Electronics, opisni komentar i ključne riječi za pretragu (embedded electronics, microcontroller, micropython, computer/machine vision) (470e5702e).
Migracija resursa. Korisnički resursi premješteni su na lokaciju s oznakom verzije (stara mapa qtcreator uklanja se pri pokretanju), a bezopasna DirectWrite upozorenja o tipu fonta na Windowsu se potiskuju (a04af5351, 70765dc2a).
Skrivene interne opcije. Interne Core opcije
-colori-themeskrivene su iz ispisa pomoći, a prezentacijski način ponovno je omogućen (434c7b4cc).Ponovno primijenjene osnovne prilagodbe na otmjenu akcijsku traku/widget kartica, upravitelj poruka/izlazni prozor, proxy radnje, isticač sintakse i tekstni uređivač (0e8047372).
QCustomPlot 2.1.1. Priložena biblioteka za crtanje grafova ažurirana je radi kompatibilnosti s Qt 6.4 i ispravnog rukovanja dinamičkom promjenom DPI-ja zaslona (8801415fe).
Kozmetičko čišćenje sučelja ikona strelica klizača, statusne trake, gumba za zatvaranje na traci kartica dokumenata i širine klizača uređivača; pokazatelj uređivača „Display File Line Ending” sada je prema zadanome isključen (e0c4d2325, 6a26f4430, e130988fb).
Ispravci pogrešaka¶
Ispravljeno otkrivanje VID/PID-a na Linuxu čitanjem
/sys/class/tty/<port>/device/ueventza stvarni VID/PID uređaja, zaobilazeći to štoQSerialPortInfovraća identifikatore USB čvorišta, pa se kamere iza čvorišta ispravno otkrivaju (28220b351).Ispravljeno upisivanje ugrađenog programa pokretača na Macu ublažavanjem tvrdnji o veličini krajnje točke i dodavanjem sinkronizacijskog paketa upita samo kada je upisivanje točno veličine jedne USB krajnje točke (86d021f92).
Ispravljeni alati za reprodukciju videa na Linuxu: Play Video File / Play RTSP Stream sada su skriveni na 32-bitnom i ARM Linuxu (nema priloženog ffplay-a), uz rezervu na gnome-terminal kada xterm nije dostupan, a macOS ffmpeg binarna datoteka vraćena je iz rezerviranog mjesta (d342649cc, d896f4225).
Povećana početna/završna kašnjenja resetiranja pokretača s 0 na 5 kako bi se izbjeglo preklapanje naredbi za brisanje i upisivanje tijekom ažuriranja ugrađenog programa (fabc168b6).
Pojednostavljen oporavak pokretača: prisilno pokretanje pokretača radi popravka oštećene kamere preskače suvišne upite, a nakon resetiranja DFU pokretača IDE automatski ponovno pokušava ažuriranje umjesto da traži od korisnika da ponovno poveže (12b924088).
Omogućeno prekidanje serijskih naredbi za ispis međuspremnika slike/TX-međuspremnika usred transakcije (4a4afae1b).
Uklonjeno zaobilazno rješenje za odustajanje od zastoja čitanja serijskog priključka koje je moglo popunjavati odgovore nulama, čime se poboljšava pouzdanost brzog USB prijenosa (0ee1d8e91).
Ispravljeno WiFi otklanjanje pogrešaka i automatsko ponovno povezivanje: WiFi priključci osvježavaju svoju vremensku oznaku zadnjeg viđenja pri ponovnom otkrivanju, ispravljeno je nekoliko grešaka s iteratorom nakon brisanja u povlačenju WiFi priključaka i otkrivanju DFU/pokretača, a automatsko ponovno povezivanje sada čeka da IDE ne bude zauzet prije ponovnog povezivanja (cf0b67dc6).
Ispravljen pretvarač videa u MJPEG kako bi raščlanio brzinu sličica iz izlaza kodera i upisao ispravan milisekundni razmak po sličici, pa se pretvoreni videozapisi reproduciraju ispravnom brzinom (4a7ad2057).
Ispravljeno neuspješno pokretanje upisivanja ugrađenog programa i priloženih alata naredbenog retka prisiljavanjem QProcess pozadinskog sustava i ispravljanjem zaštite petlje događaja blokirajućeg procesa (200fe9f3c).
Ispravljene ikone grana za proširivanje/sažimanje stabla u uređivaču skupova podataka da se ispravno prikazuju na HiDPI zaslonima ponovnim učitavanjem stila ikona pri promjeni omjera piksela uređaja (a0e78057f).
Ažuriranja paketa/resursa sada automatski ponovno pokreću OpenMV IDE umjesto da samo izlaze nakon instalacije (178ee1b8e).
Ispravljeno isticanje rezultata pronalaženja/pretrage te su radnje za rezultate pretrage/otvaranje datoteka prilagođene da se vraćaju na prvi vidljivi uređivač kada nema trenutnog uređivača (48c402dfc).
Ispravljen dijalog za učitavanje ugrađenog programa tako da se njegov tekst upozorenja briše, a prozor ispravno mijenja veličinu kada se operacija upisivanja završi (c505c6ade).
Ispravljeno nekoliko grešaka sučelja na macOS-u: traka kartica više ne zatrpava pogreškama učitavanja ikona i ispravno se prikazuje pri otvaranju datoteke (9be8c58de, 5322cf968).
Ispravljeno stiliziranje statusne trake / izlazne ploče i poravnanje osnovne linije na macOS-u i Linuxu (4fc4545de, d29b2baa0, a440d5cd8).
Ispravljeno ispisivanje izvornog koda tako da zaglavlje s naslovom stranice ima ispravne gornje i bočne margine umjesto da dodiruje rub stranice (786d6012c).
Podrška za platforme i alate¶
Osnova Qt Creatora: 10.0.1 (prebačeno s 4.0.2).
OpenMV IDE: 4.0.0 -> 4.0.1.
OpenMV Cam RT1062 (i.MX RT1060): početni RT1062 ugrađeni program, flash učitavač, potpisane slike, unos
imx.txtteblhostkonfiguracijski ključevi za sigurni pokretač/eFuse dodani su u mapu ugrađenog programaOPENMV5(a6595f5f7); pločica je zatim objedinjena u jednu mapuOPENMV_RT1060, a dodana je zasebna inačica pločice sa Secure Bootloaderom (SBL) (OpenMV_Cam_RT1062_SBL) (d2b11c6c8, 5baf28c6e).Priloženi lanac alata za upisivanje (blhost, bossac, dfu-util, dfuse + STM32 upravljački programi, picotool, sdphost, ffmpeg, FTDI/Arduino upravljački programi) ponovno je priložen za Windows/macOS/Linux, s Linux binarnim datotekama označenima kao izvršne (fbfa4903a, bfb6b32e2, 9551c64da).
ARM64 Linux DFU: priloženi aarch64
dfu-utiluz otkrivanje arm64 pri popisivanju uređaja i preuzimanju ugrađenog programa omogućuje DFU upisivanje na domaćinima poput Raspberry Pi (16bc6fe0f, 470e5702e).Otkrivanje i.MX uređaja sada radi na Linuxu (raščlanjivanjem
lsusb) i macOS-u (skeniranjemioreg), omogućujući učitavanje i.MX RT ugrađenog programa na tim platformama (e03ccbe71, 7cf505d09).Ograničavanje prema platformi: korištenje i.MX-a ograničeno je na Windows/macOS/Linux-x86_64 uz kritičnu pogrešku drugdje, a upisivanje na Portenta/Nicla na ARM/ARM64 Linuxu prikazuje upozorenje „DFU Util may not be stable on this platform” (9513f6475).
Windows OpenGL: softversko iscrtavanje vraćeno je prilaganjem
opengl32sw,Qt6OpenGLi Qt6Gui OpenGL podrške u isporučenom paketu (aaaa1928f).Preimenovane mape/ID-ovi Arduino pločica. Mape ugrađenog programa i ID-ovi pločica u
boards.txtza Portenta, Nicla Vision i Nano 33 BLE Sense preimenovani su uARDUINO_PORTENTA_H7,ARDUINO_NICLA_VISIONiARDUINO_NANO_33_BLE_SENSE(a70d6562a); mapa/ID pločice Nano 33 BLE Sense naknadno je pretvoren u mala slova uarduino_nano_33_ble_sensekako bi odgovarao prijavljenom imenu pločice (22750d8c7, a801a81de).OPENMV_RT1060 pokretač flash učitavači (
blhost_flash_loader.bin,sdphost_flash_loader.bin) su ažurirani (5baf28c6e).QCustomPlot: 2.1.1 (priložena biblioteka za crtanje grafova) (8801415fe).
Slike ugrađenog programa na disku ponovno su priložene za sve podržane OpenMV/Arduino pločice (
OPENMV1-4P,OPENMV4_PRO,OPENMVPT,ARDUINO_NICLA_VISION,arduino_nano_33_ble_sense,ARDUINO_PORTENTA_H7,ARDUINO_NANO_RP2040_CONNECT,OPENMV_RT1060,CYW4343, uzWINC1500WiFi ugrađeni program), sa slikama ugrađenog programa te, gdje je primjenjivo, slikama pokretača/uvc (fbfa4903a).
Promjene koje razbijaju kompatibilnost¶
Ovo su promjene tijeka rada i ponašanja vidljive korisniku; samo prebacivanje na Qt Creator 10.0.1 ne razbija korisničke projekte ni skripte.
Promijenjene definicije i.MX RT1060 pločica. Unosi
EVKBMIMXRT1060iOPENMV5zamijenjeni su jednom pločicomOPENMV_RT1060(OpenMV Cam RT1062, uz SBL inačicu), a stare mape ugrađenog programa su uklonjene (d2b11c6c8).Zadani istek vremena za odgovor na naredbu iznosi 10000 ms (bio je 5000 ms u 4.0.0); tekst pomoći za
-override_read_timeoutažuriran je u skladu s time (4a4afae1b).Promijenjeno ponašanje povezivanja/prekidanja veze. Auto Reconnect sada je prema zadanome ISKLJUČEN, a povezivanje ili prekidanje veze više prema zadanome ne zaustavlja skriptu koja se izvodi, osim ako je omogućen novi prekidač „Stop Script on Connect/Disconnect” (koji je prema zadanome uključen) (a0e78057f).
Tijek ažuriranja ponovno pokreće IDE. Ažuriranja paketa/resursa sada automatski ponovno pokreću OpenMV IDE umjesto da izlaze nakon instalacije (178ee1b8e).
Preimenovani ID-ovi Arduino pločica. ID-ovi pločica u
boards.txti mape ugrađenog programa za Portenta, Nicla Vision i Nano 33 BLE Sense preimenovani su uARDUINO_PORTENTA_H7,ARDUINO_NICLA_VISIONiARDUINO_NANO_33_BLE_SENSE(potonji je kasnije pretvoren u mala slova uarduino_nano_33_ble_sense) (a70d6562a, 22750d8c7, a801a81de).