Introduction: Arduino Pellet Stove Controller

About: 4th Class Power Engineer

This is built to control a pellet stove. The leds are the signals that will be sent to control the fan motors and auger.

My plan is once I have the board built is to use some triac drivers and triacs to drive the 120 volt circuits. I will update this as I go along. I'm posting this in hopes it will help others as it is an accumulation of research and development to this point.

Step 1: Build the Circuit

Parts

Arduino Uno Rev3

DS3231 real time clock module.

16X2 Lcd screen

I2C backpack for lcd sceen.

3 leds

4 tactile push buttons

Breadboard

Jumper wires.

The circuit is shown in the fritzing diagram above. The brown wire in the circuit connects to the top pin on the back of the lcd back pack. The jumper is removed. This allowed me to control the backlight programmatically.

Step 2: DS3231 Library

I downloaded a library to run the DS3231 clock.

The original library for the DS3231.

Step 3: DS3231 Library Modified

I modified the library a little to make it easier for me to understand it. I included only the functions that I needed for this project.

Step 4: Button Library

The button library I used. I did not modify this and just used it as is.

The libraries can either be imported through the arduino ide or simply add them to the folder usually found at computer/username/documents/arduino/libraries. Worked for me.

Step 5: Library for the LCD

I had to use this library to get the LCD screen working. The original library that comes with the ide does not work with I2C communication so this library is what makes that possible.

Step 6: Program the Arduino

I have uploaded the .ino file I created with the arduino ide. Fully
tested it and it truly works well. I may need to tweak it a little once I add the triacs to get pulse width modulation control for the fan motors. This will vary the speed of the fan motors.

Step 7: