ardutronic
Published © CC BY-NC-SA

How to Make a Wireless Soldering Iron

Sometimes I feel like soldering outdoors, but I can't take my soldering station outside, so I decided to make a wireless soldering iron.

BeginnerFull instructions provided5 hours1,483
How to Make a Wireless Soldering Iron

Things used in this project

Hardware components

Step-Up Voltage Regulator - 5V
SparkFun Step-Up Voltage Regulator - 5V
×1
USB Li Ion Battery Charger
Adafruit USB Li Ion Battery Charger
×1
ATmega328
Microchip ATmega328
×1

Software apps and online services

Arduino IDE
Arduino IDE

Hand tools and fabrication machines

Soldering iron (generic)
Soldering iron (generic)
Hot Air Station, Industrial
Hot Air Station, Industrial

Story

Read more

Custom parts and enclosures

Case 1

Case 2

Schematics

Schematic

PCB brd

Code

soldering_iron.ino.ino

Arduino
int temp_sens = 9;
int button_pin = 11;
int mosfet = 10;

int led1 = 5;
int led2 = 6;
int led3 = 7;

int button;
int temp;
int seconds = 60;

void setup() {
  pinMode(9, INPUT);
  pinMode(10, OUTPUT);
  pinMode(11, INPUT);
  Serial.begin(9600);

  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
}

void loop() {
  button = digitalRead(button_pin);
  temp = analogRead(temp_sens);
  Serial.print(button);

  if (button == HIGH)
  {
    delay(100);
    seconds = 60;
  }
  
  if (button == LOW)
  {
    delay(1000);
    seconds--;
  }
  if (seconds <= 60 && seconds > 40)
  {
    digitalWrite(led1, HIGH);
    digitalWrite(led2, HIGH);
    digitalWrite(led3, HIGH);
    digitalWrite(mosfet, HIGH);
  }

  if (seconds <= 40 && seconds > 20)
  {
    digitalWrite(led1, HIGH);
    digitalWrite(led2, HIGH);
    digitalWrite(led3, LOW);
    digitalWrite(mosfet, HIGH);
  }

  if (seconds <= 20 && seconds > 0)
  {
    digitalWrite(led1, HIGH);
    digitalWrite(led2, LOW);
    digitalWrite(led3, LOW);
    digitalWrite(mosfet, HIGH);
  }

  if (seconds == 0)
  {
    digitalWrite(mosfet, LOW);
  }

}

void reading()
{
  Serial.print("temp: ");
  Serial.println(temp);
  Serial.print("button: ");
  Serial.println(button);
  delay(500);
}

void test()
{
  if (button == HIGH)
  {
    digitalWrite(led1, HIGH);
    delay(500);
    digitalWrite(led1, LOW);
    delay(500);
    digitalWrite(led2, HIGH);
    delay(500);
    digitalWrite(led2, LOW);
    delay(500);
    digitalWrite(led3, HIGH);
    delay(500);
    digitalWrite(led3, LOW);
    delay(500);
  }
}

Credits

ardutronic

ardutronic

39 projects • 37 followers
I'm 20 years old student of electronic technical college. I'm passionate about electronics as well as editing movies

Comments