Things used in this project

Hardware components:
11113 01
SparkFun Arduino Pro Mini 328 - 5V/16MHz
×1
HC-05 bluetooth
×1
12002 04
Breadboard (generic)
×1
Male/Male Jumper Wires
×1
826 04
Male/Female Jumper Wires
×1
Rg relay a
RobotGeek Relay
×1
3 AAA enclosed battery case
×1
2S LiPo battery 300-1000 mah (XT-60 connector)
×1
0.25 mm Nichrome wire
×1
XT-60 LiPo connector
×1
Heat Shrink Tubing
×1
A plastic box with detachable lid
×1
Openbuilds wire cable by foot
OpenBuilds Wire Cable - By the Foot
×1
Terminal strip block
×1
Hand tools and fabrication machines:
Screwdriver
Wire stripper
Wire cutter
Lighter
Soldering flux
09507 01
Soldering iron (generic)
Cutter
Usb to TTL adapter

Schematics

The circuit schematic
Azqltkq4sjt3pm4vtiix

Code

The code that should be uploaded th the pro miniArduino
The code establishes a software serial connection (for HC-05) bluetooth module.

Then in the loop it listens to the serial connection for incoming communication (from the phone or tablet).

When something is received it will be checked for validity in the isPinNrValid function ( it should a pin number from 3 to 9), and then it toggles the pin on for "igniteTime". Ignite time is a constant initially defined by me for 2500 ms, you can change that to whatever you like, i've found out that my fireworks would ignite successfully given that interval.
#include <SoftwareSerial.h>

SoftwareSerial bluetooth(12, 13); // RX, TX
const int igniteTime = 2500;

void setup()
{
    Serial.begin(9600);	
    bluetooth.begin(9600);    
}

void loop()
{
    if (bluetooth.available() > 0) {
        char received = bluetooth.read();
        Serial.println(received);    
        if (isPinNrValid(received)) {
            togglePin(received);
        }  
    }
}

bool isPinNrValid(char pin)
{
    return pin >= '3' and pin <= '9';
}

void togglePin(char pinNr)
{
   Serial.print("Toggle pin:");Serial.println(pinNr);
   String pin;
   pin += (char) pinNr;
   int number = pin.toInt();
   pinMode(number, OUTPUT);
   digitalWrite(number, HIGH); 
   delay(igniteTime);
   digitalWrite(number, LOW); 
}

Credits

3929d43a4cd96f40add01a926f41919d
danionescu

I'm an electronics enthusiast, passionate about science, and programming.I like the challenges involved with building things from scratch.

Contact

Replications

Did you replicate this project? Share it!

I made one

Love this project? Think it could be improved? Tell us what you think!

Give feedback

Comments

Similar projects you might like

Launch Pad Count Down Sequence Display
Easy
  • 25
  • 2

Work in progress

A 7 Segment Display of a Countdown from 9 to 0 for a Launch Pad Control Panel.

Mask with Blinking Eye
Easy
  • 66
  • 3

Protip

Makes a great mask more eye-catching when one eye is blinking. Has an on-off switch, is powered by a cell , and driven by an ATtiny85.

Know the Temp of Your Home From Anywhere with Arduino Cloud!
Easy
  • 1,539
  • 9

Full instructions

Ever wanted to know the temperature of your home from somewhere? Here's an easy way to do it with Arduino Cloud and the Yun Shield!

Water Softener
Easy
  • 407
  • 6

Full instructions

Sweeping frequency magnetic hard water conditioner

PHPoC - Detect Someone Taking Your Stuff
Easy
  • 613
  • 14

When your stuff is being taken away by a thief, PHPoC makes an alert and sends a notification to you via Gmail.

Safe City: A Device to Keep You Safe
Easy
  • 874
  • 8

Full instructions

The device will keep you safe. Just have to click a button and your precise location will be shared.

Sign up / LoginProjectsPlatformsTopicsContestsLiveAppsBetaFree StoreBlog