Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Adafruit ItsyBitsy M4: Examples, Pinouts, and Specs

Image of Adafruit ItsyBitsy M4
Cirkit Designer LogoDesign with Adafruit ItsyBitsy M4 in Cirkit Designer

Introduction

The Adafruit ItsyBitsy M4 is a tiny yet powerful development board that harnesses the capabilities of the ATSAMD51 microcontroller. This board is designed for makers and hobbyists who need a compact, high-performance microcontroller that is also cost-effective. The ItsyBitsy M4 is compatible with Arduino programming, which makes it accessible for a wide range of users, from beginners to advanced developers. Common applications include wearable electronics, small robotics, and Internet of Things (IoT) devices.

Explore Projects Built with Adafruit ItsyBitsy M4

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Adafruit ItsyBitsy M4 Dual GC9A01 Display Animated Eyes
Image of Eyes: A project utilizing Adafruit ItsyBitsy M4 in a practical application
This circuit features an Adafruit ItsyBitsy M4 microcontroller connected to two GC9A01 displays. The microcontroller drives the displays to render animated eyes, with the code handling eye movements, blinks, and iris scaling. The displays share common control signals, and the microcontroller coordinates their operation to create synchronized visual effects.
Cirkit Designer LogoOpen Project in Cirkit Designer
ATmega328P-Based Sensor Hub with OLED Display and LIDAR
Image of TILTPCB: A project utilizing Adafruit ItsyBitsy M4 in a practical application
This circuit features an Mtiny Uno ATmega328P microcontroller as its central processing unit, interfacing with a variety of sensors and peripherals. It includes a 0.96" OLED display and an MPU6050 accelerometer/gyroscope for user interface and motion sensing, respectively. The circuit also integrates a TF LUNA LIDAR for distance measurement, a DHT11 sensor for temperature and humidity readings, and uses a 9V battery with a 7805 voltage regulator for power management. Communication with a computer for programming and data exchange is facilitated by an Adafruit FTDI Friend module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Itsy Bitsy M0 Express Controlled Quad Servo Circuit
Image of LOCO: A project utilizing Adafruit ItsyBitsy M4 in a practical application
This circuit consists of an Itsy Bitsy M0 Express microcontroller connected to four Tower Pro SG90 servos. Each servo is controlled by a distinct digital output pin (D7, D9, D10, D11) from the microcontroller. The servos share a common ground with the microcontroller and are powered by a 5V battery connected to their power inputs.
Cirkit Designer LogoOpen Project in Cirkit Designer
I2C-Controlled OLED Display with External EEPROM and Interactive Pushbuttons
Image of godmode: A project utilizing Adafruit ItsyBitsy M4 in a practical application
This is a microcontroller-based interactive device featuring a Wemos D1 Mini, an OLED display, external EEPROM, and an I/O expander. It includes user input buttons and status LEDs, with potential MIDI interface capabilities.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Adafruit ItsyBitsy M4

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Eyes: A project utilizing Adafruit ItsyBitsy M4 in a practical application
Adafruit ItsyBitsy M4 Dual GC9A01 Display Animated Eyes
This circuit features an Adafruit ItsyBitsy M4 microcontroller connected to two GC9A01 displays. The microcontroller drives the displays to render animated eyes, with the code handling eye movements, blinks, and iris scaling. The displays share common control signals, and the microcontroller coordinates their operation to create synchronized visual effects.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of TILTPCB: A project utilizing Adafruit ItsyBitsy M4 in a practical application
ATmega328P-Based Sensor Hub with OLED Display and LIDAR
This circuit features an Mtiny Uno ATmega328P microcontroller as its central processing unit, interfacing with a variety of sensors and peripherals. It includes a 0.96" OLED display and an MPU6050 accelerometer/gyroscope for user interface and motion sensing, respectively. The circuit also integrates a TF LUNA LIDAR for distance measurement, a DHT11 sensor for temperature and humidity readings, and uses a 9V battery with a 7805 voltage regulator for power management. Communication with a computer for programming and data exchange is facilitated by an Adafruit FTDI Friend module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of LOCO: A project utilizing Adafruit ItsyBitsy M4 in a practical application
Itsy Bitsy M0 Express Controlled Quad Servo Circuit
This circuit consists of an Itsy Bitsy M0 Express microcontroller connected to four Tower Pro SG90 servos. Each servo is controlled by a distinct digital output pin (D7, D9, D10, D11) from the microcontroller. The servos share a common ground with the microcontroller and are powered by a 5V battery connected to their power inputs.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of godmode: A project utilizing Adafruit ItsyBitsy M4 in a practical application
I2C-Controlled OLED Display with External EEPROM and Interactive Pushbuttons
This is a microcontroller-based interactive device featuring a Wemos D1 Mini, an OLED display, external EEPROM, and an I/O expander. It includes user input buttons and status LEDs, with potential MIDI interface capabilities.
Cirkit Designer LogoOpen Project in Cirkit Designer

Technical Specifications

Key Technical Details

  • Microcontroller: ATSAMD51 32-bit Cortex M4 core running at 120 MHz
  • Flash Memory: 512 KB
  • RAM: 192 KB
  • Operating Voltage: 3.3V
  • I/O Pin Voltage: 3.3V (Do not apply more than 3.3V to any I/O pin)
  • Digital I/O Pins: 23 pins
  • PWM Channels: 10
  • Analog Inputs: 6 x 12-bit ADC channels
  • Analog Outputs: 1 x 10-bit DAC
  • Interfaces: I2C, SPI, UART
  • Clock Speed: 120 MHz
  • USB: Micro-USB for programming and power
  • Dimensions: 36mm x 18mm x 4mm / 1.4" x 0.7" x 0.16"

Pin Configuration and Descriptions

Pin Number Function Description
1 A0/D0 Analog input 0 or Digital I/O 0
2 A1/D1 Analog input 1 or Digital I/O 1
3 A2/D2 Analog input 2 or Digital I/O 2
... ... ...
23 A5/D21 Analog input 5 or Digital I/O 21
24 DAC0 Digital-to-Analog Converter Output
25 SCK SPI Clock
26 MISO SPI Master In Slave Out
27 MOSI SPI Master Out Slave In
28 SDA I2C Data
29 SCL I2C Clock
30 RX UART Receive
31 TX UART Transmit
USB Micro-USB Port for programming and power supply

(Note: This table is not exhaustive and serves as an example. Refer to the official pinout diagram for complete details.)

Usage Instructions

Integrating with a Circuit

To use the ItsyBitsy M4 in a circuit:

  1. Connect the board to your computer using a micro-USB cable.
  2. Ensure that the board is recognized by your computer and the appropriate drivers are installed.
  3. Use a breadboard and jumper wires to connect components to the ItsyBitsy M4's I/O pins.
  4. Pay attention to the operating voltage of 3.3V to avoid damaging the board.

Best Practices

  • Always disconnect the ItsyBitsy M4 from power before making or altering connections.
  • Use a voltage level shifter if you need to interface with 5V components.
  • Avoid static discharge by grounding yourself before handling the board.
  • Ensure that your power supply is stable and within the recommended voltage range.

Example Code for Arduino UNO

Here is a simple example of blinking an LED using the ItsyBitsy M4 with Arduino IDE:

// Define the LED pin
const int LED_PIN = 13;

void setup() {
  // Initialize the digital pin as an output.
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  // Turn the LED on (HIGH is the voltage level)
  digitalWrite(LED_PIN, HIGH);
  // Wait for a second
  delay(1000);
  // Turn the LED off by making the voltage LOW
  digitalWrite(LED_PIN, LOW);
  // Wait for a second
  delay(1000);
}

Remember to select the Adafruit ItsyBitsy M4 board from the Tools > Board menu in the Arduino IDE before uploading the code.

Troubleshooting and FAQs

Common Issues

  • Board not recognized: Ensure that the micro-USB cable is properly connected and that the cable supports data transfer.
  • Incorrect voltage: Verify that the power supply is 3.3V as higher voltages can damage the board.
  • I/O pin not working: Check for any physical damage to the pin or solder joints and ensure that the pin is configured correctly in your code.

FAQs

Q: Can I power the ItsyBitsy M4 with a battery? A: Yes, you can power the board with a 3.7V LiPo battery connected to the VBAT pin.

Q: Is the ItsyBitsy M4 5V tolerant? A: No, the I/O pins are not 5V tolerant. Use a level shifter for interfacing with 5V logic.

Q: How do I reset the board? A: Briefly press the reset button on the board to reset it.

For more detailed troubleshooting, refer to the Adafruit support forums and the ItsyBitsy M4 product page.