|
ATMEGA328-PU |
x 1 | |
|
LCD 16,2 |
x 1 | |
|
DC_RELAY |
x 1 |
Build a 12V Battery Autocut System with LCD Display
Are you looking for an efficient and affordable way to protect and monitor your 12V battery system? In this tutorial, we will guide you through the process of creating a 12V Battery Autocut System with an LCD display for monitoring. This project is ideal for DIY enthusiasts and makers who want to control charging and discharging cycles automatically.
Below, we'll cover the complete circuit design, list of components, and code required for this project. The design is based on the ATmega328P microcontroller and features a 16x2 LCD for easy status updates.
Circuit Diagram
The circuit diagram provides a clear layout of how components should be connected. You can view it in the image provided above. Below is a description of the key elements:
Key Components
- ATmega328P: Acts as the brain of the system, handling voltage sensing and relay control.
- 16x2 LCD Display: Displays the current battery voltage, charging status, and load status.
- Relays: Controls the connection of the load and charger to the battery.
- Voltage Divider (10kΩ and 5.6kΩ): Reduces the battery voltage to a level suitable for ADC input.
- Buttons: Used for manual full-cut and low-cut settings.
- Diodes (1N4007/1N5408): Prevent reverse current and protect the circuit.
- BC547 Transistors: Drives the relays.
Pin Configuration
LCD Pins:
RS: Pin 4
E: Pin 3
D4-D7: Pins 5-8
Relays:Load Relay: Pin 13
Charge Relay: Pin 12
Voltage Sensing:
Analog Pin A0
Ensure proper connections as shown in the schematic diagram to avoid errors.
PCB Design & Order from PCBWay.com
To make your project more professional and reliable, designing a PCB is a great choice. With PCBWay.com, you can easily create and order your custom PCB for this project. Here’s how:
Design Your PCB:
Use software like EasyEDA or KiCAD to create the PCB layout based on the schematic.
Ensure proper placement of components such as the ATmega328P, relays, voltage divider, and LCD.
1. Upload to PCBWay:
Export the Gerber files from your PCB design software.
Visit PCBWay.com and create an account.
Upload your Gerber files and select specifications like PCB size, layer count, and color.
2. Order and Assemble:
Place your order and wait for the PCB to be delivered.
Once you receive the PCB, solder the components following the layout.
Using PCBWay ensures high-quality PCBs at an affordable price. They also provide assembly services if you prefer a ready-to-use board.
Code for the 12V Battery Autocut System Below is the Arduino code for this project:
#include <LiquidCrystal.h>
// Pin Definitions
#define LOAD_RELAY_PIN 13
#define CHARGE_RELAY_PIN 12
#define VOLTAGE_SENSOR_PIN A0
// LCD Pin Configuration
LiquidCrystal lcd(4, 3, 5, 6, 7, 8);
// Voltage Cutoff Levels
#define FULL_CUT_VOLTAGE 13.6 // Maximum voltage before charging stops
#define LOW_CUT_VOLTAGE 10.6 // Minimum voltage before load disconnects
// Variables
float batteryVoltage = 0;
void setup() {
lcd.begin(16, 2); // Initialize the LCD
lcd.print("12V AutoCut");
delay(2000);
// Configure relay pins as output
pinMode(LOAD_RELAY_PIN, OUTPUT);
pinMode(CHARGE_RELAY_PIN, OUTPUT);
// Start with relays off
digitalWrite(LOAD_RELAY_PIN, LOW);
digitalWrite(CHARGE_RELAY_PIN, LOW);
}
void loop() {
// Read battery voltage
int sensorValue = analogRead(VOLTAGE_SENSOR_PIN);
batteryVoltage = (sensorValue / 1023.0) * 5.0 * ((10.0 + 5.6) / 5.6); // Adjust for voltage divider
// Update LCD Display
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Battery: ");
lcd.print(batteryVoltage);
lcd.print("V");
// Check voltage levels and control relays
if (batteryVoltage > FULL_CUT_VOLTAGE) {
digitalWrite(CHARGE_RELAY_PIN, LOW); // Stop charging
lcd.setCursor(0, 1);
lcd.print("Charging: OFF");
} else {
digitalWrite(CHARGE_RELAY_PIN, HIGH); // Start charging
lcd.setCursor(0, 1);
lcd.print("Charging: ON ");
}
if (batteryVoltage < LOW_CUT_VOLTAGE) {
digitalWrite(LOAD_RELAY_PIN, LOW); // Disconnect load
lcd.setCursor(0, 1);
lcd.print("Load: OFF ");
} else {
digitalWrite(LOAD_RELAY_PIN, HIGH); // Connect load
lcd.setCursor(0, 1);
lcd.print("Load: ON ");
}
delay(1000); // Update every second
}
Code Explanation
Voltage Measurement: The battery voltage is sensed through a voltage divider and converted to a readable value using the ADC.
Relay Control Depending on the voltage levels, the relays are turned on or off to control charging and load connection.
LCD Updates: The current status (voltage, charging, and load state) is displayed on the LCD.
Step-by-Step Assembly Instructions
- Gather Components: Collect all required components listed above.
- Connect the Circuit: Use the schematic diagram to connect all components accurately.
- Upload Code: Use the Arduino IDE to upload the code to the ATmega328P microcontroller.
- Test the System: Power the circuit and monitor the LCD for status updates. Verify the relays are working as expected based on voltage thresholds.
Applications
Solar charge controllers
Battery protection systems
DIY battery management systems
This project ensures the longevity of your battery by preventing overcharging and deep discharging. With a straightforward design and reliable components, you can easily build your own 12V Battery Autocut System.
Video Reference:

Build a 12V Battery Autocut System with LCD Display
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.

Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW
ESP32-S3 4.3inch Capacitive Touch Display Development Board, 800×480, 5-point Touch, 32-bit LX7 Dual-core Processor
BUY NOW
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(0)
- Likes(2)

-
MANORANJAN DAS Jan 29,2025
-
RichardV31 Jan 17,2025
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Estiak Khan
-
Make a 16-Channel Home IoT project using NodeMCU ESP32 WROOM Module If you're looking to build a versatile IoT device capable of controlling up to 16 appliances or devi...
-
DIY Pure Sine Wave Inverter Making At Home DIY Pure Sine Wave Inverter Making at Home Using EGS002 Module: A Complete GuideBuilding your own pu...
-
Build a MIND-BLOWING Mini Oscilloscope at Home with EST Projects Build a MIND-BLOWING Mini Oscilloscope at Home with EST ProjectsEver wondered how you can measure an...
-
Best IOT Project Making At Home using Microcontroller || PCBway https://www.pcbway.com/?from=technology4powerEvery electronic device needs PCBs. Are you looking for...
-
Universal Battery AutoCut Charge Controller with LCD - DIY at Home Are you looking to build a reliable and efficient battery AutoCut charge controller? Look no further...
-
PIC16F877A Trainer Board Build Your Microcomputer || Home-Made Microcontroller Master Trainer Tutorial Banglahttps://www.pcbw...
-
Autocut DC Mini IPS for DC 12V Load Autocut DC Mini IPS for DC 12V LoadIf you are looking for a reliable Autocut DC Mini IPS for DC 12V ...
-
Build a 12V Battery Autocut System with LCD Display Are you looking for an efficient and affordable way to protect and monitor your 12V battery system? ...
-
DIY Transistor Tester | Build Your Own LCR Meter at Home with Arduino Nano Are you fascinated by electronics and want to create your own tools for testing components? Building...
-
🎮 DIY Arduino Nano Snake Game Console with OLED Display DIY Arduino Nano Snake Game Console with OLED Display and ButtonsDo you love retro games? Want to bu...
-
DIY 150W IPS Making At Home with Auto Changeover System | Mini IPS 2025 How to Make an Automatic 150W IPS Using Two Circuit ModulesAre you looking for a reliable and effici...
-
DIY RTC Digital Clock with Professional PCB Design In this blog post, we will guide you through making a DIY RTC Digital Clock using an Arduino UNO and...
-
🚀 DIY Long Backup Mini DC IPS | Make at Home Using a UPS Transformer! 💡 DIY Long Backup Mini DC IPS | Make at Home Using a UPS Transformer! IntroductionBuilding a Mini DC I...
-
How to Make a Simple DIY Mini DC Automatic IPS at Home Looking for a reliable power backup solution for your DC appliances? Building a Mini DC Automatic IP...
-
DIY Easily Make a Universal Any Type of Battery Charge Controller At Home DIY Easily Make a Universal Any Type of Battery Charge Controller At HomeIf you’re into DIY electron...
-
Make a 16-Channel Home IoT project using NodeMCU ESP32 WROOM Module If you're looking to build a versatile IoT device capable of controlling up to 16 appliances or devi...
-
DIY Pure Sine Wave Inverter Making At Home DIY Pure Sine Wave Inverter Making at Home Using EGS002 Module: A Complete GuideBuilding your own pu...
-
Build a MIND-BLOWING Mini Oscilloscope at Home with EST Projects Build a MIND-BLOWING Mini Oscilloscope at Home with EST ProjectsEver wondered how you can measure an...
-
Best IOT Project Making At Home using Microcontroller || PCBway https://www.pcbway.com/?from=technology4powerEvery electronic device needs PCBs. Are you looking for...
-
Universal Battery AutoCut Charge Controller with LCD - DIY at Home Are you looking to build a reliable and efficient battery AutoCut charge controller? Look no further...
-
PIC16F877A Trainer Board Build Your Microcomputer || Home-Made Microcontroller Master Trainer Tutorial Banglahttps://www.pcbw...
-
Autocut DC Mini IPS for DC 12V Load Autocut DC Mini IPS for DC 12V LoadIf you are looking for a reliable Autocut DC Mini IPS for DC 12V ...
-
Build a 12V Battery Autocut System with LCD Display Are you looking for an efficient and affordable way to protect and monitor your 12V battery system? ...
-
DIY Transistor Tester | Build Your Own LCR Meter at Home with Arduino Nano Are you fascinated by electronics and want to create your own tools for testing components? Building...
-
🎮 DIY Arduino Nano Snake Game Console with OLED Display DIY Arduino Nano Snake Game Console with OLED Display and ButtonsDo you love retro games? Want to bu...
-
DIY 150W IPS Making At Home with Auto Changeover System | Mini IPS 2025 How to Make an Automatic 150W IPS Using Two Circuit ModulesAre you looking for a reliable and effici...
-
DIY RTC Digital Clock with Professional PCB Design In this blog post, we will guide you through making a DIY RTC Digital Clock using an Arduino UNO and...
-
Commodore 64 1541-II 1581 Floppy Disk Drive C64 Power Supply Unit USB-C 5V 12V DIN connector 5.25
161 1 3 -
Easy to print simple stacking organizer with drawers
87 0 0 -
-
-
-
Modifying a Hotplate to a Reflow Solder Station
1135 1 6 -
MPL3115A2 Barometric Pressure, Altitude, and Temperature Sensor
637 0 1 -
-
Nintendo 64DD Replacement Shell
494 0 2 -
V2 Commodore AMIGA USB-C Power Sink Delivery High Efficiency Supply Triple Output 5V ±12V OLED display ATARI compatible shark 100W
1438 4 3