Github repository: https://github.com/agenteaty007/PCC_LED_Badge
This badge incorporates a ATmega328p (same microcontroller as the one on the Arduino UNO) powered by a 3V Lithium Coin 2032 battery. The microcontroller is connected to 13 LEDs arranged to spell out PCC (Pasadena City College). There’s only one main switch to turn the system on or off. The board can be programmed to create a light show with the LEDs; however, the board is not designed for quick reprogramming.
I created a GitHub repository to store the files for this project even though it's a small project. I'll be making some fixes and improvements to the board, so I'll have a new revision coming up soon.
As a noob mistake, I connected two of the LEDs to A6 and A7 of the ATmega328p, so I cannot use them as outputs; thus, you'll notice that 2 LEDs are off.
Some changes for the next revision include: changing the pins to some I can access as outputs, incorporate an easier way to program the ATmega328p through ICSP, possibly change the AVR microcontroller to something smaller or cheaper, probably an ATtiny.
The board was also designed to be used on an introduction to SMD (Surface Mount Soldering) by exploring different techniques, such as using a temperature regulated soldering iron and a fine tip, and using a hot air rework station and solder paste. If I were to focus on only one technique, specially for environments with limited equipment, the ATmega328p and related components for the programmable part of the board could be pre-assembled. The pre-assembling could be done using a different technique not mentioned, yet, using a toaster oven, to speed up the process. After that, the microcontroller could be pre-programmed by burning the bootloader and uploading a sample code for the badge).The other components, the easiest components to manually solder using thin solder and a soldering iron with a fine tip, are the LEDs, the resistors for the LEDs, and the battery holder.
To program the board, the ATmega328p SMD (TQFP package) needs to first get a bootloader. I have been burning the Arduino UNO’s bootloader from the Arduino IDE and using an Arduino UNO as the ISP programmer. The badge board has the required pins outlined as vias to allow for connections by either soldering wires or attaching clips to them. After burning the bootloader, the ATmega328p can be programmed with an FTDI board. The RX and TX pins have been brought out to allow for this feature.
The board was designed using EAGLE, and the outline of the board should have rounded corners. However, I used http://mayhewlabs.com/3dpcb to generate the rendered pictures above, so the renderings were not able to process the board outline file properly.
In addition, 4 standoff holes are located on each corner to allow for attaching the device into a project or creating a custom case for it. By taking advantage of 3D printing and laser cutting technologies, making a case or enclosure for the project should be relatively easy.