Electronics Production

The Assignment

This week we were given the assignment to make an In-Circuit Programmer.

My first attempt at this assignment was unsuccessful and had to be redone. The starting-over steps for this weekly assignment  is on the bottom of this page, along with the image of the second, and successful, ISP.

Cutting the Board on the Modella

The following link was followed to mill the board on the Modella. It is importnt to read the entire document before proceeding. Make sure special attention is paid to the workaround. When using the 1/32 inch bits, be very careful not to crash the tips into the top of the board. This is a fragile bit and breaks easily.

  • Milling the Board
  • Other important links for downloading files and running the Modella :

  • Fab Modules
  • Fab Tiny*ISP
  • The following images show the process of the board cutting. The detailed explaination is on the page "Milling the Board" on the above link "FabTiny*ISP". The board is secured to the Modella with double-sided taped to the sacrificial layer with special care not to crease or double up the layers of the tape. The board needs to be as level as possible in the Modella.

    Stuffing the Board:

    The following link was referenced in order to populate (stuff) the board with the components. 

  • Stuffing the Board

  • The first item on the adjenda is to learn to solder. Thank you Chris for your patience! After practicing with a few expendable components, and a board, it is time to begin.

    The list of componets are on the link "Stuffing the Board" above. It was decided to tape every component to a piece of paper to keep things organized.

    Programming the Board:

    The following link was referenced in order to program the board. Steps were followed on the link below. This section on programming was not successful.

  • FabTiny*ISP - Programming the firmware
  • This is the point where things stopped working. The firmware would not flash. It was determined that I had unsuccessfully soldered a component or fried a component. I am not sure what happened. Anyway, I tried to remove the processor chip using a copper braid to absorb the solder. The trace came apart from the board. Total frustration today, but I did learn a bit about soldering and how much time it takes. Hopefully I will get better on the next board!

    I will have to start over and cut a new board.

    Stay tuned for updates.



    Starting Over:

    The above steps were completed for the second time. The board was re-cut on the Modella Mill and components were soldered to the board. This board now needs to be programmed.

    Below is an image of the second board.


    Programming the Second Board:

    The following link was referenced in order to program the board. Steps were followed on the link below.

  • FabTiny*ISP - Programming the firmware

  • An Arduino was used for the first ISP. 

    arduino=

    arduino=

    The Arduino was connected as described in the instructions and the following command was executed.

    avrdude -c stk500v1 -P/dev/ttyACM0 -b19200 -p t45 -V -U lfuse:w:0xe1:m -U hfuse:w:0xdd:m -U efuse:w:0xff:m

    The LED's on both boards are blinking and the output screen is correct as shown on the referenced link above.

    Flashing the Firmware:

    Following the instructions from the above link we (I definitely needed help with this entire programming section) were able to flash the firmware on the TINY ISP. The computer recognized the FabTinyStar and identified it as a "Multiple Vendors USBtiny".

    Blowing the reset-disable fuse:

    Everything above is working and I am ready to perform the step that can't be undone. I never got to this point in my first try because the firmware was not able to be flashed. Execute the following command:

    avrdude -c tk500v1 -P/dev/ttyACM0 -b19200 -p t45 -V -U lfuse:w:0xe1:m -U hfuse:w:0x5d:m -U efuse:w:0xff:m

    Congratulations!

    I now have my very own In-System-Programmer and will not need an Arduino for future programming. I will need to make the USB connector thicker for a better fit.

    I am still unsure of what went on in this process, but I did get the required output when the commands were input as stated on the referenced page by Zaerc.

    Karen's Files:

    None are required for this week

    HOME