v4.0.2

v4.0.2 introduz a porta inicial RP2040 (arquivos de placa do Raspberry Pi Pico / Arduino Nano RP2040 Connect), suporte aos sensores PixArt PAJ6100 e MT9M114, uma biblioteca de filtro de áudio PDM e melhorias no sensor. O ADC do STM32 e o caminho de transferência de imagem mudaram — leia as mudanças incompatíveis abaixo.

Destaques

  • Porta inicial do RP2040 — arquivos de placa do Raspberry Pi Pico / Arduino Nano RP2040 Connect.

  • Novos sensores — PixArt PAJ6100 e um driver MT9M114 funcional.

  • Biblioteca de filtro de áudio PDM; sensor.set_framerate() funciona para qualquer FPS.

  • Incompatível: o driver de ADC do STM32 foi alinhado com o upstream e o descarregamento completo via MDMA da transferência de imagem foi habilitado — veja as mudanças incompatíveis.

Novos recursos

  • Porta do RP2040 — adicionou a porta do RP2040 com arquivos de placa do Raspberry Pi Pico e do Arduino Nano RP2040 Connect (bring-up inicial; WiFi/Bluetooth chegam na v4.1.0).

  • Suporte ao sensor de câmera PixArt PAJ6100 e um driver MT9M114 funcional.

  • Biblioteca de filtro de áudio PDM adicionada ao caminho de áudio.

  • Sensorsensor.set_framerate() agora funciona para qualquer FPS, um método para ler a frequência XCLK real foi adicionado, resoluções de sensor adicionais são suportadas e uma opção de frame buffer disable_full_flush foi adicionada.

Outras mudanças e melhorias

  • As mensagens de erro do snapshot foram tornadas mais claras; atualizações de Ethernet e um modo de baixo consumo foram adicionados (Portenta).

Correções de bugs

  • Corrigiu o estado do canal do timer do pyb.Servo, o driver da IMU LSM6Dx, o dma_nohal_init do STM32 H7 e uma verificação de inicialização de framesize ausente.

Hardware e suporte a placas

  • Raspberry Pi Pico / Arduino Nano RP2040 Connect — arquivos de placa iniciais.

  • Sensores de câmera PixArt PAJ6100 e MT9M114.

Mudanças incompatíveis na API

Quebras de API visíveis ao usuário entre a v4.0.1 e a v4.0.2.

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

Alinhamento do ADC do STM32 e descarregamento completo via MDMA (behavior)

O driver de ADC do STM32 foi alinhado com a implementação upstream do MicroPython, de modo que o comportamento/leituras do machine.ADC podem diferir ligeiramente das versões anteriores. Separadamente, o descarregamento completo via MDMA das transferências de imagem foi habilitado, o que acelera a captura mas altera o caminho e o timing da transferência. Reverifique código dependente de ADC e capturas sensíveis ao timing.

Commits: 661169f85, 772bfab26

Lista de verificação de migração

Revalide quaisquer leituras do machine.ADC e código de captura sensível ao timing em relação ao driver de ADC alinhado e ao descarregamento completo via MDMA (as mudanças de comportamento). Todos os outros scripts rodam sem alterações.