This remote needs to be small, and the components need to be even smaller. This means I’ll be using only 0603 passive components. The microcontroller I will be using is an Attiny1634.
I thought about a few uCs before I chose this one, but I settled on this for a number of reasons:
- It comes in a tiny 4x4mm QFN package
- It has 18 I/O lines which is enough for ~12 buttons, an infra-red LED and an infra-red receiver
- It has 16K flash which means I have a lot of memory in which to store learned infra-red codes
In order to learn new codes the remote needs an infra-red receiver so it can copy codes from existing (larger) tv remotes. This was a harder design choice, but in the end I settled on this a TSOP572. This is one of the few infra-red receivers I could find that had a low enough profile (<1.6mm) to fit between the two circuitboards.