Summer 2017 Week 1

This is Thor here! I am working with the CATS device over the summer as a job and somewhat of an internship! When we left off during the spring semester, the device was able to scan in IDs and log people in who were in the system. We spent a couple of late nights working to assemble the devices for a “Maker Day” event where we and other creative inquiries showed our projects to curious students.

IMG_5270

This is Owen with two safety goggles on helping me strip ethernet wire. We used this wire because it is eight wires wrapped together and we needed eight wires for our keypad. We have a couple hundred feet of it in a box so I think we are good for the remainder of the CATS CI. We decided to crimp our own wires and put them into housings to connect to our wire-to-board connectors on the PCB. The pre-crimped wires we found were individual and would have to be wrapped to stay together, and we could not find ribbon cables that would work. Crimping wires is very difficult starting out, but Brice, Maurice, and myself were able to crimp the wires we needed.

The Maker Day event was really fun because not only was our device working for others to see, but we also got to see other inspiring projects. 3-D printed stands were made for our devices to give them a more professional look for the event, and they looked really good!

DSC_1190

This is Giandre demonstrating the devices. We could scan our IDs and the relay light came on to show that power was running through the relay.

Giandre_3

Here is a close up of the device. We had three boxes with different designs on them. The purple has a Clemson logo, the brown has cats (CATS) all over it, and there was one more with a honeycomb pattern on it, which had a glow-in-the-dark trim around the front edge.

That event was close to the time that exams were coming up, so that was the last time we really worked on it for the semester. I was hired for the summer and have continued to work on the CATS device since around mid May.

There were a few problems that we had during the spring semester. We were not able to implement the cheaper card scanner that we were hoping for, and there was a problem with driving our Neopixel LED, piezo buzzer, and keypad. The keypad entry was being interrupted by the blinking light and beeping from the buzzer. We decided to add a second microcontroller to help with driving these components. I have been working on implementing the second microcontroller since I started working for the summer.

IMG_5351

This is an Arduino Uno connected to a breadboard with an ATTiny microcontroller. The Arduino’s microcontroller (an ATMega328P) has multiple PWM pins which are digital pins acting as analog signals which can drive the Neopixel and the piezo buzzer. The Raspberry Pi only had one PWM pin so it was used for the Neopixel and the piezo buzzer and keypad were connected to regular digital pins. With multiple PWM pins, the ATMega328P would help control the light and sound. We would just need to control that microcontroller through serial communication with the Pi. I was testing serial communication between the Arduino Uno and the ATTiny in the picture above.

IMG_5340

IMG_5343

This is my precious. Owen named it “Frankenpixel”. Because the neopixel is a surface mount device, I could not test it on a breadboard by itself. So, I soldered some jumper wires to the pads and have been using them to stick into the breadboard. It works how I need it to, and I can play the end part of the treasure chest sound in the Legend of Zelda games while a green light blinks to indicate a successful login.

IMG_5359

I decided to stop testing the serial communication from the Arduino to the ATTiny because I needed to edit the PCB and get it on GitHub. I plugged the Arduino to the Pi through USB and was able to have the Pi send the serial string “login” to the Arduino after 5 seconds. The Arduino would read that string in and if it read in “login”, it would play the sound and blink the green light. It worked beautifully. I then edited the PCB to include an ATMega328P-AUR chip which is the surface mount version of the Arduino Uno’s microcontroller.

PCB (2)

This is the new PCB as of right now. The ATMega chip is in the middle and I changed the keypad header to an ethernet port so it is easier to plug into the board. Owen is reviewing it for me and hopefully it works so that we can order them and assemble them quickly. That is about all that has happened since the last post, and I will continue to post throughout the summer about how this job is coming along.

Until next time!