v3.9.1

A v3.9.1 adiciona uma biblioteca LoRa para o Arduino Portenta, controle de taxa de quadros do sensor (set_framerate() / get_framerate()), atualizações in-place de draw_image() e exFAT para o Portenta, e atualiza o ulab para 2.1.3 com uma tabela de cores LAB interpolada mais precisa. A atualização do ulab e a mudança nas cores LAB são mudanças de comportamento — leia as mudanças incompatíveis abaixo.

Destaques

  • Biblioteca LoRa para o Arduino Portenta.

  • Controle de taxa de quadrossensor.set_framerate() / sensor.get_framerate().

  • Atualizações in-place de draw_image() e operações de imagem to_* / copy / crop consolidadas.

  • Sistema de arquivos exFAT habilitado no Portenta.

  • Incompatível: o ulab foi atualizado para 2.1.3 e a conversão de cores agora usa uma tabela LAB interpolada — veja as mudanças incompatíveis.

Novos recursos

  • LoRa — adicionada uma biblioteca LoRa para o Arduino Portenta.

  • Taxa de quadros do sensor — adicionadas sensor.set_framerate() e sensor.get_framerate().

  • draw_imageimage.draw_image() agora suporta atualizações in-place.

  • exFAT — habilitado o sistema de arquivos exFAT no Portenta.

Outras mudanças e melhorias

  • Centralizadas e melhoradas as operações de imagem to_* / copy / crop e o copy_to_fb ficou mais inteligente quanto ao uso de recursos; atualizado o driver HM01B0; atualizados os scripts de build a partir do upstream.

Correções de bugs

Câmera e sensores:

  • Corrigidos o valor padrão de SYSTEM_CTROL0 do OV5640 em sleep(), o valor padrão do registrador OSC do HM01B0 e a polaridade do pixel-clock do HM01B0.

Sistema:

  • Correções de baixo consumo.

Mudanças incompatíveis na API

Quebras de API visíveis ao usuário entre a v3.9.0 e a v3.9.1. Escopo: módulos C do Python em modules/ e bibliotecas Python em scripts/libraries/.

Ambas as mudanças incompatíveis são mudanças de behavior (mesma API, resultados diferentes) — reavalie os scripts afetados. Cada hash de commit possui um link para o seu diff no GitHub.

ulab atualizado para 2.1.3 (behavior)

O módulo ulab incluído (semelhante ao NumPy) foi atualizado para 2.1.3. O comportamento de arrays/numérico segue o ulab 2.1.3 upstream; reavalie scripts que dependem de comportamento específico de versão do ulab.

Commits: 2a190f35c

Tabela de cores LAB interpolada (behavior)

A conversão de cores agora usa uma tabela LAB interpolada, tornando as operações baseadas em LAB (limiares de cor, rgb_to_lab / lab_to_rgb, estatísticas de cor) mais precisas. Os resultados diferem ligeiramente das versões anteriores, então reavalie e reajuste os limiares de cor que foram calibrados com a tabela antiga.

Commits: 690a39c0c

Checklist de migração

Revalide scripts que dependem de comportamento específico de versão do ulab (a atualização do ulab) e reajuste os limiares de cor baseados em LAB contra a tabela interpolada (a mudança nas cores LAB). Todos os outros scripts funcionam sem alterações.