v4.8.9

v4.8.9 är en utgåva inriktad på effektivitet i viloläge och tillförlitlig frånkoppling, byggd på Qt Creator 14.0.2. Den gör om hur IDE:n övervakar hårdvaran så att den slutar polla när inget händer, skärper anslutnings- och frånkopplingsvägen och rensar upp i den medföljande modellsamlingen. Det finns ingen ombasning av Qt Creator i detta intervall, men några standardbeteenden och namn på medföljande modeller har ändrats, så granska de brytande ändringarna nedan.

Höjdpunkter

  • Händelsestyrd hårdvaruövervakning ersätter kontinuerlig pollning av enheter: IDE:n stoppar nu sina avsökningstimrar i viloläge och söker endast av serieportar och enheter på nytt som svar på faktiska USB-händelser för anslutning/frånkoppling och montering/avmontering av diskar, vilket dramatiskt minskar CPU- och resursanvändningen i viloläge.

  • Vilolägestimrar styrda av aktivitet: bildbuffertens händelsetimer (som tidigare utlöstes varje 1 ms) körs nu endast vid anslutning, och terminalens markörblinkningstimer (500 ms) körs nu endast när terminalen är i fokus.

  • Bakgrundssynkronisering av importmappar är inaktiverad som standard: automatisk synkronisering av importmapparna Examples och Documents/OpenMV är nu inaktiverad och dess menyalternativ är dolt, så IDE:n söker inte längre kontinuerligt igenom dessa mappar.

  • Snabbare och mer tillförlitlig frånkoppling: serieporten stängs och kameran frigörs omedelbart, protokolltimeouter justerades nedåt och en låst kamera återhämtar sig nu i stället för att hänga sig.

  • Tydligare lägesknapp för bildbuffert som visar JPG Mode eller RAW Mode för att göra det aktuella komprimeringsläget uppenbart vid en snabb blick.

Nya funktioner

  • Inbyggd övervakning av hårdvaruhändelser via en ny HardwareMonitor som sänder ut hardwareEventDetected med hjälp av IOKit och DiskArbitration på macOS, ett WM_DEVICECHANGE-meddelandeendast fönster på Windows och en NETLINK_KOBJECT_UEVENT-netlinksocket på Linux. Timrarna för serieavsökning och enhetsavsökning styrs nu av ett avsökningsfönster på 10 s som startas om vid varje händelse (a6612fec9, 462b55f7b, 17c2e93c7).

Övriga ändringar och förbättringar

  • Bildbuffertens timer för händelsebearbetning (som tidigare utlöstes varje 1 ms) startas nu vid anslutning och stoppas vid frånkoppling, och terminalens markörblinkningstimer (500 ms) startar och stoppar nu när terminalen får respektive förlorar fokus i stället för att alltid köras (a02afea53).

  • Automatisk synkronisering av importmapparna Examples och Documents/OpenMV är inaktiverad som standard och växlingen är dold; mappavsökningstimrarna startar inte längre vid initiering och körs endast när den (numera dolda) åtgärden är aktiverad (478f83e97).

  • Växlingsknappen för bildbuffertformat visar nu JPG Mode när JPEG-komprimering är på och RAW Mode när den är av (c48831224).

  • Vid anslutning tillämpar IDE:n nu alltid kortets JPEG-föredragna standard för bildbufferten i stället för att återställa det tidigare sparade kortspecifika JPG/RAW-valet (c48831224).

Felrättningar

  • Frånkoppling stänger nu serieporten och frigör kameran (och porten) direkt i close(), vilket gör frånkopplingen snabbare och mer tillförlitlig (1e8941080, 9d31bcf80).

  • Seriens vilolägestimer stoppas nu och v2-protokollflaggan rensas när porten stängs, vilket åtgärdar inaktuellt beteende hos vilolägestimern efter frånkoppling (4bd2fd9ea).

  • Timeouter för protokollkommandon justerades (öppningstimeouten sänktes från 5 s till 2 s, omsynkronisering och CHANNEL_SIZE använder en kort timeout på 1 s) och varje seriekommando frigör nu kameraobjektet vid fel, så att en låst kamera återhämtar sig och kopplar från snabbare i stället för att hänga sig (04aa6aea3).

  • Rättade ett problem med låsning/hängning vid stopp av ett skript: en händelse om stoppat skript rensar nu även tillståndet för bildhändelser och återställer timrarna för bildklar (3695b0704).

  • Protokollet tolererar nu korta läsningar från kameran och returnerar den partiella nyttolasten eller texten i stället för att kasta den eller ge ett fel (0c8ccd58e).

Plattforms- och verktygsstöd

  • Qt Creator-bas: 14.0.2.

  • Kort som kombinerar en AE3- eller N6-modul med en PAG7936- eller PS5520-sensor får nu det högre QVGA-standardvärdet (tidigare endast AE3 + PAG7936), så att berörda exempel automatiskt uppgraderas från QQVGA till QVGA (fcc0c3227).

  • Den medföljande ST MoveNet-modellsamlingen för poseuppskattning rensades upp: redundanta per-tensor-varianter (_pt) och dubbla singlepose-/st_movenet-varianter togs bort, och de kvarvarande heatmap-modellerna per kanal döptes om till movenet_singlepose_192, movenet_singlepose_224 och movenet_singlepose_256 (18f66c4c1).

  • Tog bort den medföljande DeepLabV3-modellen för semantisk segmentering och dess exempeltillgångar från modellsamlingen (a929e0dc1).

Brytande ändringar

Användarsynliga ändringar av beteende och medföljande tillgångar mellan v4.8.8 och v4.8.9.

  • Vid anslutning använder bildbufferten nu alltid kortets JPEG-föredragna standard och ignorerar eventuellt tidigare sparat kortspecifikt JPG/RAW-val (c48831224).

  • Bakgrundssynkronisering av importmapparna Examples och Documents/OpenMV är inaktiverad som standard och dess växling är dold (478f83e97).

  • Flera medföljande modeller togs bort eller döptes om: DeepLabV3-modellen för semantisk segmentering är borta, och ST MoveNet-modellerna rensades och döptes om till movenet_singlepose_192/224/256. Skript som refererar till de gamla modellfilnamnen måste uppdateras (a929e0dc1, 18f66c4c1).