Poi Mirror

Things are changing fast. Expect changes to the panel and the features every time you visit. Last update: .

  • Pick your camera and press Start. Your video stays on your device; nothing is uploaded. To use your iPhone as the camera for a Mac, open this page in Safari (Chrome blocks the ability to choose your phone camera).
  • Set up your camera as close to shoulder height as possible. Adjust Poi length (% of arm) under Overlay until you can find a distance from the camera that allows you to extend your arm through a full circle, tracing the inner overlay circle with your hand. This is how you calibrate your arm extensions with the overlay.
  • Play with LED poi in a dim (but not dark) room for the best trails. Remove other lights such as lamps from the scene.
  • Ideas to start with: Turn on a flower shape, such as a 4-petal antispin, and try to trace it.
  • Use it offline: install it from your browser, open it once with internet, and from then on it opens without. iPhone or iPad: Share, then Add to Home Screen. Android: the ⋮ menu, then Install app. A computer: the install button in Chrome's or Edge's address bar, or File, then Add to Dock in Safari. Offline, everything works except body tracking, the beat finder for Follow the music, lessons and your account.

Thank you to Chris Constantine, whose Poi Trails mirror inspired this one.

Pay attention to your poi directly

Poi Mirror

Picture

Trails
Fine-tune
How this works

Trails follow bright lights, so LED poi in a dim room work best. Trail brightness turns the trail down; the poi itself stays as bright as the camera sees it. Raise Light threshold until only your poi leave trails. Ignore still lights skips lamps and windows; Poi heads only skips broad bright patches like walls and faces (lower Largest light if they still get trails). Bridge gaps joins fast poi into lines; Smooth softens them.

Overlay

Drag on the video to move the centre point.

How this works

Two overlays, one from each shoulder. They start about shoulder width apart, then the body tracker keeps their distance matched to your shoulders as the camera sees them: shoulder width facing the camera, closing to one overlay as you turn side-on. They stay centred on the centre point and never move up or down or sideways together, so if your axis drifts off the centre point, your shoulders drift out of line with them. The dotted line up the middle is where your own axis belongs; Tone while my body stays on the up-down line (under Accuracy) measures from it. Set the centre point between your shoulders. Play the spokes, the drum, Catch the pulse and Accuracy still use the centre point.

Rings
Spokes
How the spokes work

Untick Cardinals or Diagonals to hide that set, or fade a set with its Opacity, down to Off. A hidden spoke still lights when the pulse or a game lands on it, so the beat always shows. D fades them all to 5% and back.

Zoom and view
View
How this works

Zoom crops the picture, so you can stand the camera further away; distance is what evens out near and far arms. ×2 on a phone's main lens is about a 50 mm view. 4K keeps a zoomed picture sharper, if the camera offers it (see the status line). Side-on: stand sideways and spin wheel-plane patterns facing the camera. The screen shows two copies of you, one mirrored and one not, so forward spins turn toward the middle and backward spins away; Swap sides if it's the other way round. Everything else works as usual. Set the centre point in the normal view.

Flower shapes
Rotation
Rotation
How this works

Shapes follow the Size and Poi length settings. Inspins go from 1 and antispins from 3: both are two-circle patterns. At 0° a petal tip points straight up; an inspin's petal is its inner loop. Rotation offers only the angles that put outswings or inswings on the spokes. Dots: large at the outswings, small at the inswings (where the poi passes the arm), a ring at the middle of each petal or loop.

Turning
On the beat
Air
How this works

Draws each shape as a machine at the peak of human skill would spin it facing you. Its arm turns at an even speed, and its hand circles a small circle at the arm's end (Hand circle), speeding up and slowing down as it goes: that is all it has to drive the poi. It lands every outswing (or inswing) exactly on its beat, in line with the arm. Between beats the poi runs ahead or falls behind as gravity and the air push it, and the hand changes its speed as little as it can. Turning is as you see it on screen. Without air the two sides come out as mirror images and the shape is the same both ways round: Newton's laws work the same played backwards, so the side where the poi falls, mirrored, is a side where it climbs. Air always takes energy out, so with air the sides differ a little and the other direction gives the mirror image. Arm length is shoulder to hand; the poi's length is Poi length under Overlay.

Follow routine
Hands
Order
How this works

A routine sets Shape 1 and turns Shape 2 off. The progression: 8 inspins; 4 inspins on the cardinals, then the diagonals; 2 inspins vertical, horizontal and on each diagonal; 8 antispins; 4 antispins on the cardinals, then the diagonals; 6 antispins vertical, then horizontal; then the triquetra pointing up, right, down and left. Random shuffles the same shapes. A chime marks each change.

Delay
Attention cycle
Fade
How this works

The mirror shows your petals; only your poi in the air show your planes and what your hand and wrist are doing. Switch between the two: the mirror fades for a while and you watch your poi directly. The spokes you play and the pulse keep sounding, so you still hear whether you're hitting them. A soft chime marks each change.

Music

No songs yet: press Add songs to choose music saved on this device.

How this works

Plays songs saved on this device (MP3, M4A, WAV and others; not streaming services, which don't give you files) through the app's own sound, so recordings carry the music cleanly whatever you listen with, AirPods included: set the recording's Sound to App sounds. Follow the music, started while a song plays, hears the song directly instead of through the microphone, and the app finds each song's beats and 1s ahead of time, from the whole song (with Beat This!, a beat finder from JKU Linz; a few seconds where the browser can use the graphics card, otherwise about 20 seconds for the first 30 seconds of song, the rest while it plays). Speed slows a song down or speeds it up without changing its pitch. The songs stay on this device and the list lasts until you close the page.

Pulse the beat

Pulse settings

Fine-tune
How Follow the music works

Follow the music listens through the microphone (on this device; nothing is sent) and runs the pulse on the music's beat (where the browser can use the graphics card, with Beat This!, a beat finder from JKU Linz, reading the last 30 seconds heard every second): each spoke flashes and sounds on the beat, so you can catch it even where the music has no drum. Until it's sure of the beat, the pulse waits and the picture shows Finding the beat; once going, it keeps the beat through unsure moments, and stops to look again only if it hears no beat for about 8 seconds. A song played in the Music section is followed from the whole song: the app finds its beats and 1s ahead of time. This is the 1 (or M), pressed on or just after a 1, sets the count, and it stays where you put it until you stop following. If the clicks sound early or late against the music, move Follow timing.

TimeAccent
Which spokes pulse
Beat 1 at
Beats on each spoke
Pattern
Start on
Fine-tune
How the pulse works

Free: no set pattern. The whole overlay pulses on the beat; catch any dot on the hand circle on the beat and it sparkles and plays its note, so you can make up your own patterns, as when you play the spokes. A miss is silent.

The wub's swell leaves room to hear whether a drum hit lands on it (see Drum the circles); the click is the sharper choice. Accented beats sound louder and flash brighter. To accent the diagonals with all eight spokes, set Beat 1 at a diagonal. In 3/4 with all eight, the accent moves round, alternating cardinal and diagonal. If flashes land before the click you hear, which is common with Bluetooth speakers, move Flash timing to the right.

Games
Catch the pulseneeds the pulse and good light

Catch the pulse runs on Pulse the beat: its tempo, beat sound and Follow the music.

Pattern
Catching hand
Hands

Target size is how big each dot is: how close your arm has to be. Catch window is how early or late it can be. Raise either to make it easier, lower them as you get better.

How this works

Poi-fu: catch each pulse on the inner circle (the arm circle) with your hand or any part of your arm, following it round; no poi needed. In good light the body tracker finds your arms, on this device, and draws them: the soft band around each arm is the part that catches. Each beat is judged a moment after it: a sparkle-poof if your arm touched the dot within the catch window, partial points for partly on, a melt if it wasn't. 8 perfect catches in a row add 50% of those 8; each further perfect 8 counts double. Patterns start on the next 1 of an eight. Write your own runs as beats one way, then the other: +3 -1 is 3 beats on, 1 back; +4:2 moves 2 spokes a beat; =2 stays 2 beats.

Two hands: both hands play the pattern. Your catching hand (Either means the right) follows the yellow pulse; your other hand plays it in whichever two-hand mode you choose, and the app recognises which: same-time opposites (mirrored across the up-down line), split-time opposites (mirrored across the side-to-side line), split-time same direction (halfway round) or same-time same direction (together). The blue ring shows where it expects your other hand. A beat counts towards the streak when both hands catch it. With Free, every dot pulses and each hand catches any dot.

Drum the circlesbest with the pulse
Drum on
Tracker

Spinning arm

In good light, the app finds your shoulder, arm and poi head (set the centre point and Size yourself, as usual). The drum then sounds as the poi lines up with your arm, for as long as it stays in line. Keep the spinning arm straight and in view. The tracker (Google's MediaPipe) loads once, about 6 MB (10 MB for Full), and runs on this device: the video isn't sent anywhere.

Your last hit shows here: how far off the pulse it landed, and where on the circle it was.

How this works

Drum the circles from the inside: every outswing strikes the rim, which shakes; every inswing strikes the centre, which sends out a pulse. Anywhere on the circle counts, so the spokes can be off. Start Pulse the beat and land each hit on its wub: each hit shows how many milliseconds it was early or late, with the camera's and the sound's delays taken out, and the nearest spoke. With Play the spokes on as well, a hit near a spoke also plays that spoke's note, fuller and brighter the closer it is, with a shimmer right on the line. For one LED poi; the drum doesn't need trails (T turns them off).

Play the spokesworks without the pulse
Key
Listen to

Music playing in the room? Press Listen, and the spokes retune to its key once it has held steady for a few seconds (about 6–10 s). Listening pauses while the spokes sound, so at a new song, pause for a few seconds and the spokes follow. Uses the microphone; nothing is recorded or sent.

Poi
Pluck on
Sound

Fine-tune
Stars fly
Outswings play

Speed is how fast your hand circles (turns per second); your last strike's speed shows here, to help set the threshold.

How this works

Two moments can pluck: the inswing, when the poi passes the arm (the tip of an inspin's inner loop, the middle of an antispin's inner arc), and the outswing, when the poi is in line with the arm. Each one plays the spoke nearest the arm at that moment, so each plays one spoke. A moment further than the strike window from every spoke plays nothing. Notes rise clockwise from the top. With two poi, each one plucks on its own around the same centre, so two spokes can sound at once. For one LED poi in a dim room; the poi is found with the Light threshold under Trails, and a small ring marks where the app sees it. Set Replay delay to off while playing.

Play the space harpneeds the pulse and good light

Your hand catches the pulse while your poi play the spokes, in the same key: Catch the pulse and Play the spokes at once, on Pulse the beat. The settings below are shared with those three, so the harp starts from whatever you used there last, and a change here changes them there too.

Beat sound
Pattern
Start on
Hands
Key
Sound
Pluck on
How this works

In good light the body tracker finds your hand and your poi head; one poi plays the spokes for now. Target size, catch window, strike window and Follow the music are set in Catch the pulse, Play the spokes and Pulse the beat.

Feedback

Accuracy

Score
Fine-tune
How this works

For one LED poi in a dim room. The poi is found with the Light threshold under Trails; a small ring marks where the app sees it. Feedback follows the live picture, so set Replay delay to off while using it.

Drone alignments

How this works

These two use the body tracker, not the poi's light, so they need good light and don't need Accuracy feedback or the beat. The drone sounds while your arms move in one of the four two-hand modes (same-time or split-time, opposites or same direction), whether or not you hold poi, with the mode's chord in Play the spokes' key (same-time opposites the home chord, I; split-time opposites V; same-time same direction IV; split-time same direction vi), and stops when the symmetry slips. The tone sounds while the line from the middle of your shoulders to the middle of your hips stays on the up-down line through the centre point, fading as you near the edge of the tolerance and stopping once you drift past it; the dotted line marks the axis and the dashed lines either side the tolerance. Set the centre point on your body's middle.

v3 · build 2026-11-08.7

F full screen · T trails · D spokes · O rings · B pulse the beat · A accuracy · S play the spokes · K drum the circles · 0–5 delay · H slide panel aside · R follow routine · M this is the 1