The Adafruit team have this week announced the release of CircuitPython 8.0.0, the latest major revision of CircuitPython, and is a new stable release. Notable changes to 8.0.0 since the release of 7.3.0 include the ability to add WiFi workflow with browser-based device discovery, filesystem browsing, upload, download, file editing, serial/REPL connection (available on Espressif and Pi Pico W).
Together with a one-line status bar, which displays connection status, last exception, and version on a terminal window title or on the top line of an attached display. Mu 1.2.0 and Thonny 4.0.x and later are able to suppress status bar information in the REPL output.
CircuitPython 8
Functionality additions
- A
settings.toml
file in CIRCUITPY provides environment variable values. Some value names are read by CircuitPython to specify WiFi connection parameters, BLE name, and other startup values. But you can also usesettings.toml
to specify your own parameters for your programs. Values fromsettings.toml
can be retrieved usingos.getenv()
. More details here. - WiFi functionality implemented on the Raspberry Pi Pico W.
- Revised Espressif camera support, now available on ESP32, ESP32-S2, and ESP32-S3.
- Bulk analog input:
analogbufio
(available only on RP2040 for now). - Pin state can be preserved during deep sleep (available only on Espressif for now).
- Allow setting USB VID, PID, manufacturer, and product ids at runtime.
- Enable
collections.deque
on most builds. AnalogIn
values are full range from 0 to 65535, instead of having zeros on low-order bits.- In-place firmware update (dualbank) capability may be disabled at runtime in favor of a larger CIRCUITPY drive. This is the default.
- Add
TileGrid.contains()
. - Add
os.utime()
. - Add
espulp
module, for running programs on the ULP co-processor in Espressif chips. - Add
memorymap
module for general though limited access to various memory regions. - A serial “break” on the USB or UART REPL serial connection will cause a
KeyboardInterrupt
, like ctrl-C. The advantage over ctrl-C is that the break interrupts even if the input buffer is full. - Add
hidden
property tovectorio
shapes. - Add native
_pixelmap.PixelMap
support, for speed. - Chained exceptions are now implemented.
- Add
VfsFat.readonly
property. - Add
memorymap
to allow access to raw memory locations (currently only on Espressif). #7359. Thanks @tannewt.
For those unfamiliar with CircuitPython is based on Python. Python is the fastest growing programming language. It’s taught in schools and universities. It’s a high-level programming language which means it’s designed to be easier to read, write and maintain. It supports modules and packages which means it’s easy to reuse your code for other projects.
For more information jump over to the official Adafruit CircuitPython 8 GitHub page by following the link below.
Latest Geeky Gadgets Deals
Disclosure: Some of our articles include affiliate links. If you buy something through one of these links, Geeky Gadgets may earn an affiliate commission. Learn more.