Zephyrnet Logo

CircuitPython 9.0.0 lançado!

Data:

De Página de lançamento do GitHub:

Isto é Circuito Python 9.0.0, a última revisão importante do CircuitPython e é uma nova versão estável.

AVISO apenas para placas nRF52: Se sua placa possui um bootloader nRF52 UF2 cuja versão é anterior a 0.6.1, você não poderá carregar o CircuitPython 8.2.0 e posterior, devido ao aumento do tamanho do firmware. Ver estas instruções para atualizar seu bootloader.

Mudanças notáveis ​​na versão 9.0.0 desde 8.xx

Avisos de incompatibilidade

  • Novo gerenciamento de armazenamento. Ver Interno abaixo sobre possíveis novos erros de memória com programas existentes.
  • Sistemas de arquivos como cartões SD agora devem ser montados em um diretório existente como ponto de montagem. Ver Armazenamento abaixo.
  • Mudança incompatível em socket comportamento: Os soquetes devem ser explicitamente tornados reutilizáveis. Ver Networking abaixo.
  • displayio.*Display.show() foi removido. Usar *Display.root_group = ao invés.
  • I2CPeripheral é agora I2CTarget.

em áudio

  • Adicionar synthio.Note .loop_start e .loop_end propriedades.
  • Adicionar synthio.Synthesizer.note_state.
  • Adicione suporte I2S MCLK no Espressif.
  • Permitir amplitude assinada em synthio.

Módulos integrados

  • Adicionar OrderedDict.move_to_end().
  • Adicionar warnings módulo, semelhante ao que está no CPython.
  • Adicionar locale.getlocale().
  • Adicionar codeop.compile_command().
  • Remova as descontinuações da versão 8.xx: displayio.*.show(), I2CPeripheral renomeado para I2CTarget.

Gráficos

  • Reorganizar e dividir displayio. A estrutura de nomenclatura 8.xx está disponível na versão 9.xx, mas será removida na versão 10.0.0.
  • Adicionar jpegio Suporte ao decodificador JPEG.
  • Adicionar bitmapfilter manipulação de imagens.

Interno

  • Novo mecanismo de armazenamento dinâmico interno de heap dividido. Alguns programas CircuitPython podem falhar com MemoryError. Se você encontrar programas que funcionam em 8.xx, mas obtêm MemoryError exceções, considere registrar um problema com detalhes.
  • Mesclar atualizações do MicroPython v1.19.1, v1.20.0 e v1.21.0.
  • Espressif: atualização para ESP-IDF v5.1.3.

Networking

  • Permitir a especificação de protocolo para soquetes brutos.
  • Adicione suporte a registros mDNS TXT.
  • Disponibilize cartões SD no fluxo de trabalho da web.
  • Permitir a busca de estações associadas no modo ponto de acesso.
  • Mudança incompatível: exige a reutilização explícita da porta do soquete. Usar socket.setsockopt(pool.SOL_SOCKET, pool.SO_REUSEADDR, 1), como no CPython.

Intérprete Python

  • Use mensagens de erro mais resumidas em compilações pequenas.

Armazenamento

  • As unidades CIRCUITPY agora são montadas no Android.
  • Maior capacidade de arquivo em unidades CIRCUITPY <= 128kB.
  • Mudança incompatível: Exige que as montagens do sistema de arquivos estejam em diretórios existentes. Criar /sd em novos sistemas de arquivos para fornecer um ponto de montagem.

Supervisor

  • Adicionar repl.py, que é executado logo antes da inicialização do REPL.

USB

  • Suporte a dispositivos de vídeo (“Webcam”, UVC).
  • O HID pode ativar o computador host em suspensão.
  • Suporte adicional de host USB, em i.MX e RP2040.
  • Permitir configuração do nome da interface USB HID.

Baixe em circuitpython.org

Os downloads de firmware estão disponíveis no página de downloads on circuitopython.org. O site facilita a seleção do arquivo e do idioma corretos para sua placa.

Instalação

Para instalar siga as instruções do Bem-vindo ao CircuitPython! guia. Para instalar as bibliotecas mais recentes, consulte esta página nesse guia.

Experimente a última versão do editor Mu para criar e editar seus programas CircuitPython e para facilitar o acesso à conexão serial CircuitPython (REPL).

Documentação

A documentação está disponível em leiathedocs.io.

Status da porta

O CircuitPython possui várias “portas” que são as principais implementações para diferentes famílias de microcontroladores. A estabilidade varia de acordo com a porta. A partir desta versão, essas portas são consideradas estáveis ​​(mas consulte os problemas conhecidos abaixo):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spressense
  • espressif: Espressif ESP32, ESP32-S2, ESP32-S3, ESP32-C3
  • nrf: nórdico nRF52840, nRF52833
  • raspberrypi: Framboesa Pi RP2040
  • stm: Família de chips ST STM32F4

Essas portas são consideradas alfa e terão bugs e funcionalidades ausentes:

  • broadcom: Placas Raspberry Pi como RPi 4, RPi Zero 2W
  • litex: fom
  • mimxrt10xx: NXP i.MX RT10xxx
  • silabs: família Silicon Labs MG24
  • stm: Famílias de chips ST não STM32F4

Mudanças desde 9.0.0-rc.1

Correções e melhorias

  • Permitir ctrl-C de adafruit_bus_device.spi_device.SPIDevice aguardando bloqueio. #9055. Obrigado @dhalbert.

Alterações específicas da porta e da placa

Broadcom

Expressivo

i.MX

nRF

RP2040

SAMx

SiLabs

Spresense

STM

Placas individuais

  • Computador de cartão M5Stack: correção board.I2S_DATA erro de digitação do nome do pino. #9020. Obrigado @RetiredWizard.

Alterações na documentação

Mudanças de construção e infraestrutura

Adições e melhorias de tradução

Novas placas desde 9.0.0-rc.1

Problemas conhecidos

  • Consulte https://github.com/adafruit/circuitpython/issues para outros problemas, incluindo problemas ainda a serem resolvidos para:

obrigado

Obrigado a todos que usaram, testaram e contribuíram desde 9.0.0-rc.1, incluindo os contribuidores acima e muitos outros no GitHub e Discord. Junte-se a nós no Chat de discórdia colaborar.

local_img

Inteligência mais recente

local_img