Week 6:
Electronics Design

Mission objectives:

Redraw the echo hello-world board, add a button and LED, check the design rules, make it, test it.

Show your process using words/images/screenshots.

Explain problems and how you fixed them, including how you worked with design rules for milling.

Include original design files.

The goal is to add LED and button to existing "hello.ftdi" board layout.

Board design

Download Eagle software from Autodesk site.

FabLabs inventory components library for Eagle

Open Eagle, go to FILE menu - NEW - PROJECT. Give it name.

In Eagle control panel, click right mouse button on you new created project and choose NEW - SHCEMATIC. Here you will set only the logic, how it is connected and not how the board will look like.

Press ADD button in side menu - choose component from fab library, press OK and locate it in schematic window, press ESC and choose the next part or press CANCEL to finish adding.

Use NAME and LABEL commands to inform about what each part and trace is.

Use NET, LINE, JUNCTION and AUTOROUTER commands in schematic to connect the parts to the microcontroler, power and ground.

Put attention to the alert yellow button in side menu. Click it to exsplore about bugs in routing, overlaping and other conflicts.

Wiring the components

In top menu switch from SCH (schematic) to BRD(board). Here you will set/design how the board will look like.

Use MOVE and ROTATE to place all the parts from right and above the origin mark.

Use AUTO ROUTE and ROUTE commands to set the traces.

Put attention to the warning yellow button in side menu. Click it to exsplore and then fix bugs in routing, spacing, overlaping, trace width, clearance and other conflicts.

Choose bottom (16th) layer and create the outline shape of your board around the components.

In FILE menu go to EXPORT and choose IMAGE. Give it name and location, set resolution to 600 dpi MONOCHROME. DO it separately for the top (traces and pads) and the bottom (outline) layers. You should get this way two PNG files, one for traces and pads milling and second for outline cut out milling.

Exporting PNG and Milling PCB

Cleaning and preparing for componnents assambley

Soldering practice

Soldering

It isn’t recommendable to start as I mistook to start with biggest part of the board.
It is easer to start in the center with the ATTINY and to continue adding parts around it.
That is how the work space of soldering head gets more freedom in angles to approach the heating points.

During the race to accomplish the mission I missed the 10k resistor between the button and the ATTINY. It still supose to work without the resistor because there is built in resistor at the ATTINY chip for each leg/pin.
Started to work on it from the scratch by designing a new board in Eagle. It is also great opportunity to practice the workflow of PCB creation.

Programming

Programming the LED and button board with FAB ISP in ARDUINO IDE.

At the first attempt I failed to meke the Led blinking. It looked like the there is correct response from the ATTINY 44 chip but the blink code didn't do the job.

The next step was to programm with FAB ISP and instead of FTDI I was trying to power the LED and button board with arduino.

As well it was also a fail.

The FTDI cable arrived and I updated my COM with FTDI driver. Started new attempt.

At this time I got comunication with the ATTINY only after flipping one of the 6 header jumper sides on the board. But I still missed something.

Here I am trying to check my workflow with some other USBtiny programmer and alternative board that has LEDs just make sure the process is correct. This time I had fortune with me and seems that the worflow is right.

Here I used the arduino elementary blink program.

In following image and video I show usage of Arduino board only as power source the LED board I programmed.

This time I had success.
Blinking LEDvideo

After first unsuccessful board, with the missing part I created a new one which worked perfectly.

Logic

Design

Fabrication

Programming

Blinking LED and button video

The programmer in the video is used as power suplly after I uploaded the code. I did it before I attached the FTDI header to the board to make sure everything works.