Week 4
Electronics Design
Milling a PCB
How was it done
- Our lab has a laptop setup with linux and the fabmodules. Incase you don't have this setup, please find links here to understand the setting up of the machine and here to set up these modules yourself or use it online. I have used this image to mill our ISP from the page of our local mentor - Rudrapal Sinh
Setup of the machine and board before milling
1. Take the FR1 board.
2. Stick double sided tape on the bottom of the board and stick on the corner where the origin exists
Notes here - I prefer not using a sacrifice board - a waste board below the PCB we are cutting as a backup and flat base as shown below
See this video to understand how to set up the machine and the next to set the drillbit to the correct height and how to zero the z axis
PCB Milling - Setting drill up from Gautam Prakash on Vimeo.
PCB Milling - Setting board from Gautam Prakash on Vimeo.
- Not adding a sacrifice board works for me.
- Testing the z axis is atleast 5 locations in random after sticking the board for a gap with a peice of paper is a great hack. Thanks Avishek Das for this hack. This ensures a good mill, without errors.
- Cleaning the bit regularly so no dirt is stuck on to it is a good practise
- Thanks Tapan for noting that 1mm is a good offset. This helped me figure out that 1.5mm is a perfect offset for me.
- Enjoyed this session with the guys at Fablab CEPT. And with Ohad who dropped by. Thanks!
Time taken to mill in different offset settings:
Offset | Time (mm:ss) |
-1 | 53:00 |
1 | 9:40 |
2 | 18 |
4 | 38:00 |
Soldering
Tools Needed
- Soldering gun, Solder and liquid flux
- Helping hands if available
- Paper plate for the components before you start soldering
- Multimeter
How was it done
- Started by reading this great pdf - Soldering is Easy. Its a must read for a person starting off with soldering.
- Kept all components and tools in reachable distance and started
Started off soldering the Tiny44. Process I followed was heat soldering gun, and take a little bit of solder on the tip. Place the Tiny on its slot and solder the diagonally opposite legs. Coat the other legs with liquid flux and solder with a little bit of solder on the tip. The action was to start the soldering of each leg by touching the point at which the leg touched the pad and once the solder melted, doing a quick upward action to flow solder on the leg.- Then I worked from the bottom left corner of the PCB, soldering Resistors and Caps as I went.
- Last but one component I soldered was the 6 pin male header as a break from the focussed work.
- Against advice, I chose to solder the USB header last. I locked the usb header in plasce using a paperclip and then soldered the 5 ins first with liquid flux helping me get a smooth flow on the the legs. In the end, I soldered the mounts on the PCB.
Tips from experience
- Breathe out as you place solder from your mouth. It also helps blowing away the solder fumes away from you.
- Paper clips help keep components in place til you solder them
- Touch the components with your hand/hold them if possible after soldering the corner legs so you know when its getting too hot.
- Diagnosis starts with checking for loose components, then non-soldered legs, then the power pins/legs/tracks for connectivity. A multimeter is very useful to test for continuity - see here to see a youtube link to understand this better.
Programming ISP
Tools Needed
- Linux Laptop
- A great tutorial - Thank you Anna Kaziunas from France!
- A mentor, who in this case was Tapan
How was it done
- Plugged in the AVRISP and the FabISP into the USB slots on the PC. Connected the 2 with the 6 pin header
- Used these commands in sequence as I had a fresh install of Linux
- sudo apt-get install flex byacc bison gcc libusb-dev avrdude
- sudo apt-get install gcc-avr
- sudo apt-get install avr-libc
- sudo apt-get install libc6-dev
- cd ~/Desktop
- wget http://academy.cba.mit.edu/classes/embedded_programming/firmware.zip
- unzip firmware.zip
- cd fab(PRESS TAB TO AUTOCOMPLETE AND ENTER KEY TO ENTER THE FOLDER)
- nano Makefile to check if Tiny44 is selected based on which Tiny processor you have used and speed of crystal (we used 20MHz)
- make clean
- make hex
- make fuse
- make program
- lsusb to see if your computer detects a "Multiple Vendors" device
- Cannot stress on how good a tutorial Anna has made. It's an example for me on how to create tutorials.
- Attiny 44 SU x 1
- MicroUSB Header x 1
- 2 x 3 Male SMD AVRISP Header x 1
- Resistor - 10k x 1
- Resistor - 1k x 1
- Resistor - 100 ohm x 2
- Resistor - 499 ohm x 1
- Resistor - 0k x 2
- Capacitor - 1uF x 1
- Capacitor - 10pF x 2
- Crystal (20Mhz) x 1
- Zener Diode (3.3v) x 2
Bill Of Materials (BOM)
Conclusion
As of now, milling a PCB on a Modela is easy. Soldering has to improve, whi=ch I'm sure it will. While I succesfully programmed the ISP, I am having issues getting the driver running on Windows PC, and hence for ease, might shift over to using an Arduino as an ISP.