Skip to content

Week 6 Group Project - Evan Park and Collin Kanofsky

Milling the board

The board we milled for this weeks project was a board that holds the ATtiny412, an LED, a resistor, and allows easy access to VCC, Ground, and port 6.

We milled this board on an othermill

Final Result After Milling

Soldering the board

Now that our pcb boards are done, we now started to solder our components onto our boards. Our board used an attiny412.

Components

These are the components we used.

Soldering

First we started by soldering out attiny412, it is the most pivotal part of our board so we decided to solder that first.

Then we soldered our surface mount blue LED and a 499 Ohm resistor.

Later when we tried making the LED blink, it did not seem to work. Using a multimeter we concluded that the blue LED was still getting power so there was something else wrong with it. With the help of our instructor Mr. Dubik, we realized that the LED was constantly powered instead of us programming the LED so that we can control the power in the pin that the LED was connected to between a state of ‘’’HIGH’’ being when LED would turn on, and ‘’’LOW’’’ being when the LED would turn off, giving us the blinking effect. Essentially, when the pin was programmed to be ‘’’LOW’’’, we were giving the board a ground so that the current could run through the LED and turn it on. This meant we would have to switch the cathode on the LED so that it faced the pin when normally you would face it away towards the ground. We removed our LED using a different strategy by blowing hot air onto the solder joint and holding the board by the LED slightly in the air while the solder melted and removed the LED utilizing gravity. We then resoldered the LED so that the cathode was facing the opposite direction.

As you will see below, the LED will still be facing the wrong direction but it’ll be changed at the end once we realize our mistake.

We then soldered a 0 Ohm resistor because we were looking at 2022 Charlotte Latin Fab Lab students documentation where they used the same PCB board as us.

We then realized after looking at our board a little longer that the 0 Ohm resistor was not necessary and only switched where our power would go into our board. We later took out the 0 Ohm resistor by holding two soldering irons on both sides of the resistor and pushing it out using tweezers.

We then soldered our Conn Header SMD R/A 6POS 2.54mm onto our board so that our board can get power and so that our attiny412 can be programmed.

This was our finished board.

Programming the board:

Collin’s Programming

Evan’s Programming

Comparisons: ATTINY412 and SAMD11

For our group assignment, we were tasked to browse through the datasheets for our controllers this week and compare the performance and development of them both. This week, we worked on the ATTINY412 and SAMD11.

Performance

For performance, the SAMD11 has a faster processing speed with a speed of 48MHz compared to the ATTINY412 which has a processing speed of 20MHz. The SAMD11 also has a higher memory capacity that being 16KB Flash and 4KB SRAM compared to the ATTINY412 which has 4KB Flash, 256B SRAM, and 128B EEPROM. The SAMD11 also is able to communicate with it’s electronics more efficenitly due to having 10 ADC channels compared to the ATTINY412’s 6 ADC channels. Along with the fact that the SAMD11 has 22 General Use Pins compared to the ATTINY412’s 6 General Use Pins allows it to control more components than the ATTINY412.

The SAMD11 is a stronger processor than the ATTINY412. The ATTINY412’s uses are for smaller, less powerful applications while the SAMD11 is for boards whcih require more performance.

Development

For our ATTINY412, we flashed the bootloader utilizing SerialUPDI. This process was realitivly easy because SerialUPDI came with the external library that required for the ATTINY412. SerialUPDI is a trivial and fast UPDI upload tool. Due to the SerialUPDI’s convience and efficency, the process of developing with the ATTINY412 is easy.

For our SAMD11, we flashed the bottloader utiliizing EDBG. When starting out devoloping with EDBG, it is slightly more confusing than SerialUPDI. This is because EDBG requires the user to download an executable file and run it through a terminal. Once this process is completed, you can program any Microchip or Amtel family chips just as easily as SerialUPDI.

You can program both the ATTINY412 and SAMD11 in C-based programming which means for us that they both work in Arduino IDE.


Last update: March 16, 2024