Logo Zéphyrnet

CircuitPython 9.0.0 sorti !

Date :

Extrait du GitHub page de release:

Ceci CircuitPython 9.0.0, la dernière révision majeure de CircuitPython, et est une nouvelle version stable.

AVERTISSEMENT pour les cartes nRF52 uniquement : Si votre carte dispose d'un chargeur de démarrage nRF52 UF2 dont la version est antérieure à 0.6.1, vous ne pourrez pas charger CircuitPython 8.2.0 et versions ultérieures, en raison de l'augmentation de la taille du firmware. Voir ces instructions pour mettre à jour votre bootloader.

Changements notables apportés à la version 9.0.0 depuis la version 8.xx

Avertissements d'incompatibilité

  • Nouvelle gestion du stockage. Voir Interne ci-dessous sur les nouvelles erreurs de mémoire possibles avec les programmes existants.
  • Les systèmes de fichiers tels que les cartes SD doivent maintenant être montés sur un répertoire existant comme point de montage. Voir Stockage ci-dessous.
  • Changement incompatible dans socket humain: Les sockets doivent être explicitement rendus réutilisables. Voir Réseautage ci-dessous.
  • displayio.*Display.show() a été retiré. Utiliser *Display.root_group = à la place.
  • I2CPeripheral est maintenant I2CTarget.

Audio

  • Ajouter synthio.Note .loop_start ainsi que .loop_end .
  • Ajouter synthio.Synthesizer.note_state.
  • Ajoutez le support I2S MCLK sur Espressif.
  • Autoriser l'amplitude signée dans synthio.

Modules intégrés

  • Ajouter OrderedDict.move_to_end().
  • Ajouter warnings module, similaire à celui de CPython.
  • Ajouter locale.getlocale().
  • Ajouter codeop.compile_command().
  • Supprimez les dépréciations de la version 8.xx : displayio.*.show(), I2CPeripheral renommé en I2CTarget.

Graphiques

  • Réorganiser et diviser displayio. La structure de dénomination 8.xx est disponible dans la version 9.xx, mais sera supprimée dans la version 10.0.0.
  • Ajouter jpegio Prise en charge du décodeur JPEG.
  • Ajouter bitmapfilter manipulation d'images.

Interne

  • Nouveau mécanisme de stockage dynamique interne en tas divisé. Certains programmes CircuitPython peuvent échouer avec MemoryError. Si vous rencontrez des programmes qui fonctionnent sous 8.xx mais obtiennent MemoryError exceptions, envisagez de déposer un problème avec des détails.
  • Fusionnez les mises à jour de MicroPython v1.19.1, v1.20.0 et v1.21.0.
  • Espressif : mise à jour vers ESP-IDF v5.1.3.

Réseautage

  • Autoriser la spécification du protocole pour les sockets bruts.
  • Ajoutez la prise en charge des enregistrements mDNS TXT.
  • Rendre les cartes SD disponibles via le flux de travail Web.
  • Autoriser la récupération des stations associées en mode point d'accès.
  • Changement incompatible: Nécessite une réutilisation explicite du port de socket. Utiliser socket.setsockopt(pool.SOL_SOCKET, pool.SO_REUSEADDR, 1), comme dans CPython.

Interpréteur Python

  • Utilisez des messages d'erreur plus concis sur les petites versions.

Stockage

  • Les lecteurs CIRCUITPY se montent désormais sur Android.
  • Augmentation de la capacité des fichiers sur les lecteurs CIRCUITPY <= 128 Ko.
  • Changement incompatible : Exiger que les montages du système de fichiers se trouvent sur des répertoires existants. Créer /sd dans de nouveaux systèmes de fichiers pour fournir un point de montage.

Superviseur

  • Ajouter repl.py, qui s'exécute juste avant le démarrage du REPL.

USB

  • Prise en charge des appareils vidéo (« Webcam », UVC).
  • HID peut réveiller l'ordinateur hôte en veille.
  • Prise en charge supplémentaire des hôtes USB, sur i.MX et RP2040.
  • Autoriser la définition du nom de l’interface USB HID.

Télécharger depuis circuitpython.org

Les téléchargements de micrologiciels sont disponibles à partir du page de téléchargement on circuitpython.org. Le site facilite la sélection du fichier et de la langue appropriés pour votre carte.

Installation

Pour l'installation, suivez les instructions du Bienvenue sur CircuitPython! guider. Pour installer les dernières bibliothèques, voir cette page dans ce guide.

Essayez la dernière version de l'éditeur Mu pour créer et éditer vos programmes CircuitPython et pour un accès facile à la connexion série CircuitPython (le REPL).

Documentation

La documentation est disponible en readthedocs.io.

État du port

CircuitPython a un certain nombre de "ports" qui sont les principales implémentations pour différentes familles de microcontrôleurs. La stabilité varie d'un port à l'autre. À partir de cette version, ces ports sont considérés comme stables (mais consultez les problèmes connus ci-dessous) :

  • atmel-samd: Puce SAMD21, SAMx5x
  • cxd56: Sony Sprésente
  • espressif: Expressif ESP32, ESP32-S2, ESP32-S3, ESP32-C3
  • nrf: Nordique nRF52840, nRF52833
  • raspberrypi: RaspberryPi RP2040
  • stm: Famille de puces ST STM32F4

Ces ports sont considérés comme alpha et auront des bogues et des fonctionnalités manquantes :

  • broadcom: cartes Raspberry Pi telles que RPi 4, RPi Zero 2W
  • litex: fomu
  • mimxrt10xx: NXP i.MX RT10xxx
  • silabs: famille Silicon Labs MG24
  • stm: Familles de puces ST non STM32F4

Changements depuis 9.0.0-rc.1

Corrections et améliorations

  • Autoriser ctrl-C de adafruit_bus_device.spi_device.SPIDevice en attente de verrouillage. #9055. Merci @dhalbert.

Modifications spécifiques au port et à la carte

Broadcom

expressif

i.MX

nRF

RP2040

SAMx

SiLabs

Sprésence

STM

Tableaux individuels

  • Ordinateur de carte M5Stack : correctif board.I2S_DATA faute de frappe du nom de la broche. #9020. Merci @RetiredWizard.

Modifications de la documentation

Modifications de la construction et de l'infrastructure

Ajouts et améliorations de la traduction

Nouvelles cartes depuis 9.0.0-rc.1

Problèmes connus

  • Voir https://github.com/adafruit/circuitpython/issues pour d'autres problèmes, y compris les problèmes qui restent à résoudre pour :

Merci

Merci à tous ceux qui ont utilisé, testé et contribué depuis la version 9.0.0-rc.1, y compris les contributeurs ci-dessus et bien d'autres sur GitHub et Discord. Rejoignez-nous sur le Discussion Discord collaborer.

spot_img

Dernières informations

spot_img