v2.8.1

A v2.8.1 traz suporte completo a placas Arduino para o OpenMV IDE, adicionando carregamento de firmware para o Arduino Nano RP2040 Connect e Nano 33 BLE juntamente com um editor com separadores e um minimapa de código. A versão mantém-se na base Qt Creator 4.0.2 e inclui o novo firmware OpenMV 4.1.0. Existem alterações incompatíveis: a indentação automática está agora desativada por predefinição e as imagens de firmware combinadas openmv.bin / openmv.dfu foram removidas para as placas OPENMV2/3/4/4P, OPENMVPT e PORTENTA, o que constitui uma alteração de fluxo de trabalho e de comportamento para quem dependia dessas predefinições ou nomes de ficheiros.

Destaques

  • Carregamento de firmware para placas Arduino para o Nano RP2040 Connect e Nano 33 BLE, programados através das novas toolchains embutidas bossac (SAM-BA) e picotool/elf2uf2/rp2040load.

  • Editor com separadores para que os ficheiros abertos apareçam como separadores comutáveis no topo do editor, com atalhos para mudar e reordenar separadores.

  • Minimapa de código na barra de deslocamento que apresenta uma visão geral em miniatura do documento, com uma página de definições do Editor de Texto para ativá-lo e definir a sua largura.

  • Novos exemplos Arduino e Portenta, incluindo um conjunto completo de exemplos para o Nano RP2040 Connect e dez scripts WiFi para o Portenta-H7.

  • Firmware embutido atualizado para 4.1.0 em todas as câmaras OpenMV e nas imagens do Arduino Nano 33 / Nano RP2040.

  • Controladores USB Windows para o Arduino Nano RP2040 Connect e Portenta H7 são agora instalados pelo instalador.

Novas funcionalidades

  • Suporte a placas Arduino: Adicionado suporte completo de carregamento de firmware para as placas Arduino Nano RP2040 Connect e Nano 33 BLE, programando-as através das toolchains embutidas bossac (SAM-BA) e picotool/elf2uf2/rp2040load acionadas pelos novos descritores bossac.txt/boards.txt (mais o existente picotool.txt) (deccee676, 34e0c0ee1, ef5334782, eb9c00a33).

  • Editor com separadores: Adicionado um plugin de barra de separadores do editor para que os ficheiros abertos apareçam como separadores comutáveis no topo do editor, com atalhos para separador anterior/seguinte (Ctrl+Page Down / Ctrl+Page Up) (325cd8d87, 5501a4082).

  • Minimapa de código: Adicionado um plugin de barra de deslocamento com minimapa de código com uma página de definições do Editor de Texto (ativação, largura, limiar de contagem de linhas e transparência do cursor da barra de deslocamento) que apresenta uma visão geral em miniatura do documento na barra de deslocamento (325cd8d87).

  • Exemplos WiFi para Portenta-H7: Adicionados dez scripts de exemplo WiFi (ligar, pesquisar, IP estático, DNS, NTP, cliente HTTP, cliente HTTP-SSL, streamer MJPEG, publicar/subscrever MQTT) (b2133f9f5).

Outras alterações e melhorias

  • Reordenação de separadores: Adicionados atalhos para mover o separador atual para a esquerda ou para a direita (Ctrl+Shift+Page Down / Ctrl+Shift+Page Up) e desativadas as combinações de teclas predefinidas conflituantes do editor Ctrl+PgUp/Ctrl+PgDown/Ctrl+Up/Ctrl+Down para que os atalhos da barra de separadores funcionem (5501a4082).

  • Exemplos para Nano RP2040 Connect: Incluído um conjunto completo de esboços de exemplo Python cobrindo o básico, sensor IMU, BLE, WiFi, FFT de áudio e câmara térmica (91847b183).

  • Diálogos de ligação Arduino: Adicionados dois novos diálogos no fluxo de ligação: uma dica de recuperação que instrui os utilizadores a ligar REC ao GND e reiniciar a placa quando é detetado um PID USB antigo do Arduino RP2040, e um aviso de que o Nano 33 BLE não tem disco flash de dados integrado quando é solicitado um apagamento da flash FS (91847b183).

  • Exemplos adicionais Arduino e Portenta: Adicionados novos exemplos Python para o Arduino Nano 33 BLE Sense (blinky), temperatura BLE do Portenta H7, controlo PWM melhorado do Portenta H7, um script peer-to-peer Ethernet do Portenta H7 atualizado e um exemplo de filtro ulab atualizado (45a4564f4), além de um exemplo de teste de cabo Ethernet do Portenta H7 (af1b2fcff).

  • Exemplo OpenMV WiFi-Shield: Adicionado um novo exemplo HTTP POST http_post.py em 14-WiFi-Shield (c73d9fdcf).

  • Timeouts de leitura WiFi: Separados os timeouts de leitura para que as ligações WiFi obtenham um timeout de espera mais longo (3000ms vs 1000ms em série) e reenvio do comando pendente após uma espera WiFi em vez de falhar (81f00ac58).

  • Interface do editor simplificada: Ocultados os botões de divisão e fecho de divisão da barra de ferramentas do editor e forçada a escala automática de alto DPI no Linux para manter o aspeto do editor consistente (bc14a2290).

  • Documentação offline: Atualizada a documentação offline embutida, adicionando imagens de pinagem da câmara por sensor (H7 OV7725, H7 Plus OV5640, variantes M4/M7) e atualizando as páginas de visão geral do IDE e de tutoriais (97ff73ebd).

Correções de erros

  • Corrigido o offset de apagamento de flash do RP2040 (PICO) utilizado durante a programação do firmware para que a região de flash correta seja apagada (91847b183).

  • Tornados executáveis os binários bossac e picotool embutidos para Linux/macOS para que o carregamento de firmware funcione nessas plataformas, e protegido o renderizador do minimapa para executar apenas em Qt >= 5.6 (76613152f).

  • Corrigido o aviso de atualização de firmware para respeitar os botões do diálogo (verificando QDialog::Accepted) e feito o tratamento de espera de transferência série/TCP reiniciar os seus temporizadores quando chegam novos dados para que transferências longas não esgotem o tempo de espera de forma espúria (dd4ce12a5).

Plataforma e suporte a ferramentas

  • Base Qt Creator: 4.0.2.

  • Firmware embutido: Atualizado o firmware OpenMV embutido para a versão 4.1.0 (firmware.txt: 4.0.2 -> 4.1.0) (b78603045); no início do ciclo, o mesmo ficheiro foi incrementado pelas versões intermédias 4.0.1 e 4.0.2 (beec4d25b, eb9c00a33).

  • Novas toolchains de flash: Incluídos bossac e a toolchain picotool/elf2uf2/rp2040load para todas as plataformas (windows/osx/linux32/linux64/arm/aarch64).

  • Controladores USB Windows: Adicionada a instalação de controladores assinados para as placas Arduino Nano RP2040 Connect e Portenta H7, executada pelo instalador (bc14a2290, a8ae96e1b).

  • Novos sensores reconhecidos: Adicionado o sensor de imagem PAJ6100 (914546e78) e os sensores de câmara GC2145 (0x21) e MT9M114 à tabela de sensores share/qtcreator/firmware/sensors.txt embutida (9a8b1c762); o ID do MT9M114 era inicialmente 0x81 e foi posteriormente corrigido para 0x2481 (eb9c00a33).

Alterações incompatíveis

Alterações de fluxo de trabalho e de comportamento visíveis pelo utilizador nesta versão.

  • A indentação automática está agora desativada por predefinição. A predefinição de auto-indentação do editor foi alterada para desativado (e forçada a desativado no carregamento) e a tecla Tab já não indenta; os controlos Auto indent e Tab key performs auto-indent foram removidos da página de definições Text Editor > Behavior, pelo que a escrita já não auto-indenta novas linhas a menos que seja alterado no firmware/fonte (bc14a2290).

  • As imagens de firmware combinadas openmv.bin / openmv.dfu (apenas openmv.bin para OPENMVPT, que nunca incluiu openmv.dfu) foram removidas para as placas OPENMV2/3/4/4P, OPENMVPT e PORTENTA; apenas as imagens separadas de bootloader/firmware/uvc permanecem (84cd4cd2d).

  • Os exemplos vsync_gpio_output (tanto no conjunto de exemplos 02-Board-Control do OpenMV como do Arduino/Portenta-H7) requerem agora a nova API set_vsync_callback do firmware em vez de set_vsync_output, e o callback passa agora a alternar LED_BLUE em vez do LED de infravermelhos (f13453bdc).