Dragutin Oreški Pokedex · Side project
Hardware · Computer vision

A pocket pokedex, but for the real world.

A handheld device that recognises objects through a camera, names them out loud, and keeps a browseable history of everything it has ever seen.

Brain
Raspberry Pi 4
Eyes
8MP Pi camera
Screen
2.4″ LCD
Voice
Speaker + amp
Shell
3D-printed
Hand-built Pokedex device with screen, buttons, and camera lens

The goal was simple: build a thing that looks like a Pokedex and actually works like one. Point it at something, press a button, and it tells you what it is. Battery-powered, carryable, no laptop in the loop.

It only fires the classifier on demand — when the trigger button is pressed — so it doesn't spam itself with every frame. New detections are saved to a local "seen" list you can scroll through later with the side buttons. There's also a small joke baked in: when it sees a dog, it specifically calls it "bobi".

How it works

  1. Idle on a background image

    Device boots into a low-power background screen, waiting for input from one of the four GPIO buttons.

  2. Trigger a capture

    Press the main button. The Pi camera grabs a frame and runs it through an OpenCV DNN object detector with a 0.6 confidence threshold.

  3. Show & speak each new class

    For every class it has never seen, the LCD shows a matching dex image and the speaker reads the name out loud via text-to-speech.

  4. Browse the history

    A second button lets you flip back through everything the device has ever recognised — like the original handheld's "seen" list.

  5. Reset the dex

    A third button wipes the history. Good for handing it to someone fresh.

Bill of materials

01
4GB · the brain
02
8MP · the eyes
03
2.4″ · the dex screen
04
small mono · the voice
05
drives the speaker
06
3D-printed shell
.stl files in repo · paint red

Software notes

The repo only ships the Python that runs on the device — not the OS layer. For the OS, the easiest path is one of the prebuilt images from Q-engineering: either an image with OpenCV preinstalled or their prebuilt wheels.

Things I'd change next time: print the case in red filament directly so it doesn't need painting, and widen the cylinders on the front grill so they don't clog with paint.

Links & credits