What this app is
MyChronoWorks makes time programmable. Instead of asking "how long?", it asks "what should happen over time?"
Everything you run — timer, stopwatch, interval trainer, alarm — is a job: a timeline of phases (work, rest, preparation…) with cues attached to moments in it (at start, every 30 seconds, 1 minute before the end, at 50 %). A cue can beep, speak, vibrate, flash the torch, or ring a bell — and it can behave differently depending on your headphones, battery, or ringer.
Everything works completely offline. The app has no network permission at all.
Quick start
Home has four tabs — Jobs, Templates, Tools, and Clocks (Tools and Clocks each have their own topic). Jobs is yours: everything you've built, your groups, and templates you've recently run. Templates is the catalog, grouped by category (Sport, Health, Cooking, Work, Chimes) — HIIT, Pomodoro, Tea, Stopwatch and more.
- Open the Templates tab and tap one.
- Adjust its values (work time, rounds, steep time). The app remembers what you used last.
- Tap Start. That's it — and the template now appears under Jobs → Recently used.
Tapping a job opens a drawer that shows a timeline of the whole job at a glance — phases as proportional blocks with an icon for every cue (a different shape per cue type), and any delayed start in red. A health line flags anything that might affect this run — a missing permission, a scheduled job that needs the battery exemption, or two cues firing at the same instant. "Preview cues" lists them in detail, "Customize" opens it in the builder, and for your own jobs "Delete" removes it. The + button on the Jobs tab builds one from scratch.
You can also drop a home-screen widget for any job (start and control it without opening the app), and add a Quick Settings tile that starts your last-used job or pauses the running one. Long-press the app icon for New job and ChronoLab shortcuts. Deleting a job offers an Undo for a few seconds — a mis-tap is never final.
During a run
The ring is your whole job drawn as a circle: one segment per phase, sized by duration. Teal segments are rest, amber are work. Finished segments dim; the current one fills as time passes.
Controls: Pause/Resume, Skip (jump to the next phase), Back (return to the previous phase, or restart the current one if you're more than a few seconds in), and −1 min / +1 min (shorten or extend only the current phase — in a repeat block, later rounds keep their original length; after +1 min, a passed "1 minute left" warning will politely fire again; −1 min switches off in a phase's last minute).
Hands-free: tap the small microphone line under the dial and a clap skips to the next phase (or records a lap on a stopwatch). Listening stops the moment you leave the screen.
The notification has the same controls, so you never need to unlock the phone mid-workout. The screen stays on while a run is in the foreground.
Stopwatch and laps
The Stopwatch template runs open-ended. Its controls become Lap · Pause · Stop — and with the mic line enabled, a clap records a lap without touching the phone.
Lap records a marker; the latest laps show under the dial. Stop ends the run. Average, fastest, and slowest lap land in History together with the full lap list, and any session can be shared as CSV from its detail view.
Turn on "Announce laps aloud" in the builder and each lap is spoken as you take it — its number, split time, and whether it was faster or slower than the last — hands-free.
Set a lap length in the builder and every lap is also a pace: 400 m turns a 2:00 lap into 5:00/km, shown beside the lap time and spoken with it.
Several jobs at once
Start as many jobs as you like — tea, eggs, and laundry can all count down together. Each run gets its own card above the tabs (a small ring showing its progress) and its own notification with its own controls.
A job can also run more than once at a time: start one that is already running and it gets a second run of its own, numbered #2 — two egg timers, two different times.
Sounds don't fight: a finishing job's ring outranks another job's ticking, speech never talks over itself, and the torch is shared politely.
Chains and groups
Jobs can start other jobs.
- In the builder, "Then start" picks jobs that launch automatically when this one completes — "Sear steak" finishes, "Rest meat" begins. Cancelling a job never chains.
- A job with the "After job" trigger starts itself whenever its parent completes — save it once and the chain is standing.
- A group (Jobs tab → New group) starts several jobs with a single tap: name it, check the members, done. Tap the 🔗 card to fire them all; long-press to edit.
If your jobs form a loop (A starts B, B starts A), the builder warns you — loops are allowed on purpose, but they stop themselves after 8 links.
Building your own job
Tap + on the Jobs tab and pick the step-by-step wizard, which explains each part as you go — or "Skip to the full editor" for everything on one screen. "Customize" on any template opens the editor on a copy. Either way a job has these parts:
- Appearance — a name, an icon, and a card color, so your jobs are easy to tell apart.
- Trigger — how it starts: manually, after a delay, daily or weekly at a time, on a sound, or after another job. Times use a clock picker; delays use a number with a sec/min/hr switch.
- Timeline — phases, in order. "Add repeat block" makes a group like [Work → Rest] × 8; adjust the count with + and −. Reorder with the arrows; tap a phase to rename it or set its length (a plain number plus a sec/min/hr chip — so 10 seconds is just "10" and "sec").
- Cues — per phase: pick when, what (beep, vibrate, torch, bell, spoken words, a notification), and optionally a condition with a separate set of actions for the other case. The bell can be any system sound (Ringtone) or an audio file you pick (File…) — the ▶ button previews it.
- Every phase — one place to add a cue that fires at the start of every phase, like a beep so you hear each switch.
- Laps — "Announce laps aloud" speaks each lap and how it compares to the last, for stopwatch-style jobs.
- Speak each phase — announces every phase and its length aloud, then counts down 3-2-1 to the next; the run screen also shows the next phase and total time left. Hands-free intervals.
- When finished — finish actions, "ring until dismissed" for alarm-style behavior, an optional snooze, and "Then start" for chaining into other jobs.
- Simulate — run the whole job on a virtual clock and read every cue it would fire, toggling headphones, battery, and ringer.
Save puts the job in the Jobs tab. Tap it to run; long-press to edit or delete. If you keep launching it with different values, the launch dialog offers to make those the defaults.
Schedules and delayed starts
A job with a Daily or Weekly trigger arms itself when you save it and re-arms after every firing — and after reboots and timezone changes. Its card shows when it will next fire ("next in 5m", "next in 3h") so you can see the schedule is live. A job with a Delayed trigger opens the run screen the moment you tap Start and counts the delay down on the dial ("Starting soon") before the job begins — so you always see it working; the countdown keeps running even if you leave the app.
Around daylight-saving changes: a time that doesn't exist that night (the skipped hour) fires at the first valid moment after the jump; a time that happens twice fires once, at the first occurrence.
Sound triggers and the microphone
In the builder you can give a job a sound trigger — a clap, a whistle, or any sustained loud noise. When you do, the app asks for microphone permission right then: if you never add a sound trigger (and never tap a mic action), you're never asked at all.
Launching such a job arms the microphone on the launch screen. For the first ~3 seconds the app measures the room's background noise — stay quiet — then it listens. The threshold adapts to the room, so a clap works in a silent kitchen and a noisy gym alike. The same listening works mid-run: the mic line on the run screen turns a clap into a lap or a phase skip.
Privacy, plainly: the microphone runs only while the app is visible in front of you. Leave it or tap stop and the mic is released instantly. It never runs in the background, and no audio is stored or sent anywhere. The screen stays on while armed so arming can't silently expire in your pocket.
Finish rings, dismiss, and snooze
A job with "ring until dismissed" keeps ringing on the alarm volume — even with media volume at zero or the ringer on silent — until you tap Dismiss on the screen or the notification.
Snooze silences the ring and re-runs the whole job after the snooze time. Cancelling a run mid-way goes silent immediately.
Sound cues during a run (ticks, spoken coaching) behave differently on purpose: they play on media volume and duck your music instead of interrupting it.
What a cue can do
A cue is what happens at a moment in a job — beep, vibrate, speak, torch, notify, or colour the screen. In the builder, open a phase to add one and choose when it fires: at the start or the end, after so long, so long before the end, at a percentage, every so often — or at random.
- Random — "every 30 to 90 seconds", for reflex drills, surprise intervals or attention checks. The pattern is fixed the moment the run starts, so pausing or closing the app does not change it.
- Say — the text may contain {time}, {date} or {bells}, filled in at the moment it speaks.
- Screen — paints the whole screen a colour, which holds until something changes it.
Speaking timer
The Speaking timer template is Toastmasters timing: the whole screen turns green while there is time, amber to wrap up, and red when the speaker is over — readable from the back of a room. The default is a five-to-seven minute speech; change the three lengths to suit.
The last phase is open-ended on purpose. A timer that stopped at the red light would take the clock away exactly when the chair needs to know how far over the speaker has run.
Any job can do this: add a Screen cue to a phase and pick a colour. It holds until another cue changes it.
Talking clock and ship's bells
Two templates under Chimes.
- Talking clock says the time aloud on the quarter hour. Not fifteen minutes after you tap start — it waits for the next :00, :15, :30 or :45, which is what makes it a clock rather than an egg timer.
- Ship's bells strikes the hour the way a ship does: one to eight bells every half hour, rung in pairs, starting again every four hours. Midnight is eight bells, not none.
Both use a trigger called "On the clock", which you can give any job of your own: it waits out the gap to the next whole interval before starting, and shows that wait as a countdown.
Tools
Tools is the third tab: things the app can do that aren't jobs. A job has phases and a timeline; each of these has its own way of running, which is why they live apart from Templates.
It comes in two groups, because two different kinds of thing live here — a game clock is played, an instrument is consulted.
Game clocks: chess, Go, shogi, backgammon and Scrabble, each with its own card and its own time controls. See "Other games on the same clock".
Instruments:
- Tally counter — count anything, every press timestamped.
- Countdowns — days until a date that matters.
- Pace calculator — distance, time and pace: fill in any two and the third appears, in kilometres or miles.
Time controls you save appear below them, beside the game they configure.
Chess clock
Two clocks, one running at a time: tap your side to stop yours and start your opponent's. Pick a preset — bullet, blitz, rapid, classical — or build your own time control with stages, and save it for next time.
Increment can be Fischer (added after your move), Bronstein (only what you actually used, up to the increment), or a simple delay before your clock starts falling. When a flag falls the app can stop and sound the alarm, stop quietly, or keep counting into the negative for a casual game.
Beyond increments there is overtime: periods you must move inside once the main time is gone. That is how Go and shogi are played — see "Other games on the same clock".
The clock keeps running with the screen off and survives the app being closed — a paused clock still shows whose move it is. Every move is timed, and a finished game lands in History with its move times.
Other games on the same clock
Two clocks with one running is the shape a lot of games need, so each game has its own card in Tools. They share one clock underneath; only the time controls differ.
- Backgammon 10 + 12s delay — a reserve you spend from, plus a fixed delay each move that never banks.
- Scrabble 25 min — sudden death that keeps counting past zero, because the penalty there is points rather than the game.
- Go 30 min absolute — one budget, no overtime at all.
- Go 30 min + 5×30s — byo-yomi. Once the main time is gone you have five periods of thirty seconds: move inside a period and it resets for nothing, overrun it and you drop one and carry on, overrun the last and you lose.
- Go 30 min + 25 stones / 10 min — Canadian byo-yomi. Place twenty-five stones inside ten minutes and the ten minutes begin again, for as long as you keep placing them. The clock runs across the whole batch instead of resetting each move, so the stones still owed are shown beside it.
- Shogi 20 min + 30s — byo-yomi with a single period, which is shogi's "thirty seconds a move for the rest of the game": it resets on every move and ends the game the one time you overrun it.
- Shogi 10 + 30s — a Fischer increment, as online shogi servers offer it.
Overtime and increments cannot be combined — no real time control pairs them, and the app will not let you build one that does.
Tally counter
Count anything, with every press timestamped. Tap the big button — or use the volume keys, so you can keep a count without looking at the screen.
It reports the count, elapsed time, the rate per minute, and the gap since the last press. That last number is the one contraction timing wants; the rest suit bird counts, breath counting or sampling.
Add named counters to track several things on one clock — species, defect types, people — each with its own card. Undo removes the most recent press wherever it was made. Export writes every press to CSV with its counter, time and interval. Finishing records the count in History.
Countdowns
Days until a date that matters — an exam, a launch, a wedding. Add one with a name, a date, and optionally a time, then put the widget on your home screen: it shows the event you pinned, or the soonest one still ahead.
Days are counted as calendar days, so Tuesday evening to Friday morning is three days rather than one — and the two weeks a year when the clocks change still count seven days like any other.
Turn on "Remind me on the day" and you are notified at the event's time, or at nine in the morning for an all-day one. Events that have passed stay in the list, counting up instead of down.
World Clocks
The fourth home tab, Clocks, is a world clock and cross-zone meeting planner — the one part of the app that isn't a job. Tap + Add a city and search by city or country — or switch to Custom to drop in any place by its own name and coordinates (the time zone is worked out offline, no GPS). The list even includes the world's first and last time zones, for the curious. Each clock shows its current time, how far ahead or behind it is, whether it's the same day (or +1 / −1), an ● open / ○ closed dot for its working hours, a sunrise/sunset line with a ☀/☾ mark, and — if that zone changes its clocks within two weeks — a daylight-saving badge. Your own zone is pinned at the top, and your list is saved on the device. Times follow your phone's 12- or 24-hour setting, or pick your own with the 🕓 control. Long-press any clock for a detail sheet: give it a custom name, and see sunrise, sunset, golden hour, blue hour, twilight, daylight progress, and whether it's within working hours.
Two things make it more than a list:
- Perspective — tap any clock and everything re-reads from there: "you are here" moves to it, and every other city's offset and day now count from that city. Tap it again to return to your own zone.
- Time slider — drag the scrubber above the list and every clock moves together, so you can find a good moment across zones. Tap Now to snap back to live.
A control line switches the view — List, Tiles (analog or digital faces), or Planner — and sorts your clocks (by order, name, or local time).
The Planner draws each city as a day-long strip shaded night / working hours / daytime, aligned so you can see when workdays overlap. A bright line marks each city's local midnight, so you can tell at a glance which places are already on yesterday or tomorrow, and a UTC offset (UTC+9, UTC+5:30…) runs down the right. Set your own working hours and step to any day with the ‹ date › arrows. Below it, "Best times" lists the fullest meeting hours — weekends and hours when you're off are left out. Tap one to create a scheduled reminder at that moment; if the hour has already passed today it rolls to the next day so it still fires. It lands in Jobs and rings on time.
The Tiles view offers a third face: Binary, a BCD clock you read by adding up the lit dots in each column — with a BCD / True switch and a card that explains it the first time. The ⌘ line adds UTC, the Unix epoch, the ISO week and the day of the year. Search accepts a UTC offset ("+5:30") or a zone abbreviation ("CET", "PST") as well as a city or country.
A Best times row can be shared as text — "Tue 21 Jul · 15:00 Prague · 22:00 Tokyo" — to paste into a chat. When you create a reminder from one, the dialog shows the slot in every one of your clocks and offers 10, 30 or 60 minutes' warning. From a clock's detail sheet you can also set a one-off reminder for its next sunrise, golden hour or sunset.
Everything is offline — the city list is built in, and the app never uses your location.
Home-screen widgets
Four widgets:
- Job — start and control a job without opening the app.
- Clocks — up to four of your world clocks, keeping themselves up to date.
- Binary — a BCD binary clock, hours and minutes, with the 8·4·2·1 weights down the side.
- Countdown — days until your pinned event.
Add them the usual way: long-press the home screen, then Widgets. The binary and countdown widgets refresh on their own; if one ever looks stale, opening the app puts it right. There is also a Quick Settings tile that starts your last-used job or pauses the running one.
Backup: export and import
Export jobs (bottom of the Jobs tab) writes every custom job and group to a single file wherever you choose — a safe copy, or the way to move to a new phone. Import jobs reads such a file back — showing a preview of what it contains before anything is added — and scheduled jobs re-arm their alarms automatically.
To share just one job, open it and tap Share: it sends a small file a friend can open and import (their own copy — no account, no server).
Templates don't need exporting — they're built in. Your run history stays on the device it was recorded on.
History and the event log
Every finished or cancelled run is recorded. History (top of the home screen) lists them with date, duration, and outcome; tap one for the full event log — every phase change and cue, with how many milliseconds late it fired — and share it as CSV. Stopwatch sessions include the lap breakdown. Tap "Insights" in History for the aggregate view — per-job runs, completion rate, average duration, and for stopwatch jobs how steady your laps are (σ) — with a one-tap CSV of the summary.
Sessions are yours: they live only on this device, for as long as you choose — the Keep chips at the top of History set the retention window (forever, a year, or 90 days), and "Delete all sessions" wipes them in one confirmed tap.
ChronoLab: diagnostics and precision
Timers are only as reliable as the system allows. Open Settings (the gear, top right) and ChronoLab shows the three switches that matter:
- Exact alarms — lets cues fire on time while the phone sleeps.
- Notifications — without them you can't see runs or finish alerts.
- Battery optimization — aggressive battery savers can kill long timers; exempting the app prevents that.
Each row has a Fix link to the right settings page. Then run the self-test: it starts a 60-second timer — turn the screen off and wait for the beep. Come back and the screen shows exactly how many milliseconds late the cue fired. Under 500 ms is healthy; seconds late usually means battery optimization needs the exemption.
ChronoLab also aggregates cue latency across your real runs — p50 / p95 / max, straight from the event log — and offers a reaction-time test: tap when the panel turns green to measure your own reaction, with best and average for the visit.
If a cue didn't fire or was silent
- Silent finish? The finish ring uses the alarm volume — check it separately from media volume.
- Silent mid-run cue? Ticks and speech use media volume, and a conditional cue may have taken its other branch (e.g. "vibrate when no headphones"). The run's event log in History shows which branch fired.
- Late cues with the screen off? Run the Reliability Check self-test and follow its Fix links — battery optimization is the usual culprit.
- Cues stopped after a reboot? They shouldn't: running jobs and schedules re-arm at boot. If one didn't, the History log for that run will show what happened — and is worth reporting.
Settings: look and language
The gear (top right) opens Settings:
- Theme — Night (the dark instrument-panel look), Day (light), or System to follow your phone.
- Accent — five finishes (Amber, Ember, Verdant, Cobalt, Violet); each re-colors the whole app, background included, in both themes.
- High-visibility text — brightens secondary text and dividers for easier reading.
- Language — System, or any of the languages the app ships in.
- Reliability — the diagnostics above.
Session retention and "delete all" live in History; exporting and importing jobs is at the bottom of the Jobs tab.