voir / prysm / xrayar

XrayAR

Hidden studs and pipes — the wall is opaque to optics, not to magnetism.

VoirLite / XrayAR · magnetometer + AR overlay

What it does

Glide the phone over the wall. An arc draws underneath where the magnetometer reads a strong signal — the ferromagnetic centre of a stud, the steel jacket of a cable run, the rebar in a slab. The arc is anchored to the wall, not the screen, so a second pass over the same spot shows the same line where the first pass left it.

How it works

The magnetometer samples ~30Hz. Each sample is a vector; its magnitude jumps when the phone passes over metal. A simple debouncer + threshold turns the magnitude trace into a series of detected hits. Each hit is projected onto the wall plane (using ARKit's depth + plane detection) and drawn as a 1cm radius arc. Successive arcs connect into a path so the visitor sees the centerline of a stud as a continuous line, not a dotted scatter.

What it's built on

CoreMotion's CMMagnetometerData feed. ARKit plane detection for the wall surface. A custom debouncer for the magnetometer-to-hit conversion. The arc is rendered via a single RealityKit entity that accumulates its path as you sweep.

live magnetometer access · ar-anchored arc rendered on the wall surface · path persists across the sweep — happen on the device. the cursor trail above is the rhyme; the wall is the real thing.