The PCF8591 Module is a useful I²C-based ADC and DAC expansion board that helps microcontrollers read analog sensors and generate analog output signals. It provides 4-channel 8-bit Analog-to-Digital Conversion (ADC) and 1-channel 8-bit Digital-to-Analog Conversion (DAC), making it perfect for projects where your controller has limited ADC pins or you need basic analog output control. This module is widely used with Arduino, ESP8266, ESP32, and Raspberry Pi for sensor reading, voltage monitoring, and analog signal generation.
Core Module Specifications
• Converter IC: PCF8591
• Conversion Type: ADC + DAC combined module
• ADC Channels: 4 × Analog inputs (AIN0–AIN3)
• DAC Channels: 1 × Analog output (AOUT)
• Resolution: 8-bit
Electrical & Interface
• Operating Voltage: 2.5 V – 6 V DC
• Logic Level: Works with 3.3 V and 5 V I²C systems
• Communication Interface: I²C
• Default I²C Address: 0x48 (configurable using address pins)
• Interface Pins: VCC, GND, SDA, SCL
• Analog Pins: AIN0, AIN1, AIN2, AIN3, AOUT
Performance Characteristics
• Stable analog sensor reading with I²C communication
• Suitable for low-speed analog sampling
• Supports basic analog output generation via DAC
• Good choice for multi-sensor projects on one MCU
Physical Characteristics
• Module Type: Compact ADC/DAC expansion board
• Onboard Trimpot: Adjustable reference / input scaling (variant dependent)
• Jumper Options: Address selection (A0/A1/A2)
• Mounting Holes: Provided for easy installation
Compatibility
• Arduino Uno / Nano / Mega
• ESP8266 / ESP32
• Raspberry Pi (I²C support)
• STM32 controllers
• Sensor modules requiring analog input
Key Advantages
• Adds extra analog inputs using only I²C pins
• Built-in DAC output for simple analog control
• Easy to connect and beginner-friendly
• Great for expanding boards with limited ADC pins
Technical Insights
• 8-bit resolution means 256 steps only (not for high precision)
• DAC output is useful for basic voltage level generation
• Proper grounding improves ADC stability
• I²C pull-up resistors may be needed on some setups
Applications
• Reading multiple analog sensors over I²C
• Light, temperature, and voltage monitoring
• Simple analog output control projects
• Arduino + Raspberry Pi analog expansion
• Educational ADC/DAC experiments
Pro Tip
• Use averaging in code for smoother ADC values
• Avoid long analog wires to reduce noise
• Ideal for slow-changing signals like LDR, potentiometer, temp sensors
• For high precision, consider ADS1115 (16-bit ADC)
Package Includes
• 1 × PCF8591 ADC/DAC Converter Module
