Skip to the content
2 layers63.4 × 75 mmGenius esquema, the printed circuit board in 3D

Jogo Genius | Simon em C++ para Arduino Nano utilizando TAD e desenvolvimento físico.

Size
63.4 × 75 mm
Copper layers
2
Thickness
1.6 mm
Parts
23
Nets
34
Pads
74
Tracks, vias
68, 0
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
9 Sep 2026
Updated
22 Oct 2026

Overview

Genius esquema is an open-source printed circuit board by gmolmo, from the gmolmo/Genius_Arduino_Nano repository on GitHub. It is a 2-layer board of 63.4 × 75 mm with 23 parts on 34 nets, routed with 68 tracks and 0 vias.

Its parts include 8 resistors and 1 connector. It belongs with the AVR (ATmega, ATtiny) boards of this library.

README

README.md

🔵🟢 Genius / Simon - Arduino 🟡🔴

Descrição do Projeto

O projeto consiste no desenvolvimento do clássico jogo de memória Genius (ou Simon) utilizando um Arduino Nano. O objetivo do jogo é memorizar e repetir a sequência aleatória de luzes e sons apresentada pelos LEDs e buzzer. É possível selecionar a quantidade de rodadas desejadas e, com o avançar do jogo, o tempo de exibição é diminuído para aumentar a dificuldade.

O desenvolvimento passou pelas etapas de prototipagem em protoboard, soldagem final dos componentes em uma placa perfurada e montagem em um case feito em impressão 3D (feito por membros antigos da ERUS UFES).

⚙️ Funcionamento

Software

O código foi inteiramente programado em C++ modularizado sob o conceito de TAD (Tipo Abstrato de Dados). A estrutura foi dividida em três arquivos principais:

  • Genius.h: Contém a definição da classe Genius, protótipos de métodos e atributos.
  • Genius.cpp: Implementação da lógica do jogo, controle de som via buzzer, animações de LEDs (Início, Vitória e Game Over), gerenciamento de estados e leitura dos botões.
  • main.cpp: Executa o setup e o loop principal com a máquina de estados do jogo.

O programa conta com 3 níveis de dificuldade selecionáveis pelo botão de controle antes do início da partida, indicados por LEDs dedicados.

Hardware

  • Arduino Nano: Microcontrolador responsável pelo processamento da lógica.
  • LEDs Coloridos: 4 LEDs para a sequência do jogo e 3 LEDs para indicação do nível de dificuldade.
  • Push Buttons: 4 botões para entrada do jogador e 1 botão para seleção de dificuldade.
  • Buzzer Passivo: Emite tons em frequências específicas para cada LED e reproduz os efeitos sonoros do jogo.
  • Placa Perfurada: Circuito soldado para garantir durabilidade e conexões firmes.
  • Case 3D: Case plástico impresso em 3D para abrigar a eletrônica.

🪚 Ferramentas

C++ / Arduino Framework

Linguagem utilizada no desenvolvimento de toda a lógica do projeto, aplicando orientação a objetos básica e boa organização estrutural.

PlatformIO (VS Code)

Ecossistema utilizado para compilação, gerenciamento de dependências e upload do código diretamente para o Arduino Nano através do Visual Studio Code.

Instruções

Para compilar e enviar o projeto para o Arduino:

  1. Certifique-se de ter o VS Code instalado com a extensão do PlatformIO.
  2. Clone o repositório ou baixe o pacote completo de código.
  3. Abra a pasta do projeto no VS Code.
  4. Conecte o Arduino Nano à porta USB do seu computador.
  5. Acesse a aba do PlatformIO na barra lateral e clique em Upload (ou utilize o atalho do VS Code).

Parts

23
QtyValueFootprintReferences
8RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1, R2, R3, R4, R5, R6, R7, R8
7LEDLED_THT:LED_D5.0mmAmarelo1, Azul1, Difícil1, Fácil1, Médio1, Verde1, Vermelho1
5SW_PushConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalAmarelo2, Azul2, Dificuldade1, Verde2, Vermelho2
1Arduino_Nano_v3.xModule:Arduino_NanoA1
1BuzzerBuzzer_Beeper:Buzzer_12x9.5RM7.6BZ1
1Screw_Terminal_01x02TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_HorizontalJ1

Similar boards

  • 2 layers65 × 56 mmPi servo hat, the printed circuit board in 3D

    Pi servo hat

    earthtojake/text-to-cad

    Design physical products with AI

    23 parts26kMIT
  • 2 layers14 × 100 mmYunomi, the printed circuit board in 3D

    Yunomi

    google/mozc-devices

    Circuit diagrams and firmware source code for Gboard DIY keyboards

    23 parts3kApache-2.0
  • 2 layers50.8 × 52.2 mmFuhhni, the printed circuit board in 3D

    Fuhhni

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    23 parts915
  • 2 layers138.8 × 89.8 mmKeyboard pcb, the printed circuit board in 3D

    Keyboard pcb

    diepala/cantor

    Cantor keyboard, a 42 key diodeless split keyboard.

    23 parts756GPL-3.0
  • 2 layers32.9 × 53.3 mmGoatgdo, the printed circuit board in 3D

    Goatgdo

    Kaldek/rat-ratgdo

    Open source schematics for ratgdo PCB

    23 parts511MIT
  • 2 layers35.5 × 50 mmTobo, the printed circuit board in 3D

    Tobo

    kelu124/echomods

    Open source ultrasound processing modules and building blocks

    23 parts463
  • 2 layers19 × 19 mmKeybit, the printed circuit board in 3D

    Keybit

    notaroomba/keybytes

    A truly modular keyboard

    23 parts444
  • 2 layers88.5 × 28 mmExpBreakout, the printed circuit board in 3D

    ExpBreakout

    Duet3D/Duet-2-Hardware

    The KiCAD source for the Duet 3d printer controller see www.duet3d.com

    23 parts258

Questions

How big is the Genius esquema PCB?

It measures 63.4 × 75 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Genius esquema use?

23 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Genius esquema KiCad files?

From the gmolmo/Genius_Arduino_Nano repository on GitHub, at the commit this page was made from: the board is midia/Esquema e PCB/Genius_esquema.kicad_pcb and its schematic midia/Esquema e PCB/Genius_esquema.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Genius esquema design in my own project?

Its repository states no licence, so its author keeps all rights: ask gmolmo before reusing the design.