Project

# Title Team Members TA Documents Sponsor
18 RFID Poker Board
Darren Liao
KB Bolor-Erdene
Satyam Singh
Eric Tang design_document1.pdf
proposal1.pdf
# Team Members:
- Satyam Singh (satyams2)
- Darren Liao (darrenl4)
- Khuselbayar Bolor-Erdene (kb40)

# Poker

Traditional poker tables rely on the dealer and players to track cards, bets, and pots. This process can be slow and error prone, especially in casual games where the dealer is inexperienced. Players may misread cards, deal incorrectly, or lose track of the state of the game. Live poker also lacks many of the conveniences of online poker, such as automatic hand evaluation, instant game state updates, and precise tracking of actions. Online platforms further enhance the player experience with detailed statistics, and hand histories while live games rely entirely on player knowledge.

# Solution

An RFID-enabled poker table with tagged cards helps to bridge this gap by bringing digital intelligence into the live poker experience. By embedding RFID readers in the table, the system can automatically recognize cards, display the game state in real time, and evaluate hands without error. Game state management features such as LED indicators can track dealer position, blinds, and turn order, giving players visual cues that keep the game running smoothly.

A dedicated companion app would serve as the primary user interface, providing players with immediate feedback. The app can also highlight blind positions, display whose action it is

At a high level, we will stick 13.56 MHz HF RFID sticker tags onto poker cards (and possibly chips later), place small antenna pads under the “seat” zones in front of each player, and a larger one in the middle for the community cards. We will build a main PCB with an ESP32, a single HF reader IC, and an RF MUX switch so the microcontroller unit (MCU) can scan all pads sequentially. The MCU will resolve tag UIDs into chip denominations or card identities, then send compact state updates to a small UI over Wi-Fi in near real-time.

# Solution Components

## Subsystem 1: RFID Cards and Antenna Network

Each card and chip will have a 13.56 MHz HF RFID NFC sticker (ISO 15693) attached. Antenna pads will be embedded under each player’s seat zone and a larger pad will be used for the community cards. All pads will be routed through an RF multiplexer (e.g., a 16:1 analog switch like the HMC7992) into a single HF RFID reader IC (such as PN532 or MFRC522). The microcontroller will sequentially energize each pad, cycling through them at a fast interval per pad to collect tag UIDs, filter duplicates, and reliably detect card positions in near real time.

## Subsystem 2: Central Microcontroller

The system will use an ESP32-S3 (dual-core with Wi-Fi) as the central controller. It will interface with the RFID reader via SPI or I2C and control the RF multiplexer using GPIO select lines. The microcontroller will maintain an internal mapping of card and chip UIDs to their identities (rank/suit or chip denomination) and update the game state. Once the game state is compiled, it will be serialized into JSON format and transmitted to the visualization app over HTTP for low-latency communication.

## Subsystem 3: Game Visualization App

The visualization layer will be a cross-platform application (built with Python + Flask) that receives JSON packets from the ESP32. It will display each player’s hole cards and the community cards, highlight blinds and active turns, and compute win probabilities for each player using either Monte Carlo simulation or a precomputed odds lookup. As a stretch goal, the app will also store hand histories and send LED or LCD commands back to the ESP32 to synchronize the physical table indicators with the digital state.

# Criterion For Success

- 100% accuracy in tracking the cards currently in play through 5 rounds of gameplay
- Game state is accurately updated on the app within 2-5 seconds of updating
- Board can correctly differentiate between folds and players accidentally moving their cards away from antennas

# Stretch Goals
If we have the time, we would also like to enhance the player experience by adding small LED indicators for the game state (big/small blinds, betting rounds, LCD screen showing the pot size) to help each player better understand the game without having to rely strictly on the app.

Tracking chips can be more challenging, since stacking with RFID can be difficult. However, we would love to implement this so we can build on the tech idea above and display the total pot size directly on the board along with the app.

Additionally, if desired, we could use algorithms and machine learning in the app to help players make the best decisions given the current game state.

GYMplement

Srinija Kakumanu, Justin Naal, Danny Rymut

Featured Project

**Problem:** When working out at home, without a trainer, it’s hard to maintain good form. Working out without good form over time can lead to injury and strain.

**Solution:** A mat to use during at-home workouts that will give feedback on your form while you're performing a variety of bodyweight exercises (multiple pushup variations, squats, lunges,) by analyzing pressure distributions and placement.

**Solution Components:**

**Subsystem 1: Mat**

- This will be built using Velostat.

- The mat will receive pressure inputs from the user.

- Velostat is able to measure pressure because it is a piezoresistive material and the more it is compressed the lower the resistance becomes. By tracking pressure distribution it will be able to analyze certain aspects of the form and provide feedback.

- Additionally, it can assist in tracking reps for certain exercises.

- The mat would also use an ultrasonic range sensor. This would be used to track reps for exercises, such as pushups and squats, where the pressure placement on the mat may not change making it difficult for the pressure sensors to track.

- The mat will not be big enough to put both feet and hands on it. Instead when you are doing pushups you would just be putting your hands on it

**Subsystem 2: Power**

- Use a portable battery back to power the mat and data transmitter subsystems.

**Subsystem 3: Data transmitter**

- Information collected from the pressure sensors in the mat will be sent to the mobile app via Bluetooth. The data will be sent to the user’s phone so that we can help the user see if the exercise is being performed safely and correctly.

**Subsystem 4: Mobile App**

- When the user first gets the mat they will be asked to perform all the supported exercises and put it their height and weight in order to calibrate the mat.

- This is where the user would build their circuit of exercises and see feedback on their performance.

- How pressure will indicate good/bad form: in the case of squats, there would be two nonzero pressure readings and if the readings are not identical then we know the user is putting too much weight on one side. This indicates bad form. We will use similar comparisons for other moves

- The most important functions of this subsystem are to store the calibration data, give the user the ability to look at their performances, build out exercise circuits and set/get reminders to work out

**Criterion for Success**

- User Interface is clear and easy to use.

- Be able to accurately and consistently track the repetitions of each exercise.

- Sensors provide data that is detailed/accurate enough to create beneficial feedback for the user

**Challenges**

- Designing a circuit using velostat will be challenging because there are limited resources available that provide instruction on how to use it.

- We must also design a custom PCB that is able to store the sensor readings and transmit the data to the phone.