5. Electronics production¶
This week we worked on small scale cnc milling and soldering to produce an in system programmer - aka a FabISP board. While it was mostly a skill-building week, this FabISP board will be used throughout the remainder of the course to program other boards we make…so it’s important that this board works! The most challenging part has been in actually programming the board. I rather enjoy the soldering, I have found it to be a pretty relaxing activity.
FabISP Board¶
Here’s a before and after soldering all the electronic components. I actually made this board last year (above), but never programmed it. I started off thinking I could program that one and then use it going forward, but alas, it didn’t work…so I did end up making other boards and programming them.
Gathering Components¶
Our first step was to gather the electronic components. Our instructors kindly gave us a template that we could use to gather our parts. I can say that the electonics workbench is much less intimidating now that I’ve browsed for parts dozens of times. It certainly was the case that I wasn’t confident I knew what I was looking at when looking at all the drawers.
MODs Interface¶
Since we were given the board design to be cut out, we could skip right to milling the PCB - the copper sided board. Some are one sided, some are two. This design just calls for a one sided board.
This UI controls the milling machine. It’s very simple once you understand what buttons to hit and what not to.
We learned about using Mods to control the milling machine. (Aparently the Roland interface is lacking?) Mods was pre-populated with interconnected components to easily get the correct milling settings, such as feedrate, cut depth, number of passes, overlap, and a few more.
Roland CNC Milling¶
Here we are changing the tool - swapping between 1/32” end mills and 1/64”, using the top of the copper board as the Z Axis zero.
Soldering¶
Here are the parts we needed to solder: resitors, capacitors, crystals, usb connectors, and the micro-controller.
Luciano showed us how to use the braid to quickly remove excess solder. It definitely took 5-10 boards to feel comfortable with the iron and solder…getting the timing right of applying heat and applying the solder makes a big difference. I think I was using too much heat the first few times.
Programming the FabISP Board¶
Here’s where the real challenges come in. Comes back to using a terminal is just really foreign and unappealing to learn.
We were following this tutorial: http://fabacademy.org/2019/docs/FabAcademy-Tutorials/week04_electronic_production/fabisp.html#install
It was going great up until the ‘make hex’ command. I get this error:
Daniels-MacBook-Pro:fabISP_mac.0.8.2_firmware danielsmithwick$ make hex avr-gcc -Wall -Os -DF_CPU=20000000 -Iusbdrv -I. -DDEBUG_LEVEL=0 -mmcu=attiny44 -c usbdrv/usbdrv.c -o usbdrv/usbdrv.o make: avr-gcc: No such file or directory make: *** [usbdrv/usbdrv.o] Error 1
HELP PLEASE!
Help came - I switched operating systems to Ubuntu, using Virtual Box…and got a little further, then more errors. I was able to do “make hex” and then ‘make fuse’, but got the ‘check connections’ error during ‘make program’. So it must still be the soldering.
I ended up soldering a new board, after gettting these errors in Ubuntu.
Feb 27th Success! It seems sometimes it’s best to just start over with the soldering, again. It’s likely that the soldering wasn’t good enough. I did try using voltage meter, but it too was giving vague readings. When in doubt, solder again. Third time is the charm!
This image confirms the make program success and lsusb steps using terminal.
In conclusion, it was quite a relief to get this board working and to start developing a sense of workflow across new machines and softwares/terminal interfaces…being that we’ll be doing this often throughout the course!
Group Assignment - Characterize the CNC Machine¶
As a group we characterized our lab’s Roland SRM-20.
We mistakeningly used the 1/32” end mill on the first try - image below! We learned first hand how much precision is gained with the 1/64” tool, image above.