Skip to content

Releases: adafruit/circuitpython

1.0.0 Release Candidate 3

30 Jun 19:06
Compare
Choose a tag to compare
Pre-release

One fix thanks to @ladyada and @dhalbert! This release was made from the stable branch. The master branch is now working towards the 2.0.0 release.

This release is based on MicroPython 1.8.7.

Change highlights since 1.0.0-rc.2:

  • atmel-samd: Fix keyboard HID supporting. Misalignment of the USB descriptor was leading to a USB Busy error. Thanks to @ladyada for finding it and @dhalbert for fixing it.
  • atmel-samd: Add IR_TX and IR_RX pin names to board for the CircuitPlayground Express.
  • atmel-samd: Update to ARM GCC 6.3 Q2 update.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express, Metro M0 Express, or Circuit Playground Express? Download a .uf2 and follow these instructions. To install our libraries simply download the latest bundle and copy the lib folder onto your CIRCUITPY drive.

1.0.0 Release Candidate 2

21 Jun 17:54
Compare
Choose a tag to compare
Pre-release

One fix thanks to @ntoll! Further release candidates will be made from the stable branch. The master branch is now working towards the 2.0.0 release.

This release is based on MicroPython 1.8.7.

Change highlights since 1.0.0-rc.1:

  • atmel-samd: Fix playback of buffers by audioio.AudioOut.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express, Metro M0 Express, or Circuit Playground Express? Download a .uf2 and follow these instructions. To install our libraries simply download the latest bundle and copy the lib folder onto your CIRCUITPY drive.

1.0.0 Release Candidate 1

19 Jun 00:29
Compare
Choose a tag to compare
Pre-release

We're close to our first stable release! If we don't find any bugs with this we'll launch it as 1.0.0! This release itself has a number of small improvements and bug fixes. Further release candidates will be made from the stable branch.

This release is based on MicroPython 1.8.7.

Change highlights since 0.10.1:

  • shared-bindings: Move the DigitalIO related enum-like classes from inside DigitalInOut into digitalio directly. This requires a code change! For example, digitalio.DigitalInOut.Pull.UP becomes digitalio.Pull.UP.
  • shared-bindings: Rename directions from IN and OUT to INPUT and OUTPUT to match Arduino.
  • shared-bindings: Allow changing DigitalInOut direction through the property in addition to the switch_to_* methods. For example:
import digitalio
import board
led = digitalio.DigitalInOut(board.D13)
led.direction = digitalio.Direction.OUTPUT
  • atmel-samd express: Enable ure, center, partition, frozenset, splitlines, and reversed. Thanks @dhalbert!
  • atmel-samd: Fix stack checking because it was broken with LTO. Thanks @dhalbert!
  • atmel-samd: A number of PWMOut fixes. Thanks @ladyada for the testing!
  • atmel-samd: Fix bug in REPL history handling.
  • atmel-samd: Change PID for CircuitPlayground Express and Metro M0 Express.
  • CircuitPlayground Express: Allow the user to initiate safe mode by holding both A and B buttons while power cycling the chip.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express or Metro M0 Express? Download a .uf2 and follow these instructions. To install our libraries simply download the latest bundle and copy the lib folder onto your CIRCUITPY drive.

0.10.1 - Quick Fix

22 May 05:20
Compare
Choose a tag to compare
0.10.1 - Quick Fix Pre-release
Pre-release

Just a small, quick fix while we're at PyCon.

This release is based on MicroPython 1.8.7.

Change highlights since 0.10.0:

  • atmel-samd: Enable autoreload by default.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express or Metro M0 Express? Download a .uf2 and follow these instructions. To install our libraries simply download the latest bundle and copy the lib folder onto your CIRCUITPY drive.

0.10.0 - Beta Express

16 May 17:49
Compare
Choose a tag to compare
0.10.0 - Beta Express Pre-release
Pre-release

This is a big one. Core DMA work led to SPI speedups for both the user and SPI flash. This enables playing sound files from flash too.

We're gaining more users and they inspired more polish on the CircuitPython interaction including renaming reset to reload, redefining the file execution order and safe mode. Thank you to everyone who has tried it so far.

This release is based on MicroPython 1.8.7.

Change highlights since 0.9.7:

  • atmel-samd: Change the order that files are run and the state thats shared between them. This diverges from MicroPython! The goal is to clarify the role of each file and make them independent from each other.
    • boot.py (or settings.py) runs only once on start up before USB is initialized. This lays the ground work for configuring USB at startup rather than it being fixed. Since serial is not available, output is written to boot_out.txt.
    • code.py (or main.py) is run after every reload until it finishes or is interrupted. After its done the vm and hardware is reinitialized. This means you cannot read state from code.py in the REPL anymore. This was changed to reduce confusion about pins and memory being in use.
    • After code.py the REPL can be entered by pressing any key. It no longer shares state with code.py so its a fresh vm.
    • Autoreload state will be maintained across reload.
  • atmel-samd: Introduce a safe mode that does not run user code after a hard crash or brown out. The hope is that this will make it easier to fix code that causes nasty crashes by making it available through mass storage after the crash. A reset (the button) is needed after its fixed to get back into normal mode. Thanks to @cyborg5 for the hammering on CircuitPython and providing the inspiration for this.
  • atmel-samd: Introduce audioio.AudioOut which can play raw data arrays or wav files on SPI flash.
  • atmel-samd: Use DMA for long SPI transfers both from the user and for the SPI flash. Speeds up flash reads ~10x. Thanks to @robomike for being the guinea pig.
  • atmel-samd: Fix spurious SyntaxErrors. #124 Thanks to @jerryneedell and @dhalbert for the initial debugging.
  • atmel-samd: Rework pin reset so that the default state for the SWD lines is SWD rather than GPIO. This makes OpenOCD happy.
  • atmel-samd: Rename auto-reset to auto-reload to reduce confusion with physical reset buttons.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express or Metro M0 Express? Download a .uf2 and follow these instructions. To install our libraries simply download the latest bundle and copy the lib folder onto your CIRCUITPY drive.

0.9.7 - Shh Don't Tell

01 May 19:05
Compare
Choose a tag to compare
Pre-release

The Metro M0 Express is coming, don't tell anyone. ;-)

This release is based on MicroPython 1.8.7.

Change highlights since 0.9.6:

  • atmel-samd: Tweaks for Metro M0 Express.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express or Metro M0 Express? Download a .uf2 and follow these instructions. To install our libraries simply download the latest bundle and copy the lib folder onto your CIRCUITPY drive.

0.9.6 - Fresh Bugs

21 Apr 22:25
Compare
Choose a tag to compare
0.9.6 - Fresh Bugs Pre-release
Pre-release

Who knew there would still be more bugs to fix? :-P Thanks to everyone who has found and reported issues. We really appreciate the feedback. In fact, we now auto-build every commit to the repository and make it available for testing here. So, if you feel like finding fresh bugs give an auto-build a try. :-)

This release is based on MicroPython 1.8.7.

Change highlights since 0.9.5:

  • atmel-samd: HID Mouse support fixed by @dhalbert.
  • atmel-samd: Disabled pulseio (PWMOut, PulseIn and PulseOut) in non-express builds in favor of touch.
  • atmel-samd: Switched to FreeTouch for touch support and enabled in all builds.
  • esp8266: Fixed bidirectional SPI thanks to @jerryneedell.
  • atmel-samd: Fix potential buffer overflow when providing start index to I2C and SPI read/write functions.
  • atmel-samd: Turn on built-in framebuf module for express boards.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express? Download a .uf2 and follow these instructions. To install our libraries simply download the latest bundle and copy the lib folder onto your CIRCUITPY drive.

0.9.5 - Bug Bash

14 Apr 17:38
Compare
Choose a tag to compare
0.9.5 - Bug Bash Pre-release
Pre-release

After the big nativeio split it was time for some bug bashing. The biggest feature is the ability to use the NeoPixel on the Feather M0 Express.

This release is based on MicroPython 1.8.7.

Change highlights since 0.9.4:

  • Support NeoPixel sharing on Express boards. Simply use it as normal and the underlying system should share it.
  • Fix serial receive on Huzzah Breakout, Feather Huzzah was OK.
  • Fix PulseIn timing issues for DHTxx and IR support.
  • Fix PulseIn reset issues that could hard fault the board.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express? Download a .uf2 and follow these instructions.

0.9.4 - The Great Rename

10 Apr 21:53
Compare
Choose a tag to compare
Pre-release

This will likely break your code! Please read carefully and make sure you are using up-to-date libraries.

Well, I'm home from my great European adventure and things will pick back up quickly. I'm kicking it off by splitting nativeio into smaller modules so boards and ports can pick and choose which to provide. This will allow for built-in functionality to better match the board. For example, ESP8266 no longer needs to provide nativeio.TouchIn because touch is split into touchio which it can omit.

This release is based on MicroPython 1.8.7.

Change highlights since 0.9.3:

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.

Have a Feather M0 Express? Download a .uf2 and follow these instructions.

0.9.3 - Maxim One Wire

27 Mar 22:02
Compare
Choose a tag to compare
Pre-release

Just a quick update (from Dublin!) featuring the Maxim (formerly Dallas Semi) one wire protocol.

This release is based on MicroPython 1.8.7.

Change highlights since 0.9.2:

  • Add nativeio.OneWire for low-level timing sensitive one wire support. Higher level protocol bits will be in Python. This is most commonly used in inexpensive temperature sensors.
  • Tweak auto-reset messaging to account for case where user code turns it off.
  • Polish up Feather M0 Express board definitions.

To install, download a .bin file and follow the guide here for M0 and here for ESP8266.