Project

# Title Team Members TA Documents Sponsor
2 Non-Shock Ultra-Wideband Virtual Boundary Pet Collar
Peter Gao
Shi Xian Chng
Shi Yang Ng
# Non-Shock Ultra-Wideband Virtual Boundary Pet Collar

**Team Members:**
- Yujia (Peter) Gao (peterg4)
- Shi Xian Chng (schng2)
- Shi Yang Ng (syng2)

## Problem

Existing wireless pet fences are unreliable indoors: GPS gives 3–5 m error and RSSI 1–2 m, environment-dependent. There is a need for an indoor virtual boundary that people can walk through but pets are trained to avoid, without physical barriers or electric shock.

## Solution

Wall-powered UWB anchors placed in a chain define virtual wall segments. A collar measures its distance to adjacent anchors via UWB two-way ranging, computes its distance to the nearest wall segment locally using anchor spacings, and gives progressive vibration → sound feedback as the pet approaches. No central controller, fail-safe on link loss or low battery, high precision.

Anchor and collar share one custom PCB with different populations. Role and anchor ID are assigned at flash time, so any spare board can replace any node.

# Solution Components

## Anchor System

### Ranging Subsystem

- **Hardware:** Qorvo DWM3000 UWB module communicating via SPI, with a dedicated RF antenna keep-out zone along the board edge.
- **Software:** responds to collar polls with timestamps for double-sided two-way ranging. Self-surveys neighbor distances at power-up, re-verifies periodically; spacings ride in response payloads, large changes trigger a fault state. Ranging frames double as the data channel.

### Control Subsystem

- **Hardware:** Espressif ESP32-C3-MINI-1 microcontroller module, status indication LEDs, and test points/headers for USB-serial programming and debug.
- **Software:** anchor state machine - respond to polls by ID, schedule surveys, manage faults. Debug logs over USB serial.

### Power Subsystem

- **Hardware:** USB-C connector for 5 V wall power input, AP2112K-3.3TRG1 LDO linear voltage regulator (3.3 V, 600 mA output), input/output MLCC decoupling capacitors, and unpopulated footprints for battery charging/feedback circuitry.

## Collar System

### Ranging Subsystem

- **Hardware:** Qorvo DWM3000 UWB module connected over SPI with matching antenna keep-out layout identical to the anchor design.
- **Software:** polls each anchor by ID, computes time-of-flight; collects spacings and status from responses.

### Control Subsystem

- **Hardware:** Espressif ESP32-C3-MINI-1 microcontroller module, system status LEDs, and programming/debug headers.
- **Software:** computes distance to each wall segment from two anchor ranges and the segment length, takes the minimum, and runs the feedback state machine (safe → warning → boundary) with hysteresis. Fail-safe on link loss or low battery. BLE for debug telemetry and stretch-goal phone notifications.

### Feedback Subsystem

- **Hardware:** Piezo buzzer (TDK PS1240P02BT or CEM-1203), coin vibration motor (Vybronics VC1030B028F / 2265 ERM), dedicated haptic motor driver (TI DRV2603) or discrete N-channel switching MOSFET, with a flyback protection diode.
- **Software:** maps zone to output - vibration in warning, escalating to tone at boundary.

### Power Subsystem

- **Hardware:** 3.7 V (150–500 mAh) Li-Po battery with JST connector, Microchip MCP73831 charge management controller, integrated battery protection circuit (DW01A protection IC + FS8205A dual N-channel MOSFET), AP2112K-3.3TRG1 LDO regulator, USB Type-C charging port, and charge status LEDs.
- **Software:** battery monitoring for low-battery fail-safe; duty-cycled ranging for battery life.

## Criterion For Success

1. Collar to wall distance error ≤0.5 m (UWB achieves 0.1 m to 0.3 m of accuracy) at 10 tape-measured test points, including through a doorway and with obstacles.
2. Feedback within 50 ms of entering the warning zone, correct vibration→tone escalation. Cats/dogs can run at 13 m/s; assuming wall deterrent radius is 1 m, we need to detect it within at least 0.077 s to avoid sprint-throughs.
3. Stable output during 15 minutes stationary on the boundary between vibration and neutral zones.
4. Fail-safe within 10 seconds if the pet gets stuck in the deterrent zone.
5. ≥24 hr collar battery life (assuming no vibrations and sound).
6. Collar weight < 60 g.

UV Sensor and Alert System - Skin Protection

Liz Boehning, Gavin Chan, Jimmy Huh

UV Sensor and Alert System - Skin Protection

Featured Project

Team Members:

- Elizabeth Boehning (elb5)

- Gavin Chan (gavintc2)

- Jimmy Huh (yeaho2)

# Problem

Too much sun exposure can lead to sunburn and an increased risk of skin cancer. Without active and mindful monitoring, it can be difficult to tell how much sun exposure one is getting and when one needs to seek protection from the sun, such as applying sunscreen or getting into shady areas. This is even more of an issue for those with fair skin, but also can be applicable to prevent skin damage for everyone, specifically for those who spend a lot of time outside for work (construction) or leisure activities (runners, outdoor athletes).

# Solution

Our solution is to create a wristband that tracks UV exposure and alerts the user to reapply sunscreen or seek shade to prevent skin damage. By creating a device that tracks intensity and exposure to harmful UV light from the sun, the user can limit their time in the sun (especially during periods of increased UV exposure) and apply sunscreen or seek shade when necessary, without the need of manually tracking how long the user is exposed to sunlight. By doing so, the short-term risk of sunburn and long-term risk of skin cancer is decreased.

The sensors/wristbands that we have seen only provide feedback in the sense of color changing once a certain exposure limit has been reached. For our device, we would like to also input user feedback to actively alert the user repeatedly to ensure safe extended sun exposure.

# Solution Components

## Subsystem 1 - Sensor Interface

This subsystem contains the UV sensors. There are two types of UV wavelengths that are damaging to human skin and reach the surface of Earth: UV-A and UV-B. Therefore, this subsystem will contain two sensors to measure each of those wavelengths and output a voltage for the MCU subsystem to interpret as energy intensity. The following sensors will be used:

- GUVA-T21GH - https://www.digikey.com/en/products/detail/genicom-co-ltd/GUVA-T21GH/10474931

- GUVB-T21GH - https://www.digikey.com/en/products/detail/genicom-co-ltd/GUVB-T21GH/10474933

## Subsystem 2 - MCU

This subsystem will include a microcontroller for controlling the device. It will take input from the sensor interface, interpret the input as energy intensity, and track how long the sensor is exposed to UV. When applicable, the MCU will output signals to the User Interface subsystem to notify the user to take action for sun exposure and will input signals from the User Interface subsystem if the user has put on sunscreen.

## Subsystem 3 - Power

This subsystem will provide power to the system through a rechargeable, lithium-ion battery, and a switching boost converter for the rest of the system. This section will require some consultation to ensure the best choice is made for our device.

## Subsystem 4 - User Interface

This subsystem will provide feedback to the user and accept feedback from the user. Once the user has been exposed to significant UV light, this subsystem will use a vibration motor to vibrate and notify the user to put on more sunscreen or get into the shade. Once they have done so, they can press a button to notify the system that they have put on more sunscreen, which will be sent as an output to the MCU subsystem.

We are looking into using one of the following vibration motors:

- TEK002 - https://www.digikey.com/en/products/detail/sparkfun-electronics/DEV-11008/5768371

- DEV-11008 - https://www.digikey.com/en/products/detail/pimoroni-ltd/TEK002/7933302

# Criterion For Success

- Last at least 16 hours on battery power

- Accurately measures amount of time and intensity of harmful UV light

- Notifies user of sustained UV exposure (vibration motor) and resets exposure timer if more sunscreen is applied (button is pressed)