Voting resources, early voting, and poll worker information - VOTE. ... Adafruit is open and shipping.
0

CircuitPython 1.0.0!
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

CircuitPython 1.0.0!

by tannewt on Wed Jul 19, 2017 6:17 pm

From the GitHub release page:
This is the first stable release of CircuitPython! That means we believe everything works well and that the APIs are largely fixed. This release was made from the stable branch. The master branch is now working towards the 2.0.0 release.

Thanks to everyone who has contributed including those to upstream MicroPython. @dpgeorge and @pfalcon are the core devs of MicroPython. Thanks to @deshipu, @dhalbert, @ladyada, @tdicola, @hukuzatuna, @mindforger, @cyborg5, @robomike, @ianrrees, @bobricius,
@g-ollivier, @rmd6502, @willingc, @fede2cr, @cversek, @turbinenreiter, @ptorrone and @jerryneedell for their testing and code contributions. Thanks to Adafruit for making this possible.

This release is based on MicroPython 1.8.7. Support upstream MicroPython by purchasing a PyBoard (from Adafruit here).

Change highlights since 1.0.0-rc.4:
  • No functionality changes. Only doc updates.

CircuitPython comes pre-installed on the Gemma M0.

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.

tannewt
 
Posts: 1853
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython 1.0.0!

by fos on Wed Jul 19, 2017 8:03 pm

Just installed 1.0 on a Circuit Playground Express. Uf2 install - just as advertised. Ran blinky and played with repl. Very nice.

Great work. Thank you.

fos
 
Posts: 86
Joined: Thu May 29, 2014 9:04 pm

Re: CircuitPython 1.0.0!

by tannewt on Wed Jul 19, 2017 11:53 pm

Perfect fos! Thanks for the confirmation.

Please let us know if you do find any bugs. We can always do a 1.0.1. :-)

tannewt
 
Posts: 1853
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython 1.0.0!

by jerryn on Sun Jul 23, 2017 2:52 pm

Congratulations! Installed and working on M0-Express and CircuitPlayground-Express.

jerryn
 
Posts: 1341
Joined: Sat Sep 14, 2013 9:05 am

Re: CircuitPython 1.0.0!

by tannewt on Sun Jul 23, 2017 2:55 pm

jerryn wrote:Congratulations! Installed and working on M0-Express and CircuitPlayground-Express.


Yay! Thanks Jerry!

tannewt
 
Posts: 1853
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython 1.0.0!

by thisIsRick on Sun Jul 23, 2017 5:17 pm

Just received a Feather M0 Express in the mail 4 days ago. Lucky timing. Installed and working well. I sincerely hope that this catches on and grows in popularity to match that of Arduino or Raspberry Pi someday soon.

thisIsRick
 
Posts: 1
Joined: Sun Jul 23, 2017 5:11 pm

Re: CircuitPython 1.0.0!

by tannewt on Sun Jul 23, 2017 5:30 pm

Awesome thisIsRick! I hope we can grow to that scale too. It'll just take time. :-)

tannewt
 
Posts: 1853
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython 1.0.0!

by meichr on Wed Aug 02, 2017 3:15 pm

Hi, I'm using some feather M0 based boards with the Arduino IDE and will try out CircuitPython on them.
But as you state, that the discontinued "Arduino M0 Pro" would also be supported, my question is whether the "Arduino M0" board can also be used for CircuitPython.
I don't see any description how to upload firmware to this board. When I installed BOSSA 1.8, it said it could not connect to its COM port although the Arduino IDE can connect to it.
Thanks for your info on whether M0 is supported and by which version of CircuitPython.

meichr
 
Posts: 10
Joined: Wed Aug 02, 2017 3:11 pm

Re: CircuitPython 1.0.0!

by jerryn on Wed Aug 02, 2017 3:29 pm

For what is it worth, I have been able to run the "arduino_zero" CircuitPython on a Sparkfun SAMD21 board that seems pretty close to the Arduino M0.
https://www.sparkfun.com/products/13672

Good luck!

P.S. - I have not tried bossac 1.8 yet - I have been using 1.7.

jerryn
 
Posts: 1341
Joined: Sat Sep 14, 2013 9:05 am

Re: CircuitPython 1.0.0!

by tannewt on Wed Aug 02, 2017 4:00 pm

All SAMD21x18 based boards should work to some degree or another. The biggest difference between boards is simply the `board` module which maps the board's pinout to the microcontroller's pins. I'd suggest using the arduino_zero version on unsupported boards because it doesn't use an external SPI flash like the express boards do.

I also haven't used BOSSA 1.8 and also don't use Windows regularly. So, I can't help with BOSSA. I do believe that both the Arduino M0 Pro and Arduino Zero should work except for the pinout in `board` will not be correct.

Our Express boards like the Metro M0 Express come with a newer, better bootloader that shows up as a drive if you get fed up with using BOSSA.

Cheers. Keep us posted.
~Scott

tannewt
 
Posts: 1853
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython 1.0.0!

by jerryn on Wed Aug 02, 2017 4:07 pm

FYI - I just tried BOSSA 1.8 (on a linux machine) and was able to load CircuitPython 1.0.0 (arduino_zero build) onto the SparkFun SAMD21 Board.

jerryn
 
Posts: 1341
Joined: Sat Sep 14, 2013 9:05 am

Re: CircuitPython 1.0.0!

by meichr on Sat Aug 05, 2017 5:44 am

Thanks for all the replies for Arduino M0. I now found out about the main obstacle.

The Arduino M0 is more difficult in that case, that it has the arduino.org M0 bootloader installed which is not compatible with the Zero bootloader and BOSSA. The Arduino M0 Pro has an onboard programmer like the Zero, so you can burn the Zero bootloader easily. But the Arduino M0 doesn't have an onboard programmer and thus requires ATMEL ICE or a similar SWD programmer to burn the Zero bootloader. So no luck for me on that for the time being (the SparkFun SAMD21 Board has the Zero bootloader, so no problem with that board).

Now, luckily I found a two year old Arduino Zero pro (the original name of the M0 pro until the temporary arduino.cc/org split) in my cupboard, which I will try to use.

Also thanks for the info, I now understand that the Feather M0 Express has this extra 2MB SPI storage for Python source code, which increases the possible size of Python programs (I don't yet own that particular Feather). Wouldn't it also be interesting and possible to store source code on the SD card of a Feather M0 adalogger? Also would it be possible to add a similar SPI storage chip on a prototype Feather board, is a connection/circuit diagram for this add on publicly available?

meichr
 
Posts: 10
Joined: Wed Aug 02, 2017 3:11 pm

Re: CircuitPython 1.0.0!

by tannewt on Sat Aug 05, 2017 9:04 pm

I'm glad you sorted it out!

Yes, it will be possible to store code on the Adalogger. However, that doesn't give more room for core support because the 64k filesystem still lives internally.

You should be able to set up a prototype feather with SPI flash. The connection is straightforward, its simply typical SPI. The hard part will be that you need to compile CircuitPython yourself with the correct pins for the SPI flash. They are defined in the mpconfigboard.h files. Here is an example. The part number of the supported flash is in there as well. If you use a different flash chip you will likely have to adapt the spi_flash.c file as well.

The schematic for the Feather M0 Express is here if you want to follow along.

tannewt
 
Posts: 1853
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython 1.0.0!

by meichr on Mon Aug 07, 2017 6:47 am

Thanks a lot, I'll try this out.

I successfully installed CircuitPython on the mentioned Arduino Zero pro (M0 pro) and connect to REPL from Windows 7 using Putty. I'll try to repeat these steps with my Feather M0 Adalogger, then Feather M0 Bluefruit LE, Feather M0 RFM96 LoRa Radio - 433MHz, Adafruit Feather M0 WiFi - ATSAMD21 + ATWINC1500 and Adafruit Feather HUZZAH with ESP8266 WiFi. There is a lot of options, though I understand that currently the add-ons are not supported by CircuitPython.

On learn.adafruit.com I found https://learn.adafruit.com/micropython-for-samd21, https://learn.adafruit.com/micropython-for-samd21/quick-start-guide and https://github.com/adafruit/circuitpython. Due to the change from MicroPython to CircuitPython and that the learning docs are not fully streamlined to the new port, it was a little difficult for me as a newcomer to know how to work with it. I achieved creating a blink program and saving it to the 64K disk available under Windows 7 using Notepad++. By naming it code.py it properly starts after every save or reboot.

Open questions are:
1.) Can I use REPL via Putty to start saved files manually? Or is it only for interactively entering command lines.
2.) Are the libraries from Adafruit compatible with CircuitPython or with MicroPython core modules? Like there is not "machine" module but a digitalio module, etc.. E.g. I'll want to use my Feather OLED, Feather Precission RTC and Feather 7-Segment-Display boards by CircuitPython.
3.) Is the AMPY tool also working under Windows 7 or only on linux based pcs? What additional features would AMPY provide me in addtion to the feature of saving on the Windows 7 disk provided for saving?

Thanks for your help.

meichr
 
Posts: 10
Joined: Wed Aug 02, 2017 3:11 pm

Re: CircuitPython 1.0.0!

by tannewt on Mon Aug 07, 2017 2:41 pm

meichr wrote:Open questions are:
1.) Can I use REPL via Putty to start saved files manually? Or is it only for interactively entering command lines.


You can use the serial connection to control when the file is run by entering the REPL and selectively doing CTRL-D to reload. Its also useful to see the output from your script such as error messages.

meichr wrote:2.) Are the libraries from Adafruit compatible with CircuitPython or with MicroPython core modules? Like there is not "machine" module but a digitalio module, etc.. E.g. I'll want to use my Feather OLED, Feather Precission RTC and Feather 7-Segment-Display boards by CircuitPython.


All new libraries are CircuitPython compatible instead of MicroPython. The bundle contains all CircuitPython libraries I'm aware of. The community bundle will also contain more drivers.

meichr wrote:3.) Is the AMPY tool also working under Windows 7 or only on linux based pcs? What additional features would AMPY provide me in addtion to the feature of saving on the Windows 7 disk provided for saving?


AMPY should work under Windows 7 if you have Python installed. It works best with the Feather Huzzah because it doesn't provide USB like the M0 boards do. For M0 boards I recommend the file based workflow you are using.

Cheers,
Scott

tannewt
 
Posts: 1853
Joined: Thu Oct 06, 2016 8:48 pm

Please be positive and constructive with your questions and comments.