OSHWLab
check in
Completed

PokerLenz

PROPokerLenz

tag

1.2k
0
0
1
Mode:OSHWLab Stars
OSHWLab Stars 2026
Reproduction cost: $20

License

TAPR Open Hardware License

Creation time:2025-11-20 16:48:57Update time:2026-04-22 03:27:23

Description

PokerLenz

PokerLenz is a wearable poker assistant that pairs AI-powered smart glasses with a discreet ESP32 smartwatch — an on-the-fly edge, dressed up as an ordinary timepiece.

The Idea

Most poker "helpers" are either obvious (phones on the table, earpieces, lookup apps) or impractical (manual odds calculators you can't touch mid-hand). PokerLenz sits in between: a hands-free, glance-only assistant that reads the cards through the player's own field of view, runs the math off-device, and surfaces a single-word recommendation on what looks and behaves like a normal watch.

The goal was to build something between a fragile phone-based cheat app and a bulky custom rig — compact, wired end-to-end, invisible at the table, and fully open from the Python inference server down to the Arduino firmware.

How It Works

PokerLenz is split into three cooperating parts:

  1. Omi AI Glasses stream the player's live first-person camera feed.
  2. YOLOv5 model, custom-trained on a 52-card deck, runs on a host PC. software/computerServer/detect.py detects cards frame-by-frame, debounces them over three confirmed frames, assembles the player's hand, runs a poker-hand evaluator (phevaluator), factors in chip stack and current bet, and produces a decision: FOLD / CHECK / CALL / RAISE.
  3. An ESP32-C3 watch on the wrist receives that recommendation over Wi-Fi. It normally displays the time and date like any other watch — but when the player flicks their wrist to a specific tilt angle, the MPU6050 catches it and the screen switches to the assistant's advice.

The watch is also an input device. A short button press bumps the current bet by $100; a 3-second hold resets the hand and bet between rounds. The PC polls the watch every frame for button events and reacts in real time.

Hardware

  • ESP32-C3 MCU with on-board Wi-Fi — the watch's brain and embedded web server
  • MPU6050 6-axis IMU — detects the wrist-tilt gesture that unlocks the advice screen
  • SSD1306 128×64 OLED — watch face and decision display
  • Tactile button on GPIO1 — short press = raise bet, long hold = full reset
  • Status LED on GPIO8 — heartbeat / connection indicator
  • Custom enclosure — two-part 3D-printable case (hardware/Top Half.step and hardware/Bottom Half.step) sized for an Apple Watch–style strap
  • Omi AI Glasses — source of the first-person video stream

All sensors sit on a shared I2C bus (SDA=GPIO4, SCL=GPIO3) inside the printed case.

Software

  • software/computerServer/detect.py — YOLOv5 inference, Hi-Lo card counting, dynamic strategy evaluator, and the HTTP client that pushes actions to the watch and polls its button state.
  • software/Esp32Files/ESP32C3_PokerWebServer.ino — production watch firmware. Exposes /action and /getButton endpoints, drives the OLED, reads the IMU for the unlock gesture, and debounces the button (short vs. 3s hold).
  • software/Esp32Files/ESP32_PokerWatch.inoEspC3_Poker.inoEsp32_Clock.ino — earlier development stages: clock-only prototype, IMU bring-up, and the initial watch-face build.

The firmware is Arduino-based and built on the Adafruit GFX / SSD1306 / MPU6050 libraries, WiFi.h, and WebServer.h. To keep latency and airtime low, the host only transmits an action when it changes, and the watch answers button polls in a single short HTTP round-trip.

Key Features

  • Invisible by default — the watch shows a normal clock until the wrist is tilted
  • Sub-second decisions — YOLOv5 inference and ESP32 push live inside one frame loop
  • Dynamic strategy — advice scales with chip stack and risk ratio, not just raw hand strength
  • Running card count — silent Hi-Lo count tracked in the background
  • One-button controls — bet bumps and full resets without leaving the table
  • Fully DIY — 3D-printed case, open Arduino firmware, open Python inference stack

Links

Photos

CAD

Physical Watch

Model

Schematic

NOTE: THIS IS JUST A REFERENCE. PRODUCT IS HANDWIRED

Design Drawing

The preview image was not generated, please save it again in the editor.

BOM

Bom empty

Attachments

OrderFile nameDownload times
1
PokerLenz-main.zip
0
Clone
Add to Album
0
0
Share
Report

Project Members

Intellectual Property Statement & Reproduction Instructions

This is an open-source hardware project. All intellectual property rights belong to the creator. The project is shared on the platform for learning, communication, and research only; any commercial use is prohibited. If your intellectual property rights are infringed on EasyEDA, please notify us by submitting relevant materials in accordance with the Rules for Complaints and Appeals of IPR Infringement.

Users must independently verify the circuit design and suitability when replicating this project. All risks and consequences are borne by the user, and the platform assumes no liability.

Comment

All Comments(1)
Sort by time|Sort by popularity
Followers0|Likes0
Related projects
Empty

Bottom Navigation