simon says with pro mini, display, ws2812 and touch keys
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
 
 
 
 
 
Ondřej Hruška 24209ae725
workaround for startup glitch
pirms 6 gadiem
lib readme etc pirms 7 gadiem
.gitignore initial boilerplate pirms 7 gadiem
CMakeLists.txt improved the randomizer pirms 7 gadiem
LICENSE initial boilerplate pirms 7 gadiem
Makefile improved the randomizer pirms 7 gadiem
README.md updated readme pirms 7 gadiem
avr-c-bp.pro initial boilerplate pirms 7 gadiem
display.c workaround for startup glitch pirms 6 gadiem
display.h improved the randomizer pirms 7 gadiem
game.c add smoothing to the pwm lightsense, reduce Fail idle delay from 5 to 3s (based on experience on makerfaire prague) pirms 6 gadiem
game.h added idle rainbow effect pirms 7 gadiem
leds.c added idle rainbow effect pirms 7 gadiem
leds.h added idle rainbow effect pirms 7 gadiem
main.c some timing tuning pirms 7 gadiem
pinout.h final final pirms 7 gadiem
rng.c improved the randomizer pirms 7 gadiem
rng.h improved the randomizer pirms 7 gadiem
style.astylerc initial boilerplate pirms 7 gadiem

README.md

Simon game with Pro Mini

There is not much documentation for this project because I made exactly one copy of the hardware and it'll probably end there. But if anyone tries to replicate this, here are some hints:

Parts

  • powered by 4 AA batteries (3 would be enough)
  • buck module to 4V, EN pin controlled by microcontroller (and a button through resistor, mcu senses button for soft shutdown etc). Those modules can be found on aliexpress. For a replacement, you can just put a mosfet there or something, as long as V_sup won't go over 5V.
  • arduino pro mini (anything with atmega328p will work)
  • 4 neopixels - blinky lights (chained)
  • dual 7-seg display unit for score, CC or CA doesn't matter, easy to reverse in code
  • 4 buttons or TTP223 touch keys for user input
  • 1 photo-transistor and some resistors for ambient light sense
  • displays driven by 595 or equivalent (eg 74HC4094)

what to connect to where can be found in pinout.h.

I'll send a more detailed schematic on request, if I still find my notes.

Flashing

The firmware can be flashed using the arduino bootloader (via the makefile), but that produces a 1s delay on startup when the bootloader waits. For this reason I've wiped the bootloader and flashed it directly with AVR Dragon using ISP programming.