Logo Zephyrnet

Rilasciato CircuitPython 9.0.0!

Data:

Dal Pagina di rilascio di GitHub:

Questo è anche CircuitPython 9.0.0, l'ultima importante revisione di CircuitPython, ed è una nuova versione stabile.

ATTENZIONE solo per schede nRF52: Se la tua scheda ha un bootloader nRF52 UF2 la cui versione è precedente alla 0.6.1, non sarai in grado di caricare CircuitPython 8.2.0 e versioni successive, a causa delle maggiori dimensioni del firmware. Vedere queste istruzioni per aggiornare il tuo bootloader.

Modifiche notevoli alla versione 9.0.0 dalla versione 8.xx

Avvisi di incompatibilità

  • Nuova gestione dello spazio di archiviazione. Vedere Interno di seguito sui possibili nuovi errori di memoria con i programmi esistenti.
  • Ora è necessario montare file system come le schede SD su una directory esistente come punto di montaggio. Vedere Archiviazione qua sotto.
  • Modifica incompatibile in socket comportamento: I socket devono essere esplicitamente resi riutilizzabili. Vedere Networking qua sotto.
  • displayio.*Display.show() è stato rimosso. Utilizzo *Display.root_group = anziché.
  • I2CPeripheral è ora I2CTarget.

audio

  • Aggiungi synthio.Note .loop_start ed .loop_end proprietà.
  • Aggiungi synthio.Synthesizer.note_state.
  • Aggiunto il supporto I2S MCLK su Espressif.
  • Consenti l'ingresso dell'ampiezza con segno synthio.

Moduli integrati

  • Aggiungi OrderedDict.move_to_end().
  • Aggiungi warnings modulo, simile a quello che c'è in CPython.
  • Aggiungi locale.getlocale().
  • Aggiungi codeop.compile_command().
  • Rimuovere le deprecazioni 8.xx: displayio.*.show(), I2CPeripheral rinominato in I2CTarget.

Grafica

  • Riorganizzare e dividere displayio. La struttura dei nomi 8.xx è disponibile in 9.xx, ma verrà rimossa in 10.0.0.
  • Aggiungi jpegio Supporto per decodificatore JPEG.
  • Aggiungi bitmapfilter manipolazione delle immagini.

Interno

  • Nuovo meccanismo di archiviazione dinamica interna split-heap. Alcuni programmi CircuitPython potrebbero non funzionare MemoryError. Se incontri programmi che funzionano in 8.xx ma ottieni MemoryError eccezioni, valuta la possibilità di presentare un problema con i dettagli.
  • Unisci gli aggiornamenti da MicroPython v1.19.1, v1.20.0 e v1.21.0.
  • Espressif: aggiornamento a ESP-IDF v5.1.3.

Networking

  • Consenti di specificare il protocollo per i socket grezzi.
  • Aggiungi il supporto per i record TXT mDNS.
  • Rendi disponibili le schede SD tramite il flusso di lavoro web.
  • Consenti il ​​recupero delle stazioni associate in modalità punto di accesso.
  • Cambiamento incompatibile: Richiede il riutilizzo esplicito della porta socket. Utilizzo socket.setsockopt(pool.SOL_SOCKET, pool.SO_REUSEADDR, 1), come in CPython.

Interprete Python

  • Utilizza messaggi di errore più concisi su build di piccole dimensioni.

Archiviazione

  • Le unità CIRCUITPY ora si montano su Android.
  • Aumento della capacità dei file sulle unità CIRCUITPY <= 128kB.
  • Modifica incompatibile: Richiede che i montaggi del filesystem si trovino su directory esistenti. Creare /sd nei nuovi filesystem per fornire un punto di montaggio.

Supervisore

  • Aggiungi repl.py, che viene eseguito appena prima dell'avvio di REPL.

USB

  • Supporto per dispositivi video (“Webcam”, UVC).
  • HID può riattivare il computer host in sospensione.
  • Ulteriore supporto host USB, su i.MX e RP2040.
  • Consenti l'impostazione del nome dell'interfaccia HID USB.

Scarica da circuitpython.org

I download del firmware sono disponibili dal pagina dei download on circuitopython.org. Il sito semplifica la selezione del file e della lingua corretti per la tua scheda.

Installazione

Per installare seguire le istruzioni nel Benvenuto in CircuitPython! guida. Per installare le librerie più recenti, vedere questa pagina in quella guida.

STIMA SMART DI l'ultima versione dell'editor Mu per la creazione e la modifica dei programmi CircuitPython e per un facile accesso alla connessione seriale CircuitPython (REPL).

Documentazione

La documentazione è disponibile in readthedocs.io.

Stato della porta

CircuitPython ha una serie di "porte" che sono le implementazioni principali per diverse famiglie di microcontrollori. La stabilità varia in base alla porta. A partire da questa versione, queste porte sono considerate stabili (ma vedi Problemi noti di seguito):

  • atmel-samd: Microchip SAMD21, SAMx5x
  • cxd56: Sony Spresense
  • espressif: Espressivo ESP32, ESP32-S2, ESP32-S3, ESP32-C3
  • nrf: Nordico nRF52840, nRF52833
  • raspberrypi: Lampone Pi RP2040
  • stm: Famiglia di chip ST STM32F4

Queste porte sono considerate alpha e avranno bug e funzionalità mancanti:

  • broadcom: Schede Raspberry Pi come RPi 4, RPi Zero 2W
  • litex: fomù
  • mimxrt10xx: NXP i.MX RT10xxx
  • silabs: Famiglia Silicon Labs MG24
  • stm: Famiglie di chip ST non STM32F4

Modifiche dalla 9.0.0-rc.1

Correzioni e miglioramenti

  • Consenti ctrl-C di adafruit_bus_device.spi_device.SPIDevice in attesa di serratura. #9055. Grazie @dhalbert.

Modifiche specifiche per porta e bordo

Broadcom

espresso

i.MX

nRF

RP2040

SAMx

SiLab

Spresenza

STM

Schede individuali

  • Cardputer M5Stack: correzione board.I2S_DATA errore di battitura del nome pin. #9020. Grazie @RetiredWizard.

Modifiche alla documentazione

Build e modifiche all'infrastruttura

Aggiunte e miglioramenti alla traduzione

Nuove schede dalla 9.0.0-rc.1

Problemi noti

  • Vedere https://github.com/adafruit/circuitpython/issues per altri problemi, inclusi problemi ancora da affrontare per:

Grazie

Grazie a tutti coloro che hanno utilizzato, testato e contribuito a partire dalla versione 9.0.0-rc.1, inclusi i contributori di cui sopra e molti altri su GitHub e Discord. Unisciti a noi su Chat di discordia collaborare.

spot_img

L'ultima intelligenza

spot_img