🔍 Search on DIYTechStudio

Monday, May 25, 2020

How to RESET Arduino - Arduino Tutorials #5



In the video, this section of the post starts at 7:15min mark and it is demonstrated using a simple LCD connection

To rest an Arduino UNO board just click the Reset button which will reset the board to its initial state



Affiliate Links for Arduino UNO
Thank You For Reading Guys !!!

How to generate HEX file for software simulation in Arduino - Arduino Tutorial #4



In the video, this section of the post starts at 6:00min mark


To generate a HEX file for simulation, first, create a sketch and then save the sketch inside a folder.

Next, compile the sketch using the tick button

After that Go to Sketch & click on Export Compiled Binary to export the HEX file


Next, open any Simulation software like Proteus which supports Arduino and create the circuit according to your sketch and link the HEX standard file by double-clicking on the controller chip to simulate your circuit.

Affiliate Links for Arduino UNO
Thank You for reading Guys !!!


How to access built in serial monitor of Arduino IDE - Arduino Tutorial #3



In the video, the serial monitor section begins @ 5:35min mark

To explain built-in serial monitor I have connected a Trimmer(pin1 to GND, center pin to A0 & pin 3 to 5V) to the Arduino & powered it ON and uploaded the sketch AnalogReadSerial from the library

Now to open the serial monitor go-to tools & click on Serial Monitor




Now as you can see when I adjust the trimmer the value changes in the Serial Monitor. To get the values to the serial monitor you need few statements written in the sketch (detailed explanation can be found in the latter part of the post)



Important statements should be written and steps to take to get the values in the Serial Monitor

1. Serial.begin(9600); - this statement will always be declared inside the Void Setup() {} This initializes serial communication at 9600 bits per second.

2. Serial.println();  - This statement prints values in the Serial Monitor

3. In the serial monitor make sure that you set the baud rate to 9600 which will be in the right-hand bottom corner

Affiliate Links for Arduino UNO
Thank You For Reading

How to add Libraries to your Arduino IDE (internally & externally) - Arduino Tutorial #2


In this post, I will show you how to add libraries to your Arduino IDE internally & externally. 

Adding library internally (@4min mark in the video)

To add libraries go to Tools & select Manage Libraries which will open the Library Manager

Under library manager, you can find all the libraries which are installed or you can find various libraries for various applications which you can install

If you find any libraries which are not installed just click the install button to install it

Once the installation is complete close the Library manager and re-launch the Arduino IDE

Sunday, May 24, 2020

Get to Know Arduino IDE & Arduino UNO - Arduino Tutorial #1

In this tutorial post, you will learn the basic of Arduino IDE & Arduino UNO. If you're interested in learning via video you can watch the below video which covers all the topics which are shared in this post.

Note: The video doesn't cover the explanation for the sketch


Click here to watch the video on YouTube

Whom does this post help?

This post is helpful for people who are just getting started with Arduino and who have no knowledge of Arduino IDE or Arduino UNO. 

About Arduino

Arduino is an open-source electronics platform that offers various kinds of Microcontroller boards and shields for various types of applications. Arduino also offers easy to use software. Arduino boards are capable of reading inputs from various sensors like LDR, LM35, Gas sensors & many more.

About Arduino UNO which will be used in this post


Source: Arduino Website

Arduino Uno is based on the microcontroller ATmega328P which is a high-performance Microchip 8-bit AVR RISC microcontroller combines 32KB ISP flash memory with simultaneously read-write capabilities, 1024 bytes EEPROM, 2KB SRAM, 23 I/O lines, 32 working registers, 3 flexible timer/counters with compare modes, Internal & external interrupts, serial programmable USART, a byte-oriented 2- wire serial interface, SPI serial port, and a 6 channel 10-bit A?D converter.

Arduino UNO has 14 digital pins of which 6 pins can be used as PWM outputs, 6 Analog Pins, Vin pin for input voltage, 2 GND points, a 5V pin, a 3.3V pin, a built-in LED for output which is associated to the PIN 13 of the UNO (built-in LED can be called in the sketch using LED_BUILTIN), a 16 MHz resonator, a USB connection for power and programming, a DC power jack, ICSP header & a reset button.

The operating voltage of the Arduino UNO is 5V & the recommended input voltage is between 7 to 12V
                                                      Source: Arduino Website

Affiliate Links for Arduino UNO


Installing Arduino IDE

To download the Arduino IDE click herescroll down and select the Arduino IDE according to your OS. Once the download is complete, extract the files from .zip folder
and open the extracted folder & click on Arduino executable file which should open the Arduino IDE. Arduino website now also offers a web-based editor which you can check by clicking here.

Running First Sketch

To run the first sketch first connect the Arduino UNO to a laptop or a desktop and then open the Arduino IDE

After opening the IDE go to Tools > Board > & select Arduino UNO
Next, go to the Port > select your COM port.
Next, let's upload the example sketch which comes along with Arduino IDE. To upload the example sketch go to File > Basics and select Blink Sketch

Next, click on Verify to compile the sketch

and then click on upload button to upload your sketch to Arduino UNO

Now if your upload is successful you can see TX, RX LED's rapidly flashing
and then the L LED will start blinking.


How to connect external components with Arduino UNO

Take a breadboard and mount 220-ohm resistor and connect +ve lead of the LED to one end of the resistor, next connect two breadboard wires to the outer end of the circuit as shown in the below image



Next, connect the Red wire to Pin 9 and Black wire to the GND pin. After making the connections connect the Arduino UNO to a laptop or desktop and open the Arduino IDE and then follow the process showed in "Running First Sketch".

Note: For this example, you need to use the sketch Fade which is under File > Examples > Basics > Fade


Sketch Explanation for sketches used in this post

Blink Sketch: Blink is an example sketch which comes with Arduino IDE


Sketch Start
void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}
Sketch End

Sketch Explanation - Blink

void setup() {} - Setup function runs when you power the board or press reset button. 
void loop() {} - Loop function runs statements inside it over and over again forever
pinMode(LED_BUILTIN, OUTPUT); - declaring the built in digital pin LED_BUILTIN to Output
digitalWrite(LED_BUILTIN, HIGH); - This turns the LED ON (Voltage = +5V)
digitalWrite(LED_BUILTIN, LOW); - This turns the LED OFF (Voltage = 0V)
delay(1000); - delays execution of next statement by 1second(1second = 1000milli Second)
  
Fade Sketch: Fade is an example sketch which comes with Arduino IDE

Sketch Start
int led = 9;
int brightness = 0;
int fadeAmount = 5;
void setup() {
  pinMode(led, OUTPUT);
}
void loop() {
  analogWrite(led, brightness);
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(30);
}
Sketch End

Sketch Explanation - Fade

int led = 9; - assigning PIN 9 to LED
int brightness = 0; - Assigning the brightness of the LED at the start
int fadeAmount = 5; - Points to fade the LED by

brightness = brightness + fadeAmount; - changing the brightness for the next time when it goes through the loop. Lets see the iteration  of the this statement
1st Iteration brightness = 0 + 5;so brightness = 5 Now2nd Iteration brightness = 5 + 5  - at the end of 2nd Iteration the brightness = 10. this will continue until the brightness value becomes 255
if (brightness <= 0 || brightness >= 255) {fadeAmount = -fadeAmount;} - this reverse the direction of fading at the end the fade. 

A detailed explanation of the IF Statement
if (brightness <= 0 || brightness >= 255) this translates to 'if brightness is less than or equal to zero OR brightness greater than or equal to 255 enter inside or get out'

When brightness reaches the value 255 one of the conditions inside the IF statement (brightness >= 255) becomes true and goes through the IF statement. 

Once inside the IF statement, the statement fadeAmount = -fadeAmount; assigns a new value to the fadeAmount which is -5 and then exists the IF statement

So now brightness = 255 + (-5); and this Iteration will continue until brightness reaches 0 when this happens it enters the IF statement once again since the condition brightness <= 0  becomes true and the new value for the fadeAmount will be assigned which now becomes +5 since negative multiplied by negative is positive and this cycle goes on forever


Thank You for Reading Guys !!!

Wednesday, May 13, 2020

How to make a custom DIY Temperature Meter using Bar Graph & Atmega328p

Video

In this post, I will show you how to make a custom DIY temperature meter using bar graph & Atmega328p

Below is the circuit diagram which was created in KiCAD for this project which includes parts like 
  • ​1*Atmega328p
  • 1*Bar Graph
  • 1*10K Ohm
  • 10*220 Ohm
  • 1*LM35
  • 1*Terminal Block
  • 2*22pf Ceramic Capacitor
  • 1*16 MHz Crystal
  • 1*Custom Made PCB by ​JLCPCB.com

Theory

The main section of the circuit (Atmega328p, 22pF Ceramic Capacitor, 16MHz Crystal, 10K ohm) is the downsized version of the Arduino UNO

The input section of the circuit is an integrated analog temperature sensor whose electrical output is proportional to Degree Centigrade (LM35). The output of the LM35 is connected to pin 23 of the Atmega328p.


The output section is the remaining section of the circuit which includes Bar graph and 10*220 ohm resistor


Affiliate Links

Atmega328p
Bar Graph
16 MHz Crystal
Next, I created the PCB layout in KiCAD & ordered the PCB board through PCB fabricator JLCPCB.com


Next, I uploaded the below sketch to the Atmega328p
  • Read: How to upload the sketch to an Atmega328p

Sketch Start
float val;
float tempPin = A0;
int ledCount=10;
int thisLed;
int ledPin[] = {
  3, 4, 5, 6, 7, 8, 9, 10, 11, 12
};
int ledON=HIGH;
int ledOFF=LOW;
void setup()
{
Serial.begin(9600);
 for (int thisLed = 0; thisLed < ledCount; thisLed++) {
  pinMode(ledPin[thisLed], OUTPUT);
 }
}
void loop()
{
val = analogRead(tempPin);
float mv = ( val/1024.0)*5000;
float cel = mv/10;
float farh = (cel*9)/5 + 32;
    if (cel >= 25 && cel < 26 ) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledOFF);
          digitalWrite(ledPin[2], ledOFF);
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 26 && cel < 27) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledOFF);
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 27 && cel < 28) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 28 && cel < 29) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 29 && cel < 30) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 30 && cel < 31) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     } else if(cel >= 31 && cel < 32) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     } else if(cel >= 32 && cel < 33) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledON); 
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     } else if(cel >= 33 && cel < 34) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledON); 
          digitalWrite(ledPin[8], ledON); 
          digitalWrite(ledPin[9], ledOFF);
     } else if (cel >= 34) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledON); 
          digitalWrite(ledPin[8], ledON); 
          digitalWrite(ledPin[9], ledON); 
     } else if (cel < 25 ) {
          digitalWrite(ledPin[0], ledOFF);
          digitalWrite(ledPin[1], ledOFF);
          digitalWrite(ledPin[2], ledOFF);
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     }
Serial.print("TEMPRATURE = ");
Serial.print(cel);
Serial.print("*C");
Serial.println();
delay(1000);
/* uncomment this to get temperature in farenhite
Serial.print("TEMPRATURE = ");
Serial.print(farh);
Serial.print("*F");
Serial.println();
*/
}
Sketch End 




Sketch Explanation

The below section of the sketch is where all the variables are declared and initialized

float val;
float tempPin = A0;
int ledCount=10;
int thisLed;
int ledPin[] = {
  3, 4, 5, 6, 7, 8, 9, 10, 11, 12
};
int ledON=HIGH;
int ledOFF=LOW;
void setup()
{
Serial.begin(9600);
 for (int thisLed = 0; thisLed < ledCount; thisLed++) {
  pinMode(ledPin[thisLed], OUTPUT);
 }
}

In this section of the sketch, the analog data is converted to the readable format

val = analogRead(tempPin);   //to read the data from the LM35
float mv = ( val/1024.0)*5000; //Converting the input voltage to digital value (b/w the range 0 to 1023)
float cel = mv/10; //Converting to celcius
float farh = (cel*9)/5 + 32; 
 //Converting to Fahrenheit

In the next section of the sketch, the converted value is passed through a number IF loop to determine how many LED lights should be turned ON

    if (cel >= 25 && cel < 26 ) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledOFF);
          digitalWrite(ledPin[2], ledOFF);
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 26 && cel < 27) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledOFF);
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 27 && cel < 28) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 28 && cel < 29) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 29 && cel < 30) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
    } else if(cel >= 30 && cel < 31) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     } else if(cel >= 31 && cel < 32) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     } else if(cel >= 32 && cel < 33) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledON); 
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     } else if(cel >= 33 && cel < 34) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledON); 
          digitalWrite(ledPin[8], ledON); 
          digitalWrite(ledPin[9], ledOFF);
     } else if (cel >= 34) {
          digitalWrite(ledPin[0], ledON); 
          digitalWrite(ledPin[1], ledON); 
          digitalWrite(ledPin[2], ledON); 
          digitalWrite(ledPin[3], ledON); 
          digitalWrite(ledPin[4], ledON); 
          digitalWrite(ledPin[5], ledON); 
          digitalWrite(ledPin[6], ledON); 
          digitalWrite(ledPin[7], ledON); 
          digitalWrite(ledPin[8], ledON); 
          digitalWrite(ledPin[9], ledON); 
     } else if (cel < 25 ) {
          digitalWrite(ledPin[0], ledOFF);
          digitalWrite(ledPin[1], ledOFF);
          digitalWrite(ledPin[2], ledOFF);
          digitalWrite(ledPin[3], ledOFF);
          digitalWrite(ledPin[4], ledOFF);
          digitalWrite(ledPin[5], ledOFF);
          digitalWrite(ledPin[6], ledOFF);
          digitalWrite(ledPin[7], ledOFF);
          digitalWrite(ledPin[8], ledOFF);
          digitalWrite(ledPin[9], ledOFF);
     } 

The next section of the sketch is optional. This section is to see the temperature in the built-in serial monitor of the Arduino IDE

Serial.print("TEMPRATURE = ");
Serial.print(cel);
Serial.print("*C");
Serial.println();
delay(1000);
/* uncomment this to get temperature in farenhite
Serial.print("TEMPRATURE = ");
Serial.print(farh);
Serial.print("*F");
Serial.println();
*/
}



After receiving the fabricated PCB board I mounted all the components as per the circuit diagram & tested the circuit 




Comparing my circuit result to a commercially available temperature meter



Thank You For Reading Guys !!!

How to make a DIY Studio Light or Soft box

Video

In this post, I will share how to make a low-cost DIY Studio Light with simple parts

First, connect a long wire to a 3 pin plug at the one end



Next, connect the bulb holder to the other end and then insert the LED bulb



Next insert the bulb holder with LED bulb into the Diffuser and connect it to a power source to complete the DIY Studio Light

Tips: Don't run this for a long time since it may damage your LED bulb because of heat

Diffuser Affiliate Link
  • Amazon Ind - https://amzn.to/2Z1iq7J






Thank You For Readings Guys !!!

DIY TV from an Old Laptop Screen with 3D Printed Enclosure


Video

In this post, I will show you how to convert an old laptop screen to a portable TV

To convert your old laptop screen to TV, first remove the bezel covering the LCD panel.


 After removing the bezel note down the model number of the LCD panel and then place an order for the compatible LCD controller board

Tips: While placing the order ask the vendor to connect all the connections or ask for the guide


LCD Controller Board affiliate links:
  • AliExpress - http://s.click.aliexpress.com/e/_s8Vq7U


Next, remove all the connection which are connected to the LCD panel 


 Now connect the controller board to the LCD panel and do simple test to check if everything is working fine

Note: While testing always connect to an input device like a laptop




After making sure everything is working fine, I designed the enclosure for the LCD panel in FreeCAD and printed it with my Ender 3 3D printer

Note: Since my printing area was smaller than the size of the LCD Panel I had to divide the enclosure into 4 section 

Ender 3 3D Printer affiliate links-
  • Amazon US - https://amzn.to/36kClAn
  • Amazon IND - https://amzn.to/2utb7KV
  • AliExpress - http://s.click.aliexpress.com/e/_sGVzjU
  • Banggood - https://www.banggood.in/custlink/KGD3sNqq1M

Next, I connected 4 Ohm 3 Watt speakers to the LCD controller board. Since I could not find suitable JST connector I had to hardwire the speaker connection through the backside of the panel

4 Ohm 3 Watt Speaker Affiliate Links
  • Amazon US - https://amzn.to/38zmPlH
  • Amazon IND - https://amzn.to/30NBWW2
  • AliExpress - http://s.click.aliexpress.com/e/_s0ubvc
  • Banggood - https://www.banggood.in/custlink/GD33AnUkua




Next, I assembled all the parts together and tested it.






Thank You For Reading Guys !!!