08

OUTPUT DEVICES

I used the RGB led for my output device. I created my own board and also milled two of the boards on the class website. Most of my week consisted of troubleshooting and as a result, learning about the correct setup.

Thanks to Jonah and Calvin for helping me with troubleshooting!

Tools: Avrdude, Arduino IDE, SRM-20
Date: 11.08.2017




PROCESS

THIS IS HOW I GOT THERE



I first started by designing and my own RGB led board in Eagle based off of the hello rgb led board on the class website. I used an ATtiny44 and three leds with the R,G, and B pins each connected to a pin on the ATtiny.



After numerous auto and manual route attempts, I realized I needed to do a two sided board with vias. The milling was quite simple, I exported the top traces, bottom traces, and vias each as their own .png. For the bottom traces, I had to mirror the image because I flipped the board on the mill bed to keep the same origin.





I then successfully milled my board on the SRM-20. After milling, I realized the pads for the RGB led were incorrect and later found out that I had used an outdated version of the led on Eagle. Instead of redoing the board, I placed the led on the center of the pads, which also worked.





I made the vias on the board much too large for the rivets so decided to take some wire and run it through instead. It was not the most elegant solution, but it did work.











After finishing the board, I then proceeded to program it. This was the start of my troublshooting journey which lasted days. I tried using my usbtiny to program my board which was the first time I attempted to do so on my own computer. I first needed to install drivers for the usbtiny because my computer was not recognizing it at first. I initially tried using the Arduino IDE workflow but encountered connection issues when attempting to install the boatloader. On some forums, I saw that you did not need to install the boatloader, so I also tried loading the sketch from the programmer. This also did not work and read the same message, connection error. The usbtiny was plugged in as it appeared on my device manager and also, the board gave the illusion that it was powered due to the light going on. After speaking with Jonah, I found that I also needed to power the 2x2 header. This did not work either so I headed over to the architecture shop to use the atmel ice, thinking the issue was with my usbtiny. After using the multimeter, I found that my board was not being powered entirely and tried using the power supply set to 9 volts. The Atmel ice with the power supply did not work either, so on a suggestion from Jonah, I decided to remake the hello rgb board and buy a 9 volt battery for my power.



The first attempt at the hello rgb also did not work and was reading the same connection issues. I found that the wiring for the battery did not run through the pins that I had intended. As a result, the ground wire on the battery was running to an isolated pin on the 2x2 header. I then tried connecting a wire from the foot to the ground trace but this was not successful. Very sad and frustrated with my attempts, I decided to remake the hello rgb board.





After days of failure and troubleshooting I finally programmed the board with the Atmel ice! I would love to use my usbtiny however the extremely useful thing about the Atmel (at least for me this week) is that the light on the device turns green when power is supplied. Because this was my main issue, seeing the green light go on was very helpful.



Next, I milled and programmed the led array board. I have become quite confident in my soldering skills and this board pushed me to my limit. Soldering the resistors and leds was a very tedious task. The traces and pads were so close together that solder spilled over from one pad to the next. I had to jump back and forth from looking at the trace file to the board to see if there was a connection in between or not. There were a couple areas where I had to remove solder with the rosin braid. The led array worked! And the programming went smoothly using avrdude.



All of my board attempts this week. I had planned to learn more of C and alter the hello rgb code but because I spent so much time troubleshooting, I did not get to that. I am going to work on that this week instead.











All in all, I learned a lot from my failures this week. I learned both the Arduino and Avrdude workflows, I now understand creating the hex files with the commands from the make file. I am confident about using the power supply, the atmel ice, and wiring the battery. I also got better at debugging!