______ _ ___ _ _____ _____ __ ______ | ___| | | / _ \ | | / __ \| _ |/ | |___ / | |_ __ _| |__ / /_\ \ ___ __ _ __| | ___ _ __ ___ _ _ `' / /'| |/' |`| | / / | _/ _` | '_ \| _ |/ __/ _` |/ _` |/ _ \ '_ ` _ \| | | | / / | /| | | | / / | || (_| | |_) | | | | (_| (_| | (_| | __/ | | | | | |_| | ./ /___\ |_/ /_| |_./ / \_| \__,_|_.__/\_| |_/\___\__,_|\__,_|\___|_| |_| |_|\__, | \_____/ \___/ \___/\_/ |_|
There are many versions of ISPs millable in a FabLab as listed in the class notes, each one with it's own improvements and changes. Links to different versions below
I decided to mill the FabtinyISP as it had LED indicators and a direct USB connection
But was advised to mill the FabLabCEPT ISP first and then move on to smaller boards, FabLab CEPT ISP is designed by our local instructor RudraPalSinh and it's components are spaced out and hence forgiving of minor soldering mistakes.
I also milled the FabISP as seen in the Fabacademy tutorial page for electronics production to test my newly learnt soldering skills on a smaller board
Enter sudo make_png_rml
in the terminal of the laptop which has FabModules installed and the milling machine connected to.
The following commands installs all necessary prerequisites for programming the board
sudo apt-get install flex byacc bison gcc libusb-dev avrdude
sudo apt-get install gcc-avr
sudo apt-get install avr-libc
The following commands downloads the zip file - 'firmware' and unzips it in the desktop
cd ~/Desktop
wget http://academy.cba.mit.edu/classes/embedded_programming/firmware.zip
unzip firmware.zip
sudo make clean
sudo make hex
sudo make fuse
and sudo make program
If all goes well when you list all the USB devices, you'll see the FabISP as 'multivendor USBtiny'
Solder joint to be debridged, I did that with a solder wicking braid
The flux on the braid made a dirty spot on the board
Comment out the appropriate line when changing your programmer
If the orientation of your 6-pin connector is wrong on any of the boards you'll see an error stating 'Fuse failed' Error 1
'clean' 'hex' 'fuse' program'
commands like before
You'll see 2 USBtinies in your list of USB devices
As weeks such as input device, output device and networking progressed , time taken to whip up a design in KiCAD, mill the board and to stuff it reduced in orders of magnitude from a week initially to a day and after a few cycles of producing boards and then to a couple of hours for a simple hello-world boards.
My FabISP is working fine, here I used it to program the Hello.echo board. As you can see in the second screenshot, the programmer is set to be the USBtiny, which is the FabISP