Adafruit Circuit Playground

The educational technology and digital learning wiki
Jump to navigation Jump to search
E-textile
Module: Adafruit Wearables
draft beginner
2019/08/30 ⚒⚒ 2019/08/28
Objectives
  • Use the micro-controller to create small prototypes
See also

Objectives

  • Use the micro-controller to create small prototypes

See also

  • Quality: draft
  • Difficulty: beginner

Introduction

AdaFruit Circuit Playground Express'. Source: Flickr of AdaFruit

Circuit Playground Express is a board of the Adafruit Wearables line of of e-textile products. This board is beginner friendly since it can (also) be programmed with MakeCode and since it includes both sensor, LEDs and a loudspeaker.

The board is rather large and heavy compared to Adafruit's FLORA and GEMMA. However, this is compensated by it's feature rich design and ease of use.

  • 50.6mm / ~2.0"
  • Weight: 8.9g

The board can be bought in three packaging variants:

For a class, it's probably best to buy Based Kits, and either a few Advanced Packs or other FLORA extension elements.

Extras

See also:

The board

AdaFruit Circuit Playground Express'. Photo source: Adafruit Flickr

Components and layouts

According to the product page (retrieved Aug 26, 2019), this board includes the following elements which are explained in detail in the guided tour.

Processor and basics

  • ATSAMD21 ARM Cortex M0 Processor, running at 3.3V and 48MHz
  • 2 MB of SPI Flash storage (i.e. a tiny disk drive), used primarily with CircuitPython to store code and libraries.
  • A JST battery connector (alternatively, the board also can take power from the USB connector).
  • Green "ON" LED so you know its powered (top left)
  • Red "#13" LED for basic blinking
  • Reset button (in the middle)
  • A total of input/output pads ("the holes")

Connectivity:

  • MicroUSB port for programming and debugging. It can act like a serial port, keyboard, mouse, joystick or MIDI!
  • Infrared receiver and transmitter - can receive and transmit any remote control codes, as well as send messages between Circuit Playground Expresses. Can also act as a proximity sensor.
  • 14 "alligator clip pads: a wide range of power pins, I2C, UART, Analog In, Digital In/Out, PWM, and Analog Out.

Output:

  • 10 x mini NeoPixels. These programmable LEDs can display any color. They are also used for some status information: when the bootloader is running they will turn green, or if it failed to initialize USB when connected to a computer, they will turn red).
  • 1 Mini speaker with class D amplifier (7.5mm magnetic speaker/buzzer). It is connected to to the A0 analog output pin.

Input and sensors:

  • 1 Temperature sensor
  • 1 Light sensor. Can also act as a color sensor and pulse sensor.
  • 1 Sound sensor (MEMS microphone)
  • 1 Motion sensor, i.e. a LIS3DH triple-axis accelerometer with tap detection, free-fall detection.
  • 2 x Push buttons, labeled A and B
  • 1 x Slide switch
  • 7 of the 8 GPIO pads have capacitive touch (A1.A2, A3, A4, A5, A6, A7)

General Purpose Input Ouput (GPIO) pads

  • All the 8 GPIO pads (A0 to A7) can be used as digital inputs, digital outputs, for LEDs, buttons and switches. In addition, all can be used as analog inputs (12-bit ADC).

Power pads

  • There are 6 power pads

Notice: I have to figure out what some of the various pins/pads really do (this is my first electronics experience....)

Packaging

As explained in the Adafruit Wereables article, the Circuit Playground Express is available as single component ($25), as basic kit (including a USB cable, needles, AAA-battery pack, lithium battery, and some thread, $30) and as Circuit Playground Express Advanced Pack ($100).

Adafruit Circuit Playground Express Base Kit, as of Aug 2019

Programming the board

To compile and upload a program to the controller

Example

Clap hands code example: Based on the "clap lights" example at Makecode.adafruit.com

Javascript version

Notice how the RDG colors arae defined. E.g. red (CSS #FF0000) becomes 0xff0000

input.onLoudSound(function () {
    light.setBrightness(20)
    for (let i = 0; i < 4; i++) {
        light.setAll(0xff0000)
        pause(200)
        light.setAll(0x000000)
        pause(200)
    }
    light.setPixelColor(0, 0x00ff00)
    light.setPixelColor(9, 0x00ff00)
})

Result after clapping

Clap hands code example (see the Adafruit on the right of the screen)

See also:

Links

Official tutorials

Adafruit Circuit Playground Express documentation

Acknowledgement

Pictures as well as some text was reproduced from the Adafruit circuit playground express documentation. Some pictures are available under a CC BY-NC-SA license. Others are copyright AdaFruit and "all rights reserved" and reproduced with permission. Before you reuse any picture from this website, make sure to look at the license information.

For more information about using Adafruit, see https://learn.adafruit.com