

The Arduino Pro Mini v13 is a compact microcontroller board developed by SparkFun, based on the ATmega328P microcontroller. Designed for embedded and space-constrained projects, it offers a minimalist design without onboard USB, requiring an external FTDI or USB-to-serial adapter for programming. This version includes dedicated A4 and A5 headers, making it ideal for I2C communication with sensors and modules.








Below are the key technical details of the Arduino Pro Mini v13:
| Specification | Details |
|---|---|
| Microcontroller | ATmega328P |
| Operating Voltage | 3.3V or 5V (depending on version) |
| Input Voltage (RAW pin) | 3.3V version: 3.4V–12V |
| 5V version: 5V–12V | |
| Digital I/O Pins | 14 (6 PWM outputs) |
| Analog Input Pins | 8 |
| Clock Speed | 8 MHz (3.3V version) or 16 MHz (5V version) |
| Flash Memory | 32 KB (0.5 KB used by bootloader) |
| SRAM | 2 KB |
| EEPROM | 1 KB |
| Communication Protocols | UART, SPI, I2C |
| Dimensions | 18 mm x 33 mm |
The Arduino Pro Mini v13 features a total of 24 pins, including power, digital I/O, and analog input pins. Below is the pin configuration:
| Pin | Description |
|---|---|
| RAW | Input for unregulated voltage (3.4V–12V for 3.3V version, 5V–12V for 5V version) |
| VCC | Regulated output voltage (3.3V or 5V, depending on the board version) |
| GND | Ground connection |
| Pin | Description |
|---|---|
| D0-D13 | General-purpose digital I/O pins. Pins D3, D5, D6, D9, D10, and D11 support PWM. |
| Pin | Description |
|---|---|
| A0-A7 | Analog input pins. Can also be used as digital I/O pins. |
| Pin | Description |
|---|---|
| A4 | Dedicated SDA pin for I2C communication |
| A5 | Dedicated SCL pin for I2C communication |
| RST | Reset pin. Pull low to reset the microcontroller. |
Powering the Board:
Programming the Board:
Connecting I2C Devices:
Using Digital and Analog Pins:
pinMode() function.analogRead() function.Below is an example of how to connect and program the Arduino Pro Mini v13 to read data from an MPU6050 sensor:
| Arduino Pro Mini Pin | MPU6050 Pin |
|---|---|
| A4 (SDA) | SDA |
| A5 (SCL) | SCL |
| VCC | VCC |
| GND | GND |
#include <Wire.h>
#include <MPU6050.h>
MPU6050 mpu;
void setup() {
Wire.begin(); // Initialize I2C communication
Serial.begin(9600); // Start serial communication for debugging
// Initialize MPU6050
if (!mpu.begin(MPU6050_SCALE_2000DPS, MPU6050_RANGE_2G)) {
Serial.println("Could not find a valid MPU6050 sensor!");
while (1); // Halt execution if sensor initialization fails
}
Serial.println("MPU6050 initialized successfully!");
}
void loop() {
Vector rawAccel = mpu.readRawAccel(); // Read raw accelerometer data
// Print accelerometer data to the Serial Monitor
Serial.print("X: ");
Serial.print(rawAccel.XAxis);
Serial.print(" | Y: ");
Serial.print(rawAccel.YAxis);
Serial.print(" | Z: ");
Serial.println(rawAccel.ZAxis);
delay(500); // Wait 500ms before the next reading
}
A: No, the Arduino Pro Mini does not have onboard USB. Use an FTDI adapter or USB-to-serial converter for programming and power.
A: The 3.3V version operates at 8 MHz and is suitable for low-power applications, while the 5V version operates at 16 MHz and is better for higher-speed applications.
A: Yes, if the connected I2C devices do not have built-in pull-up resistors, you need to add them (typically 4.7kΩ).
By following this documentation, you can effectively integrate the Arduino Pro Mini v13 into your projects and troubleshoot common issues.