Surface mount components are very common and are what the majority of manufacturers will use due to the smaller size, compared to through components. It seems fairly easy to use them, although the mounting of these components, via soldering is vastly different to through hole components.
Through hole components have the obvious advantage of being self locating, so it is easy to manufacture. Surface mount components need to be held in place when soldering and so require skill to also locate them and make them straight.
Method
- Prepare the board for soldering by washing it in soapy water to remove any oxidation that may have occurred since milling.
- Gather all of the components and ensure you know what orientation they are supposed to be.
1x ATtiny45
2x 1kΩ resistors
2x 499Ω resistors
2x 49Ω resistors
2x 3.3v zener diodes
1x red LED
1x green LED
1x 100nF capacitor
1x 2×3 ISP header
- Tin the soldering iron by adding a small amount of solder and removing it using the wet sponge.
- Tin one of the contacts for each of the resistors, capacitors and the diodes.
- Do the same for one of the 6/8 legs of the Tiny Chips and the ISP
- Place the components on top of the solder and use a pair of tweezers to push it towards the board, therefore keeping it still. This is the hardest step, as if you have tinned the pad with too much solder then you will find it difficult to hold the component next to the board.
- Heat up the solder which you tinned onto the board and you should have attached the component onto the board.
- Then solder the other end/legs of that component, going back to add more solder to the other leg/end if there isn’t enough.
- To test the connection you should use a multi-meter on the most sensitive resistance setting. This will check continuity between the component. If the reading is 0 or very near to 0 e.g 0.003 then there is a short whereas if there is a reading of around the size of the resistors measurement then you cave it correctly installed.
- Check the overall circuit by applying 5v volts to the USB as in the diagram. S1 is shorted then the left LED should light up indicating that the circuit works.
Programming this chip requires it to be shorted and then the programming can begin.
*Update on Programming the programmer* 03/03/2019
Using these supporting blogs – Windows specific Installation
Installing the software was harder than following the links due to the lack of clear instruction on what parts are needed, especially for Git. The link for Atmel GNU Toolchain wasnt correct so I am unsure which I needed to install. I typed what the link was supposed to take me to into google and cap up with this website. Download all the files as a zip and then extract them in the desired folder.
I decided to create a different programs folder so I could better keep track of the software on my computer. I didn’t want to destroy anything.
Installations complete – all of the tools are located in F:\UNI Programming\Programs
Updating the path
Control Panel > Advanced System Settings > Advanced tab > Environment Variables
Under User Variables > Edit for Path > See below
Next it to download Zadig and run this to install drivers for the USB > where I got stuck
Windows didn’t like the USB and so every attempt failed to install the drivers.
I checked here for shorts between VCC and ground and found nothing amiss so it is a possibility that my PC isn’t compatible and wont recognise the USB.
Checking software installations
> Type make -v in GitBash
> Type avr-gcc –version FAILED
> Type avrdude -c usbtiny -p t45 FAILED
UPDATE 2 > 04/03/2019
Going into the Fab Lab today helped so much after the failed attempts at home. The main different being using an iMac rather than a windows computer. Mike in the Fab Lab also says that Linux works very well, so maybe a possibility of having a separate partition on a hard drive to set up a Linux OS on my PC.
The steps are as follows for Mac with the software installed:
- Download the firmware for the programmer > http://fab.cba.mit.edu/classes/863.16/doc/projects/ftsmin/
- Open the Makefile in a text editor
- Customise the make file > Edit the line with MCU = attiny45
- Customise the clock speed > Edit the line with F_CPU = 16500000UL
- Edit the programmer used to program your board > PROGRAMMER ?= usbtiny
- Plug in your board using a USB extension to not mess up your computer USB ports as well as the programmer > connect their 2 ISP headers with a ribbon cable in the correct orientation
- Open the Terminal > type pwd to check path Enter
- Type cd (space) (and drag the downloaded folder in) Enter
- Type pwd to check > should be the path of your folder Enter
- Type make flash > should come up with loading bars if working Enter
- Type make fuses > should come up with loading bars if working Enter
- Unplug both > re-insert your board > check mac recognises device in the system information > should show usbtiny
- Reattach programmer and ribbon cable
- Type make rstdisbl > blows reset fuse > should come up with loading bars if working Enter
- Remove solder bridge if successful and you should now have a programmer
The programmer was then successfully tested using Andrew’s code to a board containing an LED and switch.
Multiple programs were tested and all were successful.