v1.9.0

A v1.9.0 é o lançamento de internacionalização, adicionando uma interface de usuário totalmente traduzida em mais de uma dúzia de idiomas, junto a um novo protocolo de consulta ao bootloader que lê o layout real de setores de apagamento do flash de cada placa para uma gravação de firmware mais segura. A IDE continua construída sobre o Qt Creator 4.0.2, e o firmware OpenMV incluído é atualizado para 2.9.0. Não há mudanças incompatíveis para projetos existentes.

Destaques

  • A interface multilíngue agora está disponível, adicionando traduções para chinês (simplificado e tradicional), japonês, francês, italiano, espanhol, russo, alemão, árabe, tcheco, húngaro, polonês, esloveno e ucraniano.

  • A consulta de setores de flash do bootloader permite que a IDE leia o layout real de setores de apagamento de uma câmera conectada por meio do bootloader, em vez de depender exclusivamente de padrões fixos no código.

  • Os intervalos de apagamento por placa agora são lidos de boards.txt para que cada modelo de câmera apague os setores de flash corretos ao regravar o firmware.

  • O aviso de firmware desatualizado oferece atualizar a câmera automaticamente quando uma versão de firmware desatualizada é detectada na conexão.

  • Os novos exemplos incluídos adicionam primitivas de desenho, filtros de imagem, um script de fotos em time-lapse, uma demonstração de classificação de objetos com CMSIS CNN e exemplos de motor-shield.

  • O firmware incluído 2.9.0 atualiza o firmware e as imagens DFU do M7 (OPENMV3) e do H7 (OPENMV4) (e o bootloader do H7).

Novos recursos

  • As traduções multilíngues da interface adicionam chinês (simplificado e tradicional), japonês, francês, italiano, espanhol, russo, alemão, árabe, tcheco, húngaro, polonês, esloveno e ucraniano, com uma regra de build que torna as traduções regeneráveis (8350ff9ac, 4ef99202b, 0a7c85bfc, c678482dd, 052113877, e48ff5d34, 9dddbc498).

  • A consulta de setores de flash do bootloader adiciona um novo protocolo de bootloader em que a IDE consulta a câmera conectada para ler o layout real de setores de apagamento do flash (setores de início, todos-início e último) em vez de depender exclusivamente de padrões fixos no código (38a84883e).

  • Os intervalos de apagamento por placa agora são lidos de boards.txt (números de setores ao final de cada linha) para que cada modelo de câmera apague os setores corretos em vez de usar um único padrão global. A implementação inicial não correspondia ao boards.txt (que já usava números finais separados por espaço) até que 8217b94c3 corrigiu a condição de correspondência de placa e mudou a expressão regular do delimitador de setores finais de + para espaço em branco; 4843e46a8 então removeu uma impressão de depuração qDebug() remanescente (68a45da02, 8217b94c3, 4843e46a8).

  • Aviso de firmware desatualizado: na conexão, se o firmware da câmera for detectado como desatualizado, a IDE agora solicita a atualização e, mediante confirmação, inicia a atualização de firmware automaticamente (a79a40b45, 8217b94c3).

  • Os novos exemplos incluídos adicionam primitivas de desenho (seta, círculo, cruz, linha, retângulo, texto, imagem, preenchimento por inundação), novos filtros de imagem (desfoque, cartoon, borda, bilateral em cor e em escala de cinza, remoção de luz, kernel, unsharp, equalização de histograma e de histograma adaptativo), um exemplo de fotos em time-lapse, um exemplo de classificação de objetos com CMSIS CNN usando img.classify_object() com rótulos CIFAR, e exemplos de motor-shield (909016427).

Outras mudanças e melhorias

  • O diretório de projeto padrão agora usa por padrão uma pasta ~/OpenMV, e as caixas de diálogo Open/Save lembram e reabrem o último diretório visitado entre sessões (fbdac7576).

  • A caixa About agora mostra uma seção Credits indicando o autor da tradução (em inglês); builds localizadas substituem a string do tradutor (e8e823a11, 2efbe1e29).

  • A documentação offline incluída foi atualizada, expandindo notavelmente a referência da API omv.image e outras páginas de bibliotecas do MicroPython (aef76b825, b0f4701af).

  • Foi desabilitada a escrita extra de flush de disco (o arquivo temporário openmv.null) realizada na desconexão para evitar atividade desnecessária de disco na unidade de armazenamento em massa da câmera (6be486c62).

Correções de bugs

  • Foi corrigida uma consulta do bootloader que trocava a ordem dos valores de setor de apagamento do flash (todos-início, início, último), corrigindo quais setores de flash são apagados durante a gravação de firmware e de bootloader (fbdac7576).

  • Foram reformulados o conversor e o reprodutor de gravação de vídeo para lançar o ffmpeg e o ffplay por meio de um script temporário gerado no Windows, macOS e Linux, de modo que caminhos de arquivo contendo espaços funcionem de forma confiável, e foi corrigido o caminho do ffmpeg para Linux incluído e usado pelo conversor (8f17f888d, 83cd73144).

  • Ao se conectar a uma câmera, a IDE agora tenta novamente automaticamente até 10 vezes quando o handshake de versão de firmware expira antes de mostrar o erro de timeout, reduzindo falhas de conexão espúrias (ae18dca93).

  • Foi corrigido o tempo dos comandos seriais no macOS ajustando os atrasos entre comandos no início e no fim: a maioria foi aumentada (string de arquitetura, execução de script, salvamento de descritor/template, reset do sistema e habilitação do frame buffer para 25-50 ms), enquanto o atraso de versão de firmware foi rebalanceado (início mais curto, fim mais longo), evitando timeouts de comunicação (763357a08).

  • A chave de registro de placa inserida na caixa de diálogo de placa personalizada agora remove todos os espaços em branco, de modo que espaços acidentais na chave digitada são ignorados (6be486c62, 8217b94c3).

Suporte de plataforma e ferramentas

  • Base do Qt Creator: 4.0.2.

  • Firmware OpenMV incluído: a versão global em firmware.txt agora é 2.9.0 (de 2.7.0 passando por 2.8.0). A atualização para 2.9.0 atualizou apenas o firmware e as imagens DFU do M7 (OPENMV3) e do H7 (OPENMV4), junto com o bootloader do H7 (o M7 atualizou apenas bootloader.elf); as imagens do M4 (OPENMV2) foram atualizadas pela última vez na 2.8.0 (bfc0b188e, c0a86dd35).

  • Versão da OpenMV IDE atualizada para 1.9.0 internamente (de 1.8.2) (8f17f888d).

Mudanças incompatíveis

Nenhuma. Este lançamento não introduz quebras de fluxo de trabalho ou de comportamento; os projetos existentes continuam funcionando sem alterações.