About this page
Hello world,
This is my first web page and my first experience with html coding. I am building this from scratch and will revise the page with new features and content as and when I learn/get them. So this is a work in progress. Before we begin let me tell you this.
You won't find any detailed instructions to setup any of the machines or softwares used during the academy, that is because I feel that whoever is reading this either know about the machine or doesn’t. If he/she knows, the he/she don’t need my ‘guidance’, and if doesn’t know how to use the machines, he/she is not supposed learn that from here(because there is a limit to what I can convey via writing or a bunch of images/videos and I don't want to br the cause of any confusion), he is supposed to learn it from a qualified trainer. Those interested can always find good online tutorial on almost all topics and I will include such links that I find interesting/useful. So essentially this page is not a step by step instructions to anything, but I will do that for the project documentation, because that is something I did myself.
Activities of each week
- Make/get an image of your choice
- If the image is a vector graphic (.svg for example), you can simply load it in fab modules, resize as per your requirement and cut. But if it is a raster image (.jpg .png .bmp etc) then you need to convert it to black&white (you may use gimp) and extract the outline/edge which is what we will be using as the tool path. Raster images may require some processing to get the desired output, you may convert the image to just single color, ie. 1-bit per pixel. In Gimp you can use image->mode->indexed and select Use black and White (1-bit) palette. Don't forget to use .png for raster.
- Once you have your .png/svg ready, choose the proper option in fab modules and load the image, check the size and resize if necessary.
- Load the vinyl roll/cut-sheet to the machine and use the control panel to choose the proper setting. The machine has two optical sensors and you can tell the machine to use them to find the usable dimension of the piece you loaded.
- Try to optimize the placement of the cut so that the wastage is reduced. Do this by setting the origin properly.
- The machine has rollers and grips, make sure that the sheet is supported buy the two rollers. Note that the rollers must be placed on the grips (white marking).
- A detachable roller is available behind the machine and that’s where you keep the roll of vinyl.
- You need to use the lever to lock the machine once you load the sheet.
- Now you can cut the design by scissors or the cutting tool.
- You may transfer the sticker from the substrate onto the target with the help of masking tape. But if the design is large and don’t have any delicate structures you can choose not to, think and decide.
- The masking tape will stick to the vinyl and sometimes will be difficult to remove. I fixed the issue by dusting the vinyl with a little talcum-powder prior to applying the masking tape. Don’t put too much talcum, then the masking tape won’t stick at all.
- Make sure that the Z-axis has enough room to move down, else you will be left with a PCB not cut/drilled all the way or a wax model which is not complete or a PCB with copper where it is not supposed to be.
- Check the dimensions of the your original design and in the fab modules after loading the .png, resize if necessary.
- Also check the dimensions of the copper board being used, make sure that your design fits.
- Try to optimize your design and the placement of the PCB and origin; to reduce the wastage. If possible use the leftover from the previous milling orations.
- Use sacrificial material for PCB milling operations.
- Use proper settings and the bits, (especialy don't use the milling bit to cut, because you will break the delicate and costly milling bit. But if you use drilling bit to mill, you will only spoil the PCB, which is cheap).
- Take safety precautions, 'respect' the machine and the electricity.
- First day (officially) with the new tutor Mr Francisco Sanchez
- Talked about documentation process
- Introduced to the new code/script based CAD tool, Kokopelli
- Had trouble installing the softwares
*link*
- finally i decided to install the latest version from the githubs, but it breaks the compatibility with the files (*.cad) from the previous versions. But the idea is the same. But anyway I find this tool to be unnecessarily complicated to achieve a simple task of designing the PCB. So I will continue to use the for common tools like Eagle-CAD or KICAD.
- Tried to learn and edit the FabIsp board by neil
- Discussion on documentation
Week 1
Week 1
Almost the first half of the day was spent rearranging the lab, keeping stuff organized. Then we were introduced to the Fab Academy program, archives of the previous years, lecture by Neil. We were told about the assignments and project and importance of the documentation of the same in evaluation. We were introduced to the software/hardware communication tools used in the program for the video conferencing. One of the tools I liked was the Linphone, mainly because it is supported in Linux and has an android app. We were all introduced to each other on the first day. On the second day one more person joined the program, Mr Dentis Thomas. Mr Luciano sent us a google form to fill, asking for details like our interests, what we are good at, languages and skills we have etc, softwares and tools we have experience with etc.
I was very happy to know that Linux is the preferred OS (except for the 3D Cad softwares), because I’m familiar with it and I use Linux as my primary OS. I always carry a portable HDD with a Ubuntu installed, it has almost every softwares I need. So just plug it into any available system, boot and I’m ready to go. I just had to update the OS with the latest packages and setup a few tools like mercurial, git (we will later move on to git). Since I was familiar with Linux and I already have my OS (UBUNTU 14.04.3) ready. I spent time helping others setup Linux and basic commands, Linux file structure and the concept of access permissions. I (with my friend Yadu, who is also familiar Linux) helped some of the participants to setup Linux in their machines, some of them preferred standalone installations along with Windows/Mac, while some preferred virtual machines.
While I was helping a colleague with Linux and terminal using the desk to write things down and explain, then Mr Luciano put a white board behind me and made me use the board, resulting in this; I like his enthusiasm and dedication.
From the third day onwards we were introduced to the 3D-cad. The tool Mr Luciano introduced us was Rhino, unfortunately it’s not available for Linux, it’s not free, not open-source... And the best CAD software in Linux is Blender but it’s too complicated. So I had to switch to Windows and install the Rhino3d, I used a 90 day trial license . Of course I could have used wine or a virtual machine, but from my past experience with wine I find it not stable enough, especially with advanced tools or games that are graphically heavy. The idea of a windows inside a virtual machine running on a portable Linux running from a Usb 2.0 HDD doesn’t sound good, it will be very slow. So I decided to switch to windows when I need to use the Rhino. We were given number of small assignments, though I had used softwares like SolidWorks before, rhino felt a bit difficult to begin with. May be because of my SolidWorks skills are rusty. These are some of the assignments we were asked to do.
Antimony Installation
On the last day of week1 (it was an holiday we decided not to have, but for Thiruvananthapuram batch it was), Mr Francisco Sanchez, Friend, former student, and co-tutor of Mr Luciano visited us and spent the day with us. He introduced us to a new tool named Antimony, a parametric graph based 2.5D-CAD tool, also open source and can be compiled for Linux. Compiling it for Linux was easy, just like compiling any software from source, just follow the ‘readme’ file, for Antimony, this file.
As said in the guide, you need to install QT, download it from here. Make sure that you download the latest offline installer for Linux host and 64-bit or 32-bit version as per your system.
It's highly improbable that you have a 32-bit only OS these days, Easiest way to check would be entering
uname -m
or
arch
in terminal and if you see
x86_64, then your machine is 64-bit.
Once you download QT installer, you need to run it. Before that make that installer an executable and run it by
chmod +x <QT_INSTALLER_FILE>
During the installation it will ask for the destination, I choose
/opt because this is the preferred installation location for all external applications and all users would be able to use binaries installed at this location. This is why I used the
sudo ./<QT_INSTALLLER_FILE>sudo
, as a normal user you don’t have access to
/opt hence you can’t install anything here. But if you prefer to keep the QT installation exclusive to you, then you can choose not to use
sudo
and install QT somewhere in your home directory, BUT I recommend otherwise. For me the installation created a directory
/opt/Qt5.5.1/.
Next you need to install all the dependencies and build tools to compile the software.
sudo apt-get install build-essential libpng-dev python3-dev libboost-all-dev libgl1-mesa-dev lemon flex
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
Antimony requires gcc 4.9 and Ubuntu 14.04 doesn’t support that, so we need to install it from the testing branch that’s what the last 4 commands do.
sudo apt-get update
sudo apt-get install gcc-4.9 g++-4.9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9
Okay, now you are ready to compile the source, first lets get the source code, you can either manually download the source from the
git page (the download
as zip option) or you can clone the source using the command
git clone https://github.com/mkeeter/antimony
If you don't have git, install it
sudo apt-get install git
.
Now you have the directory antimony (if you have downloaded the zip manually, then extract it) create a directory named
build inside it and move to the build directory.
mkdir antimony/build
and now compile by
cd antimony/build <YOUR_QT_INSTALLTION_DIRECTORY/YOUR_QT_VERSION>/gcc_64/bin/qmake ../sb.pro
In my case the Qt was installed at
/opt/Qt5.5.1 and version was
5.5. Note that in the code
make -jX make -jX
, X has to replaced with a the number of threads you want the compiler to launch,I usually keep X=number of processor cores-1. So my commands would be (I X=3 for me as the system I work has 4 real cores).
/opt/Qt5.5.1/5.5/gcc_64/bin/qmake ../sb.pro
I didn't have any error, but if you do, a little googling with error will help you solve the issue. Once you compile it you can launch antimony by
make -j3 ./app/antimony
You may now install by
make install
or by adding the path to your profile. To add the path to profiles, open
~/.profile in your favorite text editor and add the following line
PATH=$PATH:<PATH_TO_ANTIMONY_BUILD_DIRECTORY/app>
For me, I had to append the following line at the end of the
.profile file
PATH=$PATH:~/fab/antimony/build/app
You can now launch Antimony by typing antimony in terminal (only after updating the profile by
source ~/.profile
or by loging out and re-login)
We explored Antimony for some time, I like the fact that everything is linked together. You change one parameter of one object and all of a sudden, every ‘child’ and overall design changes, no need to start from the scratch. At the same time the software is mainly code based and may poss a change to newbies. I find Antimony useful if the design is symmetric in some way or if the design has repeating structures (like a gear) or if the design can be made of simple 2D curves.
Week 2
Week 2
Like last week, we begin this week by cleaning up and rearranging the lab, Mr Luciano is strict about the arrangement. We arranged items as per their use, molding and casting on one rack, safety equipments on another, electronic components and consumables on another, miscellaneous on another.
The week of machines
So from this week onwards we are going to learn about the machines in the FabLab. Then we are supposed to do a project involving a minimum of three (later relaxed to two, maybe because the laser cutter in FabLab@Kochi is down) machines in the lab, and
should involve some electronics.
So the machines... Lets get to it..
Vinyl Cutter
The first machine we learned was vinyl cutter. At FabLab this machine has a few functions, make vinyl stickers, make stencils for screen printing and making flexible PCBs. The machine we have here is Roland CAMM-1 GX-24.
You may read the specifications to know more details about the machine like maximum cutting speed, force etc. Also the User's manual is here.
The machine holds the blade in holder with a bearing inside, so that the blade is free to rotate and align itself along the curve it’s cutting. It’s like the rudder of the windmill aligning itself along the direction of the wind.
The machine moves the blade holder along X-axis (along the length of the machine) and the sheet moves in and out of the machine, which correspond to the Y-axis. Just enough force is applied to the sheet that only the top layer is cut,
with the right tuning will not get cut. The force/cutting depth can be adjusted from the software as well as a slider (for fine tuning) on the machine control panel.
I designed a logo in Rhino and exported as .dwg and then to .svg. The machine uses a vector graphics file or makes tool path from a raster image. Then I used the machine to cut out the logo in vinyl and applied on my USB-HDD. The
process is as follows.
PS:- Not copied from Superman or Suzuki, it’s my own creation, just happened to be in red Vinyl.
So how I did what I did?
You can use the machine to cut copper sheets and make flexible PCBs by transferring the traces that you cut to a heat resistant substrate. The overall process is similar.
Roland MDX-20 Mill
Perhaps the most used machine in the Fablab?. This machine can be used for making the PCB (milling and drilling), carving simple 3D structures in machine wax. The machine can be considered as a mini CNC mill. The workpiece is attached on a detachable plate which moves along the Y-axis. The drilling/milling tool (end mill) or the engraving tool is attached to the head which moves along the X-axis. The end mill is attached to a DC-motor (10 W) which is mounted on a carriage that allows the the movement along the third axis, the Z-axis.
The motor (spindle) and the end mill spins at high RPM to remove the material from the workpiece as small chips. The milling bit primarily moves along the X-Y plane except for the beginning and the end of each section being milled. The end mill is designed such that it cuts into material from side, ie. the material removal happens during the lateral movement of the tool. The drilling bit has the main cutting edge at the end of the tool, which allows it to make holes in the workpiece. The tools will have flutes (spiral cut in the body of the end mill) along the length of the tool to facilitate in chip removal and sometimes to allow the flow of the coolant liquids to the cutting area.
This machine has a few more tricks under it's sleeve. It can be used as a 3D scanner using an Active Piezo Sensor. The machine is capable of scanning objects at 4 to 15 mm per second with a resolution of up to 0.05 mm. And the machine can also be used to mill soft metals like aluminum.
There are a few thing to be careful when you are using the machine
I made few more boards for my projects and I have faced some issues and my friends also faced some, other people who came to use the lab. Also found some boards in the trash. Lets try to understand what the problem is and how to fix it.
Soldering - programming - de-soldering - soldering the FabISP
So whats the heading about? Thats exactly what happened, I made the original FabISP, found no USB cable to use, removed the components and soldered them onto the new board to make the FabISP Key. So here I plan to talk a bit about my methods of soldering and de-soldering, it may or may not be the right way, but works best for me (may be till I see a better method from someone).
The soldering first.
Most important thing is that you need a clean surface to solder on, so if the PCB is not clean enough, do that first. The flux will help but only to an extend. The flux used in the lead-free solder is a nasty stuff and don't recommend
breathing it. I use a flux pen to dispense the flux in small quantities, the flux pen has rosin (comparitevely safe, and is a natural material) dissolved in a solvent (by the way I did this myself). Apply the flux only if necessary,
too much is not good. Also keep in mind that the solder wire itself has flux built into the core.
Begin the soldering from the center and move out, smaller components first. But the order is matter of personal choice Important thing is that the the soldered components shouldn't hinder access to the new components being soldered. For components like SMT resistors/capacitors start by putting a bit of solder onto one of the pad and place the component and melt the solder and align. Don't solder the other end yet, you better wait till the end and verify once before soldering the second pads.
For ICs, I start similarly, start with soldering one pin to the pad and align the IC properly while keeping the solder melted. Once aligned remove the iron, you are now free to solder the remaining pins. I do drag soldering. Beginners can use the help
of the solder-wick. Brush flux on all the pins of the IC, take a small piece of solder wick and wick enough solder on it. Now drag the iron along the pins with the sodler-wick between, so the wick will release just the right amount
of solder to the pins. The flux is used to reduce the viscosity of the solder, to ease the flow of molten solder. Break the unwanted the solder bridges by touching up with the soldering iron or by wicking off the extra. I prefer
the biggest tip (chisel type) bit for drag soldering. And with experience you don't need the solder wick, except for touching up he bridges.
Some may suggest against this method, saying it uses more flux. But I don't think so. First of all the process is quick, with experience you can solder a 64 pin ic in seconds, and the extra solder you are applying is only very little.
Also keep in mind that the flux within the lead-free solder is more hazardous than pure rosin based flux (but cleaning maybe necessary). Also in most cases the solder used will be less, as soldering each pin one by one tends to use
more solder which causes a lot of bridging and require wicking off the excess.
By the way, I forgot to take videos of my process but this is a video that demonstrates the process of drag soldering , and this is where I learned the trick from.
This one is another video demonstrating the method I use for soldering the SMT capacitor/resistor.
How to de-solder?
You can either use the heat-gun or the soldering iron to remove the components. But for the IC or any component that has more than two pins you may want to use the heat gun.
Using the heat gun very easy just start it, aim it toward the component to remove (don't forget to move it around to distribute the heat, else you will burn the component/PCB) and once the solder is melted just use the tweezers
to remove the component.
Using the iron to remove the component is bit tricky, you need to heat both pads alternatively and as fast as possible, this will solder on both the pads molten and you can use the iron itself to push the component away.
Once again I don't have the videos of my process, so I'm embedding a video of the same process.