Zephyrnet-logo

CircuitPython 9.0.0 uitgebracht!

Datum:

Van de GitHub-releasepagina:

Dit is CircuitPython 9.0.0, de nieuwste grote herziening van CircuitPython, en is een nieuwe stabiele release.

WAARSCHUWING alleen voor nRF52-kaarten: Als uw bord een nRF52 UF2-bootloader heeft waarvan de versie ouder is dan 0.6.1, kunt u CircuitPython 8.2.0 en hoger niet laden vanwege de grotere omvang van de firmware. Zien deze instructies voor het updaten van je bootloader.

Opmerkelijke veranderingen in 9.0.0 sinds 8.xx

Waarschuwingen voor incompatibiliteit

  • Nieuw opslagbeheer. Zien Intern hieronder over mogelijke nieuwe geheugenfouten met bestaande programma's.
  • Bestandssystemen zoals SD-kaarten moeten nu worden gemount op een bestaande map als montagepunt. Zien Opbergen hieronder.
  • Onverenigbare verandering in socket gedrag: Stopcontacten moeten uitdrukkelijk herbruikbaar worden gemaakt. Zien Netwerken hieronder.
  • displayio.*Display.show() is verwijderd. Gebruik *Display.root_group = gebruiken.
  • I2CPeripheral nu I2CTarget.

Audio

  • Toevoegen synthio.Note .loop_start en .loop_end eigenschappen.
  • Toevoegen synthio.Synthesizer.note_state.
  • Voeg I2S MCLK-ondersteuning toe op Espressif.
  • Laat getekende amplitude binnen synthio.

Ingebouwde modules

  • Toevoegen OrderedDict.move_to_end().
  • Toevoegen warnings module, vergelijkbaar met wat er in CPython zit.
  • Toevoegen locale.getlocale().
  • Toevoegen codeop.compile_command().
  • Verwijdering van 8.xx-beëindigingen: displayio.*.show(), I2CPeripheral hernoemd naar I2CTarget.

grafiek

  • Reorganiseren en splitsen displayio. De 8.xx-naamstructuur is beschikbaar in 9.xx, maar wordt verwijderd in 10.0.0.
  • Toevoegen jpegio Ondersteuning voor JPEG-decoder.
  • Toevoegen bitmapfilter beeldmanipulatie.

Intern

  • Nieuw split-heap intern dynamisch opslagmechanisme. Sommige CircuitPython-programma's kunnen mislukken MemoryError. Als je programma's tegenkomt die in 8.xx werken maar krijgen MemoryError uitzonderingen kunt u overwegen een probleem met details in te dienen.
  • Voeg updates van MicroPython v1.19.1, v1.20.0 en v1.21.0 samen.
  • Espressif: update naar ESP-IDF v5.1.3.

Netwerken

  • Sta het specificeren van een protocol voor onbewerkte sockets toe.
  • Ondersteuning voor mDNS TXT-records toevoegen.
  • Maak SD-kaarten beschikbaar via de webworkflow.
  • Sta het ophalen van geassocieerde stations in de toegangspuntmodus toe.
  • Onverenigbare verandering: Vereist expliciet hergebruik van de socketpoort. Gebruik socket.setsockopt(pool.SOL_SOCKET, pool.SO_REUSEADDR, 1), zoals in CPython.

Python-interpreter

  • Gebruik korte foutmeldingen bij kleine builds.

Opbergen

  • CIRCUITPY-schijven worden nu op Android geactiveerd.
  • Verhoogde bestandscapaciteit op CIRCUITPY-schijven <= 128 kB.
  • Incompatibele wijziging: Vereisen dat bestandssysteemaankoppelingen zich op bestaande mappen bevinden. Creëren /sd in nieuwe bestandssystemen om een ​​koppelpunt te bieden.

Supervisor

  • Toevoegen repl.py, die wordt uitgevoerd net voordat de REPL opstart.

USB

  • Ondersteuning voor videoapparaten (“Webcam”, UVC).
  • HID kan een slapende hostcomputer wakker maken.
  • Verdere USB-hostondersteuning, op i.MX en RP2040.
  • Sta het instellen van de USB HID-interfacenaam toe.

Download van circuitpython.org

Firmware-downloads zijn beschikbaar via de downloads pagina on circuitpython.org. De site maakt het gemakkelijk om het juiste bestand en de juiste taal voor je bord te selecteren.

Installatie

Volg de instructies in de om te installeren Welkom bij CircuitPython! gids. Zie voor het installeren van de nieuwste bibliotheken deze pagina in die gids.

Probeer de nieuwste versie van de Mu-editor voor het maken en bewerken van uw CircuitPython-programma's en voor gemakkelijke toegang tot de CircuitPython seriële verbinding (de REPL).

Documentatie

Documentatie is beschikbaar in lees dedocs.io.

Poortstatus

CircuitPython heeft een aantal "poorten" die de kernimplementaties vormen voor verschillende microcontrollerfamilies. Stabiliteit varieert per poort. Vanaf deze release worden deze poorten als stabiel beschouwd (maar zie Bekende problemen hieronder):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressief ESP32, ESP32-S2, ESP32-S3, ESP32-C3
  • nrf: Noordse nRF52840, nRF52833
  • raspberrypi:Raspberry Pi RP2040
  • stm: ST STM32F4-chipfamilie

Deze poorten worden als alfa beschouwd en bevatten bugs en ontbrekende functionaliteit:

  • broadcom: Raspberry Pi-borden zoals RPi 4, RPi Zero 2W
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • silabs: Silicon Labs MG24-familie
  • stm: ST niet-STM32F4-chipfamilies

Wijzigingen sinds 9.0.0-rc.1

Oplossingen en verbeteringen

  • Ctrl-C van toestaan adafruit_bus_device.spi_device.SPIDevice wachtend op slot. #9055. Bedankt @dalbert.

Poort- en bordspecifieke wijzigingen

Broadcom

Espressief

ik.MX

nRF

RP2040

SAMx

SiLabs

Sprezen

STM

Individuele borden

  • M5Stack-kaartcomputer: opgelost board.I2S_DATA typfout met pinnaam. #9020. Bedankt @RetiredWizard.

Documentatie wijzigingen

Wijzigingen in bouw en infrastructuur

Vertaling toevoegingen en verbeteringen

Nieuwe borden sinds 9.0.0-rc.1

Bekende problemen

  • Zie https://github.com/adafruit/circuitpython/issues voor andere problemen, waaronder problemen die nog moeten worden opgelost:

Bedankt

Bedankt aan iedereen die sinds 9.0.0-rc.1 heeft gebruikt, getest en bijgedragen, inclusief de bijdragers hierboven, en vele anderen op GitHub en Discord. Ga met ons mee op de Discord-chat samenwerken.

spot_img

Laatste intelligentie

spot_img