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

How to Use Adafruit Motor Bonnet: Examples, Pinouts, and Specs

Image of Adafruit Motor Bonnet
Cirkit Designer LogoDesign with Adafruit Motor Bonnet in Cirkit Designer

Introduction

The Adafruit Motor Bonnet is a versatile and compact motor control board designed for the Raspberry Pi. It allows users to easily connect and control up to four DC motors or two stepper motors, making it an ideal choice for a wide range of robotics and automation projects. The bonnet's HAT (Hardware Attached on Top) form factor ensures a seamless integration with the Raspberry Pi, providing a neat and efficient solution for motor control.

Explore Projects Built with Adafruit Motor Bonnet

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Bluetooth-Controlled Robotic Vehicle with Adafruit Motor Shield
Image of motor: A project utilizing Adafruit Motor Bonnet in a practical application
This circuit is a motor control system that uses an Adafruit Motor Shield to drive four hobby motors, with additional sensors including an IR sensor, an ultrasonic sensor, a metal detector, and a Bluetooth module for remote communication. The system is powered by a battery case and controlled via a rocker switch.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO and L298P Drive Shield Controlled Robotic Car with Bluetooth and LED Indicators
Image of Copy of cmp sci isu (1): A project utilizing Adafruit Motor Bonnet in a practical application
This circuit is a remote-controlled robot car with an Arduino UNO and an L298P motor driver shield, powered by a 12V battery. The Arduino controls the motors for movement and LEDs for visual feedback, while a piezo buzzer provides audio alerts. Bluetooth connectivity is provided for remote commands.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino-Based Bluetooth-Controlled Robotic Car with LED Indicators and Siren
Image of cmp sci isu: A project utilizing Adafruit Motor Bonnet in a practical application
This circuit is a remote-controlled vehicle system with an Arduino UNO and an L298P motor driver shield, powered by a 12V battery. The Arduino controls the motors and wheels via Bluetooth commands, and also manages LEDs and a piezo buzzer for visual and audio signals, which are toggled by a pushbutton.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO and Adafruit Motor Shield Controlled Stepper Motor System with Push Button Interface
Image of Sophmore Vending Machine Project: A project utilizing Adafruit Motor Bonnet in a practical application
This circuit consists of an Arduino UNO connected to an Adafruit Motor Shield, which controls two bipolar stepper motors. Additionally, multiple push buttons and an LED with a current-limiting resistor are connected to the Arduino for user input and visual feedback.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Adafruit Motor Bonnet

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 motor: A project utilizing Adafruit Motor Bonnet in a practical application
Bluetooth-Controlled Robotic Vehicle with Adafruit Motor Shield
This circuit is a motor control system that uses an Adafruit Motor Shield to drive four hobby motors, with additional sensors including an IR sensor, an ultrasonic sensor, a metal detector, and a Bluetooth module for remote communication. The system is powered by a battery case and controlled via a rocker switch.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Copy of cmp sci isu (1): A project utilizing Adafruit Motor Bonnet in a practical application
Arduino UNO and L298P Drive Shield Controlled Robotic Car with Bluetooth and LED Indicators
This circuit is a remote-controlled robot car with an Arduino UNO and an L298P motor driver shield, powered by a 12V battery. The Arduino controls the motors for movement and LEDs for visual feedback, while a piezo buzzer provides audio alerts. Bluetooth connectivity is provided for remote commands.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of cmp sci isu: A project utilizing Adafruit Motor Bonnet in a practical application
Arduino-Based Bluetooth-Controlled Robotic Car with LED Indicators and Siren
This circuit is a remote-controlled vehicle system with an Arduino UNO and an L298P motor driver shield, powered by a 12V battery. The Arduino controls the motors and wheels via Bluetooth commands, and also manages LEDs and a piezo buzzer for visual and audio signals, which are toggled by a pushbutton.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Sophmore Vending Machine Project: A project utilizing Adafruit Motor Bonnet in a practical application
Arduino UNO and Adafruit Motor Shield Controlled Stepper Motor System with Push Button Interface
This circuit consists of an Arduino UNO connected to an Adafruit Motor Shield, which controls two bipolar stepper motors. Additionally, multiple push buttons and an LED with a current-limiting resistor are connected to the Arduino for user input and visual feedback.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Robotics: Drive wheels or tracks for robots.
  • Automation: Control conveyor belts, linear actuators, or other machinery.
  • Art installations: Animate moving parts in interactive art pieces.
  • Educational projects: Teach students about motor control and robotics.

Technical Specifications

Key Technical Details

  • Voltage Range: 4.5V to 13.5V
  • Logic Voltage: 3.3V (compatible with Raspberry Pi logic level)
  • Continuous Current per Channel: 1.2A
  • Peak Current per Channel: 3.0A (for a few seconds)
  • PWM Driver: TB6612 chipset

Pin Configuration and Descriptions

Pin Number Function Description
1 Motor 1 A Output A for Motor 1
2 Motor 1 B Output B for Motor 1
3 Motor 2 A Output A for Motor 2
4 Motor 2 B Output B for Motor 2
5 Motor 3 A Output A for Motor 3 (if using DC motors)
6 Motor 3 B Output B for Motor 3 (if using DC motors)
7 Motor 4 A Output A for Motor 4 (if using DC motors)
8 Motor 4 B Output B for Motor 4 (if using DC motors)
9-12 Stepper Motor 1 Outputs for Stepper Motor 1 (if using steppers)
13-16 Stepper Motor 2 Outputs for Stepper Motor 2 (if using steppers)
17 Power (VMotor) Motor power supply (4.5V to 13.5V)
18 Ground Ground connection
19 I2C SDA I2C Data line for communication with Raspberry Pi
20 I2C SCL I2C Clock line for communication with Raspberry Pi

Usage Instructions

How to Use the Component in a Circuit

  1. Power Supply: Connect a suitable power supply (4.5V to 13.5V) to the VMotor and Ground pins.
  2. Motor Connection: Attach the motors to the appropriate Motor A and Motor B output pins.
  3. Raspberry Pi Connection: Mount the Motor Bonnet on top of the Raspberry Pi GPIO header.
  4. Software Setup: Install the Adafruit Motor HAT Python library on the Raspberry Pi to control the motors through software.

Important Considerations and Best Practices

  • Ensure the power supply voltage and current are within the specified range for the Motor Bonnet.
  • Do not exceed the continuous current rating of 1.2A per channel to prevent damage.
  • Use external power for motors; do not power motors from the Raspberry Pi's 5V pin.
  • Always disconnect the power before making or changing connections to the Motor Bonnet.

Troubleshooting and FAQs

Common Issues Users Might Face

  • Motors not responding: Check power supply connections and ensure the Motor Bonnet is properly seated on the Raspberry Pi.
  • Unexpected motor behavior: Verify that the motor wiring is correct and that the software is properly configured.
  • Overheating: Ensure that the current draw is within limits and that there is adequate ventilation.

Solutions and Tips for Troubleshooting

  • Double-check all connections and wiring.
  • Review the code to ensure that the correct pins and commands are being used.
  • Use a multimeter to verify power supply voltage and motor resistance.

FAQs

Q: Can I control servo motors with the Motor Bonnet? A: No, the Motor Bonnet is designed for DC and stepper motors. For servo control, consider using a dedicated servo controller.

Q: How do I stack multiple Motor Bonnets? A: You can stack multiple bonnets by assigning unique I2C addresses to each bonnet. Refer to the Adafruit guide on stacking HATs for detailed instructions.

Q: Can I use this with a Raspberry Pi Zero? A: Yes, the Motor Bonnet is compatible with the Raspberry Pi Zero, but you will need a GPIO header soldered onto the Pi Zero.

Q: Is there a software library available for the Motor Bonnet? A: Yes, Adafruit provides a Python library specifically for controlling the Motor Bonnet. It can be installed via pip and used in your projects.

For further assistance, consult the Adafruit Motor Bonnet forums or contact Adafruit support.