For our main board we used an Arduino Nano which makes use of the Atmega328 chip. The Arduino Nano was wired to power the LED Christmas tree, LED fireplace, and OLED display. The AVR Xplained mini controlled the Arduino Nano board through SPI. The Nano was wired through its MISO, MOSI, and SCK pins to accomplish this. These were used to sync the clock cycles of both boards though SCK and send data signals through the MISO and MOSI pins.
We made use of the thermistor connected to the Atmega328p to take the temperature of the room and send a signal when too cold to turn the lights and fireplace on. Whenever the temperature dropped below the threshold it sent a signal using the MOSI pin from the XplainedMini to the Arduino Nano to turn the LEDs and OLED screen on.
We used a WS2812B LED strip for the base of the Christmas tree. Every LED on the WS2812B LED strip has data in and data out which allows us to individually control each LED allowing us to create a twinkling pattern on the tree. We used the Adafruit Neopixel LED rings for the star on the tree and the wreath on the fireplace. These LEDs work the same way as the WS2812B. We did not have a need to use the data out in the WS2812B, so we only sent signals to control them through the data in.
For the door to the house we made use of a Servo motor. The Servo motor was very easy to wire and control as it only has 5V, GND, and a signal wire that transmits frequency from the code telling how far to open. We used the potentiometer to control the servo motor manually. The potentiometer was wired to send the frequencies from the code to the motor. This allowed us to set frequency limits as we only needed the door to open 90 degrees.
For our project we used many different devices. One of which was an OLED display that was used to display “Happy Holidays” as well as the alternating values being input into the LEDs we used as a fireplace. The OLED display had four basic pins that were used to configure it: 5V, GND, SCL and SDA. The SCL pin was used to sync the clock cycles of the Arduino Uno and the OLED. The SDA was used to data signals to the OLED telling it what to display.