Arduino Rework Station

49K20451

Intro: Arduino Rework Station

What about repairing your old graphics card, gaming machine or laptop with your own BGA Rework Station made from old stuff? You can reuse your old halogen heater to create a preheater for your BGA Rework Station, an arm from an old desk lamp in order to hold and move the top heater, aluminum curtain rails to hold your circuit boards, shower spiral cable to hold the thermocouples and an Arduino board as a PID temperature controller!

First of all, what a BGA Rework Station is? Modern IC chips (CPUs, GPUs, etc.) do not have legs but a ball grid array (BGA) of solder balls. In order to solder/desolder a chip like this, you need a machine that heats up the IC until ~230 Celsius without stretching the circuit board or produce thermal shock to the IC chip. That's why you need a temperature controller. These machines cost from 400$ to 1200$+ in order to buy one. This project's total cost is around 130$. You can read more about BGAs and Rework Station at wiki. Let's start! Materials:



• A four lamp halogen heater ~1800w (as bottom heater)
• 450w ceramic IR (as top heater)
• Aluminum curtain rails
• Shower spiral cable
• Hard thick wire
• Desk lamp arm
• Arduino ATmega2560 board
• 2x SSR 25-DA2x Adafruit MAX31855K breakout board (or make diy like boards i did)
• 2x K-type thermocouple
• 220to5v DC power supply @0.5A
• Character LCD 2004 module
• 5v buzzer
• Screws, buttons, cables and switches of your choice
• Average electronics knowledge


STEP 1: Bottom Heater: Reflector, Lamps, Case

Find an old halogen heater, open it and take out the reflector and the four lamps. Be careful not to break the lamps! Here you can use your imagiantion about the case that holds the reflector and the lamps. You can use for example an old desktop PC case and put the reflector, the cables and the lamps in there. I used iron sheets of 1mm thickness and made my own cases for the bottom heater, the top heater and the arduino controller. As i said before you can be more creative than me and use something else as a case.

The heater i used was a 1800w heater (4x450w parallel). Use the wires from the heater and connect the four lamps in parallel. You can put an AC input plug as i did or connect a cable directly from the bottom heater to the controller.

STEP 2: Bottom Heater: Pcb Holding System

After finishing your bottom heater's case, measure the bigger side of the window and cut 2 pieces of your aluminum curtain rail. You also need 6 pieces, each one is half the size of the window's small side. Drill holes at the two ends of the bigger pieces, at one end of the smaller pieces and at the bigger side of the window. Before screwing the pieces to the case, you need to make a nut-holding-mechanism, like i did in the above fotos, in order to slide the ends of smaller rails on the biger rails.

After inserting the nuts in the rails and screwing everything together, you can use a screwdriver to move, slide or tighten every screw in order to fit in your pcb's size and shape.

STEP 3: Bottom Heater: Thermocouple Holders

For the thermocouple holders, measure the diagonal of the bottom heater's window and cut two pieces of your shower spiral cable. Unfold your hard wire and cut 2 pieces, each one is 6cm longer than the spiral cable. Pass the hard wire and your thermocouple through the spiral cable and bend both ends of the wire like i did in the images above. Left the one end bigger in order to screw it in one of the rail's screws. That's it!

STEP 4: Top Heater: Ceramic Plate

For the top heater, i used a 450w ceramic IR heater. You can find them on aliexpress as spare parts from reballing machines. The tricky part is to make a nice case for your heater with a proper airflow. Next in the list, top heater's arm-holder.

P.S. To find the proper P, I and D settings for the ceramic heater is a pain in the ass because they are heating up/colding down very slowly.

STEP 5: Top Heater: Arm

Find a nice old desk lamp with an arm and take it apart. You have to make right measurements depending on the lamp you got in order to cut it, because the top heater will have to reach each corner of your bottom heater. So, attach your top heater's case first, then cut the X axis, make the right measurements, and then finally cut the Z axis part of the arm.

STEP 6: Arduino PID Controller

Find the right materials and make yourself a strong and secure case for the arduino and the other accessories.

You can "cut n' solder" every wire that connects to the controller (top/bottom heater power, controller power, thermocouples) or get some female connectors and make a clean install like i did. I didn't know how much heat would come from the SSRs so i added a fan into the case. Either you install a fan or not, you should put heatsinks into the SSRs. The code is self-explaining on how to connect each button, the SSRs, the screen and the thermocouples so it is pretty easy to connect everything together. How to operate: There is no autosetup for the P,I and D values, so you have to set your own depending on your setup. There 4 profiles. In each one you set the number of steps, ramp (C/s), dwel(waiting time per step), bottom heater threshhold, target temp for every step and P,I,D values for BH and TH. If you set for instance 3 steps, 80,180 and 230 C with BH threshold 180, your pcb will be heated only from the BH until 180C, hold that temp for the BH, and go to 230 with the top heater. The code still needs a lot of improvements but you can get an idea of how it should work. This is not a detailed tutorial because there are a lot of diy parts in it and every build will be different. I just hope that everyone will get inspired from this instructable to make his own one. P.S. Many thanks to NorcalReballer for the base code. Find me @ http://liliumjsn.blogspot.gr/

Code: https://www.dropbox.com/s/km43re4lyer7n3v/Arduino%20Rework%20Station.rar?dl=0

36 Comments

help me please. I Have stantion, but i dont have MAX31855K. in our city i can find only MAX6675. Can you help me to edit sketch ?

Use the same code, just different libraries. Download 6675 library and you should be fine.

i'm use max6675 , but actual temperature just freeze

I have this problem too. temprature update only if reset arduino.

Did you use the right libraries and correct initiations for your sensor chip?

yes, i use the right libraries and correct sensor chip

what do you set value of P I D for your stantion?

Where i get schematic/connection diagram...thks

Great job
Do you have any connection diagram?

How to setup PID correctly? Because is the hardest thing...

Also, the source code is an arduino empty project! Could you please link to the code, thank you!

sketch_feb07a1.ino is not empty.

Well, if I open the sketch_feb07a1.ino project file, here is what I get:

Any ideas?


Cheers!

This is sketch_jan21a, you are obviously doing something wrong. Extract the .rar file, open sketch_feb07a1.ino, if you get a pop-up to create a folder for the sketch press "Yes".

Sorry, you are right, I had to open from the Arduino IDE, I was double clicking on the ino project inside the folder, and that was opening an empty project. My apologies!

More Comments