Build a timed code-entry game with consistent indicators and non-blocking timing; it is a game rather than an access-control system.
Decode the actual button codes of an IR remote and toggle four current-limited LEDs while handling repeat frames and debounce.
Represent a 3×3 game board on an LCD, read moves from a keypad, reject occupied cells, and check rows, columns, and diagonals.
Measure TCS3200 frequency outputs under controlled lighting, calibrate against references, and send results through an HC-05 serial link.