|
ATTiny85 |
x 1 | |
|
Pushbutton |
x 1 | |
|
Slide Switch |
x 1 | |
|
Arduino UNO (optional) |
x 1 | |
|
L7805 |
x 1 | |
|
9v Battery |
x 1 | |
|
9v Battery clip (optional) |
x 1 | |
|
Infrared LED |
x 1 |
|
arduino IDEArduino
|
|
|
3D Printer (generic) |
Infrared Launch Controller
Introduction
Have you ever wanted to remotely launch a rocket, drone or other device using infrared technology? In this tutorial, we will walk you through the process of building your very own infrared launch controller. This project is perfect for hobbyists and those interested in learning about electronics and coding. This project is better accompanied with the Remote Igniter + 3D printed Case. Here is the link: https://www.pcbway.com/project/shareproject/Remote_Ignitor_3D_printed_Case_1a402efd.html
Required Components:
- Custom PCB (Printed Circuit Board)
- ATTiny85 Microcontroller
- Push Button
- 9V Battery
- Slide Switch
- Infrared LED (Light Emitting Diode)
- L7805 Voltage Regulator
Let's start by understanding the role of each component in our infrared launch controller, then we will dive into the process of coding, soldering, and assembling the project.
Component Roles
- Custom PCB: This serves as the foundation of our project, connecting all components and providing a platform for the circuit.
- ATTiny85: The microcontroller that manages the logic and functionality of our launch controller.
- Push Button: Acts as a trigger to initiate the infrared signal for launching.
- 9V Battery: Provides power to the circuit.
- Slide Switch: Controls the power supply to the circuit.
- Infrared LED: Emits the infrared signal to remotely launch the device.
- L7805 Voltage Regulator: Ensures a stable 5V supply to the ATTiny85 and other components.
Coding the ATTiny85 using Arduino UNO and Arduino IDE
- Download and install the Arduino IDE from the official Arduino website.
- Connect your Arduino UNO to your computer using a USB cable.
- Open the Arduino IDE and make a new file.
- Paste the code given on this project.
- Go to Tools > Board and select "Arduino/Genuino UNO."
- Under Tools > Port, select the appropriate port for your Arduino UNO.
- Upload the code to your Arduino UNO by clicking the Upload button (right arrow icon) in the Arduino IDE.
- Remove the ATmega328P chip from your Arduino UNO.
- Connect the ATTiny85 to your Arduino UNO using jumper wires as follows:
- ATTiny85 Pin 2 to Arduino UNO Pin 13 (SCK)
- ATTiny85 Pin 1 to Arduino UNO Pin 12 (MISO)
- ATTiny85 Pin 0 to Arduino UNO Pin 11 (MOSI)
- ATTiny85 Pin 3 to Arduino UNO Ground (GND)
- ATTiny85 Pin 8 to Arduino UNO 5V
- Go to Tools > Board and select "ATTiny25/45/85."
- Under Tools > Processor, choose "ATTiny85."
- Under Tools > Clock, select "Internal 1 MHz."
- Under Tools > Programmer, select "Arduino as ISP."
- Click on the Burn Bootloader button in the Arduino IDE to burn the bootloader to the ATTiny85.
- Upload the modified Blink code to the ATTiny85 by clicking the Upload button in the Arduino IDE.
Soldering the Components onto the PCB
- Begin by soldering the L7805 voltage regulator to the designated area on the custom PCB.
- Next, solder the slide switch to the PCB.
- Solder the push button to the PCB in the designated location.
- Solder the infrared LED to the PCB, ensuring correct polarity (the longer leg is the positive/anode, the shorter leg is the negative/cathode).
- Solder the ATTiny85 microcontroller to the PCB, taking care to align the pins correctly with the corresponding pads on the board. It is recommended to use a socket for the ATTiny85, which will allow easy replacement or reprogramming in the future.
- Double-check all component placements and solder connections to ensure they are accurate and secure.
Assembling the Infrared Launch Controller
- Attach the 9V battery to the battery clip and secure the clip to the custom PCB using adhesive or screws.
- Connect the battery clip's positive lead (usually red) to the input pin of the L7805 voltage regulator, and the negative lead (usually black) to the ground of the PCB.
- Verify that the slide switch is in the "off" position to prevent any unintended activation while assembling.
- Neatly bundle and secure any loose wires to prevent them from getting caught or tangled during operation.
Testing Your Infrared Launch Controller
- Turn on the slide switch to supply power to the launch controller.
- Verify that the circuit is functioning as intended by observing the infrared LED. If you have a smartphone with a camera that can detect infrared light, point the camera at the LED and observe the screen while pressing the push button. You should see the LED emitting light on the screen when the button is pressed.
- Perform a range test to ensure that the infrared signal is strong enough to reach the target device. Keep in mind that the range can be affected by environmental factors such as direct sunlight and obstacles.
- Finally, test the launch controller with your intended device, ensuring that the device responds correctly to the infrared signal.
Conclusion
Congratulations on building your very own infrared launch controller! By following this tutorial, you have successfully learned how to code an ATTiny85 microcontroller using an Arduino UNO and Arduino IDE, as well as soldering components onto a custom PCB. You can now remotely launch your favorite devices using your custom-made controller. Enjoy your new gadget, and don't hesitate to explore further and experiment with new ideas and improvements.
#include <Arduino.h>
#include <IRremote.h>
// Pin definitions
const int buttonPin = 5; // PB5
const int irLedPin = 3; // PB3
// IR settings
IRsend irsend(irLedPin);
unsigned long irCode = 0x20DF10EF; // Generic NEC IR code to turn on TVs
int khz = 38; // 38kHz carrier frequency for the NEC protocol
// Button state
int buttonState = 0;
int lastButtonState = 0;
void setup() {
// Set the button pin as input with internal pull-up resistor
pinMode(buttonPin, INPUT_PULLUP);
// Initialize IR output
irsend.begin();
}
void loop() {
// Read the button state
buttonState = digitalRead(buttonPin);
// If the button is pressed (LOW) and was previously not pressed
if (buttonState == LOW && lastButtonState == HIGH) {
// Send the IR code
irsend.sendNEC(irCode, khz);
delay(100); // Add a small delay to debounce the button
}
// Update the last button state
lastButtonState = buttonState;
}
Infrared Launch Controller
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
- Comments(0)
- Likes(0)
- 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 Inaki Iturriaga
- GPS Mobile Beacon Building a GPS Emergency Beacon: A DIY TutorialWelcome to our latest DIY project: creating a GPS Eme...
- Wireless RFID Card Copier. Wireless RFID Card CopierIn today's digital world, security and accessibility are of paramount impor...
- Piezo Alert System. Within the fast-evolving sphere of security tools and home automation, creativity often paves the wa...
- Wifi Weather Station - Sensors board WiFi Weather Station - Sensor unitIn our digital era, many electronics projects integrate diverse se...
- RC Receiver Build Your Own RC ReceiverHarnessing advanced electronics and precise control systems, the RC Receiv...
- Universal RC Controller Build Your Own Universal RC RemoteHarnessing the power of custom PCBs and wireless communication, th...
- Continuous GPS Tracker This compact and efficient tracker provides real-time location updates, making it ideal for surveill...
- Air Quality Monitor Welcome to our DIY tutorial on assembling an Air Quality Monitoring Device. This project is perfect ...
- Automatic Watch Winder Automatic Watch WinderIn the realm of luxury timepieces and watch aficionados, an automatic watch is...
- Handheld GPS Within the swiftly advancing realm of portable technology and travel essentials, innovation often sh...
- Dual Motor Controller for Model Robotics In the thrilling world of robotics and DIY engineering, innovation continues to soar to new heights....
- Altitude Indicator with Beeper for Rocketry Altitude Indicator for Model RocketryIn our ever-advancing technological landscape, countless projec...
- Wifi Weather Station - Display unit WiFi Weather Station - Display UnitIn this technologically advanced age, countless electronics proje...
- Positon Breakout Board Position Sensors Breakout Board In today's era of advanced technology, many electronics projects req...
- Ambient Sensors Breakout Board In today's world, electronics projects often require the integration of multiple sensors to collect ...
- Infrared Launch Controller IntroductionHave you ever wanted to remotely launch a rocket, drone or other device using infrared t...
- Altimeter Datalogger with Display. Building TutorialAltimeter Datalogger with Display.Components needed:BMP280 sensorI2C to 16x2 displa...
- Remote Igniter + 3D printed Case. Remote IR Igniter.Build an Infrared remote ignitor for model rocket testing and launching!This guide...
-
-
-
kmMiniSchield MIDI I/O - IN/OUT/THROUGH MIDI extension for kmMidiMini
110 0 0 -
DIY Laser Power Meter with Arduino
162 0 2 -
-
-
Box & Bolt, 3D Printed Cardboard Crafting Tools
153 0 2 -
-
A DIY Soldering Station Perfect for Learning (Floppy Soldering Station 3.0)
554 0 2