For this project we had to make a Simon Says game of sorts. I worked with Nina, Hunter, and Will. We decided to make a memory game where we have 4 sets of lights each a different color that go into patterns. The first sequence is 5 blinks. After the sequence plays, the player will tap the buttons of the sequence in order to get the level correct. If the player gets the sequence of lights correct then the program is told to add a new one. It will keep going all the way to 100 blinks which is insanely hard. If the player gets to 100 add the total blinks that will have happened is 105 blinks. If the player does get one wrong in the sequence all the strips of lights will turn on and the game will reset.
We accomplished this by using a few arrays to store numbers and keep track of what was the next sequence in the game. We also used a slightly confusing state diagram that allowed us to proceed with the game with the buttons.
We did get one part wrong where the games does not reset completely and will pick up with how many blinks the last player had. This does cause some confusion but we are able to get around it by unplugging the power and plugging it back in.
The hardest part of the project was getting all the coding done correctly and making the program accomplish our goal. Another really hard part was soldering the Neopixels to the wires. The solder was not wanting to make a good connection with all the wires which made it very complicated but we worked around this by using some Flux which allowed us to make solid solder points and easy connections.
For the enclosure, we use the laser cutter in HackBerry Lab to make the box and make it easily fit together. We also made the buttons with the laser cutter. We put it all together using hot glue and tape.
We have 4 Neopixel strips and 4 buttons on the breadboard. WE sired them straight to the data pins to make it easier since we are not yet masters of the shift register or the Multiplexer. This made it so that eight of the digital pins were being used to send information to the arduino to use later in the program.