Getting in, and keeping your work
Horolator opens in a browser with no sign-up and no account gate. This chapter covers the first run, moving between the four sections, and everything to do with projects — where they are kept, what would lose them, and how to get a copy off the device.
Open Horolator for the first time and get your bearings
The first time you open the app, to learn what the screen is telling you.
- Open the app address in a current browser. There is no sign-up and no account gate; the app opens straight into a working section.
- You land on the Library. The heading reads “Library”, the line under it “Visual NIHS standards, unit converters and watchmaking glossary.”, and four tabs follow: “Standards”, “Unit converter”, “Gear tool”, “Glossary”.
- Read the header left to right: the Horolator mark, the name, the line “Tools for independent watchmakers”, a globe-marked dropdown, a “Feedback” button, then the four-button section switcher — Library, Calculator, Designer, Simulate — with the current section filled in the accent colour.
- Below 640 px the section buttons and the “Feedback” button drop their text and show icons only. The names remain as tooltips and for screen readers.
- Look at the foot of the page. Every section except Designer carries “Based on NIHS standards.” on the left and the italic line “A bow to you — Reigi” on the right. That signature is a button: it opens the About dialog.
- Next time you open the bare address you land on whichever section you used last. One exception: a remembered Simulate is sent back to the Library, so the app never relaunches into Simulate.
- The section is called Library, but its address is /reference — an old route name kept so existing links still work.
- The “Feedback” button exists only in a build with the feedback backend configured. A self-hosted build without it simply hides the button.
Move between Library, Calculator, Designer and Simulate
Every time you switch task — looking a standard up, calculating, designing, or watching the movement run.
- Use the four-button group at the right of the header; its accessible name is “Sections”. One press per section. The active one is filled with the accent colour, and pressing it again does nothing.
- Below 640 px the four are icons only, in the same order: Library (open book), Calculator (keypad), Designer (cog), Simulate (play-in-circle). Hover to see the name.
- With a project open, press “Designer” to return to that project rather than the list — the address carries ?p= and the project's id.
- Press “Simulate” with a project active and it opens that project straight away; the page heading becomes the project's name. For a different one, press “← Projects” and choose from the list headed “Pick a project to simulate”.
- Press “Calculator” at any time. It never asks for a project — it is standalone.
- Bookmark or share the addresses directly: /reference (Library), /calculator, /designer, /simulate. Refreshing any of them keeps you where you were.
Change the interface language
When you would rather work in your own language, or want to check a term against the English.
- In the header, open the dropdown with the globe icon. Its tooltip and accessible name are “Language”; it carries no visible label.
- Choose from the list. Each language is written in itself, ordered by language code: Čeština, Deutsch, English, Español, Suomi, Italiano, 日本語, 한국어, Nederlands, Polski, Português, Русский, Svenska, Türkçe, Українська, 简体中文, 繁體中文 — seventeen in all.
- Carry on working. The interface changes at once; there is no reload, and nothing in your projects is touched.
- Your choice is remembered on this device. On a first visit the app follows the browser's language, and anything untranslated falls back to English.
- Dates in the project list follow the app language you chose, not the device's.
- French is written but held back until it is complete. It will simply appear in the list when it is released.
- The “What's new” entries are authored in English in every language, by design. The dialog's own chrome is translated.
Install Horolator on the device so it has an icon and works offline
When you want Horolator without a browser window round it, or need it where there is no network.
- Open the app in the browser you want to install from, while online, and let it finish loading once. That first load fills the offline cache.
- Use the browser's own install control for web apps. Horolator shows no install button of its own, and the gesture and its wording belong to the browser.
- Check the result: the installed app carries the Horolator icon, opens in its own window with no address bar, and starts at the app root.
- Test the cache by putting the device in flight mode and opening the installed app. The four sections should load and your projects should be there.
- Open the Sketch workspace and the Spring lab while online. Each loads its solver over the network, and they are the one part of the app that does not work offline.
- Everything else runs offline: the whole Library, the converters, the glossary, every calculator, Designer and the Simulate runner. The reference data is compiled into the app itself.
- Signing in, cloud sync and sending feedback also need a connection.
- Updates need no action. The app asks for a new build each time you return to it and reloads once if the open page has gone stale — you never have to clear the browser or reinstall for a fix.
Create a project and name it
Starting a new movement — every design in Designer and Simulate lives inside a project.
- Press “Designer”. The front door is the project list, headed “Projects”, with the line “Open a movement, or start a new one. Saved on this device; cloud sync arrives when you sign in.”
- Press “New project”, at the top right or in the empty-state card under “No projects yet.”. The project opens at once, named “Untitled movement”, with the name box focused and its text selected.
- Type the name and press Enter. Escape leaves the previous name; clicking away commits what you typed; an empty name is ignored and the old one kept.
- To rename later, click the name in the top bar — its tooltip reads “Click to rename this project”.
- To leave, press “← Projects” at the far left of the top bar. On a phone that button shows the arrow alone.
- On the very first entry into Designer (or into Simulate) one project already exists, called “My movement”, built from whatever the tools were holding. Rename it, use it, or leave it.
- There is nothing to save by hand. About 0.8 seconds after you stop editing, the project record on this device is rewritten, and pressing “← Projects” flushes it immediately. The Caliber panel says as much: “✓ Values save to the project automatically.”
- The address now ends in ?p= and the project's id, so the browser Back button returns to the project list rather than leaving the app. With a tool panel or sheet open, Back closes that first.
Open, duplicate, rename or delete a project
Housekeeping in the project list — trying a variant, tidying names, clearing out old work.
- Press “Designer” to reach the list. Projects are ordered most-recently-edited first; each row shows the name and “edited” with the date.
- Open a project by clicking its name, or the “Open” button on its row.
- Press “Duplicate” to copy one. The copy appears at once, named after the original with “(copy)” appended.
- Press “Rename” to edit the name in place. Enter commits, Escape cancels, clicking away commits; a blank name is ignored.
- Press “Delete” to remove one. A dialog headed “Delete?” asks: Delete “<name>”? This permanently removes it (and its cloud copy if synced) and can't be undone. Press “Delete” again to go through with it.
- Cancel a deletion with “Cancel”, Escape, or a click on the dark backdrop. “Cancel” holds the focus, so a stray Enter cancels rather than deletes.
- A duplicate is a fresh local project, unlinked from the original's cloud copy, and it carries a copy of the edit history.
- If you are signed in and that project is linked to the cloud, deleting removes the cloud copy too.
Know where your work is kept — and what would lose it
Before you trust anything important to the app, and before clearing your browser.
- Understand the default: projects are stored by the browser on this device, under the key horolator.projects. The open project also keeps a live working copy under horolator.wizard, rewritten on every change, which is what makes a crash or an accidental tab close harmless.
- Note the three smaller keys that hold preferences rather than work: i18nextLng (language), horolator.lastSection (which section reopens) and horolator:lastSeenVersion (whether you have seen the latest “What's new”).
- Accept the consequences: a different browser, profile or machine starts with an empty project list; clearing the site's data deletes your projects; work done in a private window goes when the window closes.
- If the work matters, sign in and let it sync. The cloud copy is the only copy that is not on this device.
- There is no project file to export or import. A whole design cannot be written to disk and carried elsewhere. Individual geometry can: a generated part or a sketch as DXF or SVG, the Library gear tool as DXF, a Spring lab blade as DXF, SVG, STEP or a JSON package.
- Two further keys appear once you use the Library gear tool — horolator.gear and horolator.gearTrain — alongside horolator.session.
- Nothing about a design leaves the device unless you sign in and sync, or you attach a screenshot to a feedback message yourself.
Sign in for cloud sync
When you want the same projects on a second machine, or a copy that survives clearing the browser.
- Know the shape of it first: every part of Horolator works signed out. Signing in adds one thing — your projects also live in the cloud.
- Press “Designer” and open any project. The sign-in control sits inside an open project, not on the project list: look at the far right of the project's top bar for “Sign in”.
- Press it. The panel is headed “Sign in for cloud sync”. Fill the two boxes — their placeholders read “Email” and “Password” — and press “Sign in”. “Cancel” closes the panel.
- With no account yet, fill the same two boxes and press “Create account” instead. If confirmation is required you will see “Account created — check your email to confirm it, then sign in.”
- For a forgotten password press “Forgot password?”, enter your email on the “Reset your password” panel and press “Send reset link”. The app answers “Check your email for a password-reset link.”; “← Back to sign in” returns. Opening that link puts the app into a “Set a new password” screen, whichever section it lands on.
- Once signed in, the same corner shows your email address and a “Sign out” button.
- Press “← Projects”: the list now carries a “Cloud — also here” block and each project shows a sync badge.
- The list's own hint reads “Sign in (top right) to sync your projects to the cloud.” while the control itself lives one level in, inside a project. On a fresh load the list shows no cloud block until you have opened a project once.
- In a build with no cloud backend configured, that corner shows a quiet “Offline” chip whose tooltip explains that sign-in is unavailable and the design is kept on the device.
Sync a project to the cloud, and settle a conflict
Once signed in — to push work up, pull it down on another machine, or decide which copy wins.
- Leave it alone, first of all: with a project open, signed in and online, the project is pushed about four seconds after you stop editing, and again when the tab is hidden or closed.
- Watch the chip in the project's top bar: “Synced”, “Unsynced” or “Offline”, showing “Saving…” while a push runs. While it reads “Unsynced”, pressing it pushes at once; its tooltip is “Save this project to the cloud”.
- In the project list, read each row's badge — “Synced”, “Unsynced”, “Cloud newer”, “Conflict” or “Local only” — and use the action beside it: “↑ Cloud” for a first upload, “↑ Push”, or “↓ Pull”.
- On a “Conflict” row, both copies have changed since the last sync, so both “↑ Push” and “↓ Pull” are offered. Choose which copy survives; nothing is merged automatically.
- Press “Sync all” at the top of the list to settle everything at once. It pushes what is local-ahead and pulls what is cloud-ahead, then reports “Synced all projects.”
- To fetch a project that is in your cloud but not on this device, look under “Cloud — also here” and press “Open” on it. “Refresh” re-reads that list.
- The rule is stated in the app: “Cloud sync is on. Projects sync by last edit time (last-write-wins); local always works offline. A conflict lets you choose push or pull.”
- A failed push stays silent — the chip simply remains “Unsynced” and is retried on the next change or when you are back online.
- If a cloud copy was deleted on another device, the app keeps your local one and says “That cloud copy was removed elsewhere — kept locally.”
Check which version you are running, and see what changed
Before reporting a problem, or when the app looks different from yesterday.
- Go to any section except Designer; the Designer studio deliberately has no footer.
- Scroll to the foot of the page and click the italic line “A bow to you — Reigi”.
- Read the dialog “About Horolator”. Under the title it shows “Version”, then the version number and the build id separated by a middle dot.
- Quote both parts if you report a problem — the build id changes with every deploy.
- Press “Close”, or Escape, or click the dark backdrop.
- The dialog also names the maker, states that the tools implement public horological standards (NIHS, ISO, DIN) together with classical watchmaking theory, and carries the caveat that all calculations and dimensions are guidance, without warranty: verify critical dimensions before manufacturing.
- After the app has updated itself you meet a “What's new” dialog once, listing the changes for every version you had not yet seen. Close it and it will not return for that version. It never appears on a first-ever visit.
Send feedback from inside the app
When something is wrong, missing or annoying — the report reaches the maker with the context already attached.
- Press “Feedback” in the header. It is there in all four sections; below 640 px it is the speech-bubble icon next to the section switcher.
- Write in the big box. The panel is headed “Send feedback”, with the line “Spotted a bug or have an idea? It goes straight to the maker.”, and the box's placeholder reads “What's working, what's not, what you'd change…”. “Send” stays greyed out until there is text.
- Fill the email box if you want a reply; its placeholder is “Email (optional, for a reply)”. It is prefilled with your address if you are signed in; leave it blank to report anonymously.
- Attach one item if it helps: “Attach screenshot” briefly hides the panel, captures the view behind it and returns with a thumbnail; “Attach image / video” picks a file from the device, up to 50 MB. “Remove” clears it after a confirmation.
- Read the block headed “Attached automatically:” before you send. It lists exactly what travels with the message: “Signed in”, “View”, “Width”, “App” and “Browser”. Your projects are not attached.
- Press “Send”, or Ctrl/⌘ + Enter. On success the panel says “Thanks — your feedback was sent.” and offers “Done”.
- If it fails you get “Couldn't send right now — your text is kept; try again.” and your text stays in the box. Escape, the ✕, or a click on the dark backdrop closes the panel.
- Heed the panel's hint: a screenshot may not capture the drawing canvas. For those, record or photograph the screen and attach that instead.
- The submitted record also carries the exact build identifier alongside the five lines shown, so a report pins to one build.
Looking things up in the Library
The Library is the reference section: 87 NIHS standards presented as working pages, four unit converters, a gear tool and a trilingual glossary. Its address is /reference — an old route name kept so existing links still work. The Gear tool tab is covered in the final chapter, because its whole purpose is to produce a file for CAD.
Open the Library and choose a tab
Every Library task starts here.
- Press “Library” in the four-button section switcher. Below the small-screen breakpoint the buttons are icons only; the tooltip and accessible name are still “Library”. The address becomes /reference.
- Check the header: the title reads “Library”, the right-hand end of the same line reads “87 NIHS standards”, and the line beneath reads “Visual NIHS standards, unit converters and watchmaking glossary.”
- Pick one of the four tabs under the header, left to right: “Standards”, “Unit converter”, “Gear tool”, “Glossary”. “Standards” is selected by default.
- 87 is the number of records in the standards data set, not the number of screens you can browse — most are reached through the ten category pages.
- Switching tabs clears the search box and drops any category or standard you had drilled into.
- The active tab is carried in the address (?tab=units, ?tab=gearTool, ?tab=glossary). “Standards” is the default and carries no parameter.
Find a standard by browsing the categories
You know which part of the movement you are working on but not the standard number.
- On the “Standards” tab, leave the search box empty. Ten category cards appear, each with a count badge on the right.
- Read the order: “Pivot Fits” (2 std), “Threads” (4 std), “Barrel & Spring” (3 std), “Gear Train” (8 std), “Balance & Hairspring” (5 std), “Jewels” (19 std), “Shock Absorbers” (2 std), “Screws” (13 std), “Case & Crown” (29 std), “Lubrication” (2 std).
- Click a card. You land directly on that category's working page — there is no intermediate list of standard numbers.
- For “Case & Crown”, click again in the second grid of five: “Case openings” (12 std), “Crystals” (2 std), “Gaskets & O-rings” (2 std), “Crown & stem” (7 std), “Dials” (7 std).
- Leave a Case & Crown sub-page with “Back to Case & Crown” at the top left.
- Leave a category page with “Back to categories” at the top left, or with the browser Back button; the category is held in the address as ?cat= and its name.
- The browser Back button will not step back to the Case & Crown sub-grid — that choice is not held in the address, so Back leaves the category altogether.
- The badges read literally “2 std”, “29 std”; the template has no plural form.
- The five Case & Crown sub-counts do not reconcile with the 29 on the parent card. They are worked out from the NIHS number prefix, so NIHS 62-xx is counted by both “Gaskets & O-rings” and “Crown & stem”, and NIHS 66-01 by neither — even though the “Gaskets & O-rings” page is built on it.
Find a standard by searching
You know a term, a number, or even a tabulated value — a fit class, a diameter — and want every standard that mentions it.
- On the “Standards” tab, click the search box at the top. Its placeholder is “Search NIHS standards (e.g. pivot, balance, screw)…”.
- Type. Results replace the category grid as you type, with a line above them giving the number of results for your query.
- Read a result row: the standard number in amber monospace, a small grey category chip beside it, the title in bold, and an italic line saying where the match landed — in the title, in the standard number, in the description or notes, in a formula, or in a named table.
- Click the row to open the entry.
- Click “Back to results” at the top left to return; your search text is still in the box. Clear the query with the × at the right end of the search box (accessible name “Clear search”).
- The query is matched against the standard number, its title, its figure description, the maintainers' extraction notes, every table title, description, column header, note and cell value, and every formula string plus each symbol's description.
- Matching is plain case-insensitive substring matching on that joined text: no stemming, no fuzzy matching, no accent folding. “pivots” will not find “pivot”, and a multi-word query returns only standards containing every word.
- If nothing matches you get a single card saying no standards match, with your query quoted back.
- The title in a result row is the raw data title; the page you open may show a shorter editorial title. NIHS 10-02 lists as “Barrels – Drum and cover” and opens as “Barrel drums”. 30 of the 78 plain entries differ this way.
- This search box exists only on the “Standards” tab. The glossary and the symbol table have their own.
Read a standard entry and check its citation
You have opened a standard from the search results and need to read off its numbers or see what it is sourced from.
- Note the nine exceptions first: NIHS 05-01 and 05-03 open the Pivot Fits category page, and NIHS 54-01, 54-02, 54-03, 55-01, 55-02, 55-03 and 55-04 open Screws. For those, follow the category-page procedure.
- On a plain entry, look at the top for the bar headed “Part identifier”: the standard number, the category and the title joined by a middle dot, with “Export page data (PDF)” at its right-hand end. It is drawn only where the standard has at least one numeric table cell — 27 of the 78 plain entries carry it.
- Read the header card beneath: the standard number in amber monospace, a small uppercase category chip, then the title.
- Look at the foot of that header card for a line beginning “Standard:”. It appears only when the record carries an official designation.
- Read the written description of the figure below the header. There is no drawing in this view — a dashed amber panel reads “SVG illustration coming soon”.
- Read the data. Each table is introduced by a small amber “Table 1”, “Table 2” chip plus the table's own title and description. Numeric cells are right-aligned monospace, code cells such as g4 or H6 are amber monospace, and empty cells show “—”. Footnotes follow as a bulleted list.
- Read the formulas, where the record has them, under the “Formulas” heading: the expression in a monospace box, with each symbol and its meaning listed underneath.
- In the current data set exactly one record carries an official designation: NIHS 58-10, which shows “Standard: SN 285 810:2001, revalidation 2001”.
- If the record has neither tables nor formulas you get one card reading “No tables or formulas extracted for this standard yet.” Fifteen of the 87 records are in that state.
- Every real drawing in the Library lives on the ten category pages. Entries reached through search show the placeholder and the prose description only.
- No identifier bar means no PDF export button on that entry; the two live in the same block.
Narrow a category page until it names your exact part
You want dimensions for a specific part — a screw size and end type, a jewel combination, a crown model — and want the drawing and the identifier to follow your choices.
- Open the category from the grid. Every category page has the same order, top to bottom: header card with title, one-line description and the selectors; the “Part identifier” bar with its “Export page data (PDF)” button; the drawing; guideline prose where the standard supplies it; the data; the collapsed NIHS source tables; and a “Standard:” footer.
- Work the selectors left to right. Later controls appear or disappear according to the earlier choice, and on Threads, Balance & Hairspring, Jewels, Screws and Shock Absorbers a later dropdown is greyed out when the earlier choice leaves it nothing to offer. Every change redraws the figure and rewrites its live dimension values.
- Pivot Fits: set “Standard” (“NIHS 05-01 — general train pivots” or “NIHS 05-03 — escapement / balance pivots”), “Bore grade” (“Bore H5 (+4/0 µm)” or “Bore H6 (+6/0 µm)”, shown for 05-03 only) and “Nominal pivot diameter (mm)”. Change the shaft grade from the chips under “Component quick-pick”, or by clicking a row in the clearance table.
- Threads: set “Thread type” (“S-thread (NIHS 06-05)” or “M-thread (NIHS 06-06)”), then “Thread size” (“All sizes” or one designation).
- Barrel & Spring: set “Component” (“Barrel drum dimensions”, “Barrel arbor dimensions” or “Mainspring – bridle – brake spring”), then type your own numbers into the five fields under “Key inputs”: “D1 (mm)”, “d3 (mm)”, “e1 (mm)”, “h1 (mm)”, “d4 (mm)”. The derived rows recompute live.
- Gear Train: answer “What do you need?” (“Ogival tooth profile”, “Epicycloidal tooth profile”, “Cannon-pinion (fits + heights + selections)” or “Sliding pinions”). The first two then offer “Module m (mm)” and “Pinion leaf count z₁”; the third offers “Hand-fitting row”; the fourth “Square side c”.
- Balance & Hairspring: set “Component” (“Balance wheel (annular)”, “Balance staff (pivot)”, “Hairspring numbers (CGS)”, “Hairspring connection — collet end”, “Hairspring collet”) and “Size (highlights row)” (“All sizes” or one row).
- Jewels: work the five-step cascade — “Component”, “Hole type”, “Bore Ø t (mm)”, “Outer Ø d₁ (mm)”, “Thickness e (mm)”. Each dropdown offers only the values valid for the ones above it; the unset ones read “Select…” and stay greyed out until there is something to choose.
- Shock Absorbers: set “Block type” and “Outer Ø D — pick a row” (“All rows” or one row).
- Screws: set “Screw type” and “Size” (“All sizes” or one designation), which are always shown. “Cone angle” (“90° (taller / narrower)” or “120° (wider / shallower)”) appears only for “Conical (countersunk) head”. “End type” and “Threading” (“Fully threaded” or “Partially threaded”) appear only for “Cylindrical head” and “Conical (countersunk) head”. “Length L (mm)” appears for every type except “Pin hole (clearance)”.
- Case & Crown sub-pages: “Case openings” has “Opening type” (“Crystal groove”, “Shaped opening”, “Snap-back”, “Screwed-back”); “Crystals” has “Crystal shape” (“Flat” or “Curved (mineral / sapphire)”); “Gaskets & O-rings” takes two typed numbers, “Case back thread Ø (mm)” and “O-ring wire Ø d_wire (mm)”; “Crown & stem” has “Part” (“Crown (NIHS 62)” or “Push-piece (NIHS 63)”) plus, for the crown only, “Crown model” (“Solid (P.1)”, “Hollowed (P.2)”, “Standard (S/SR)”) and “Size (D₁)”; “Dials” has “Centre-hole size (d₅)”. Lubrication has no selectors at all — it is a single quick-reference table.
- On the Pivot Fits drawing, use the live callouts: hover one to highlight that dimension, and click the clearance callout to step to the next shaft grade.
- Read your answer off the “Part identifier” line. It is the full, quotable description of what you have selected.
- Pivot Fits opens on NIHS 05-01, bore H6, d = 0.50 mm and grade ef4, so on arrival its identifier reads “NIHS 05-01 · H6 bore · ef4 grade · d = 0.50 mm · clearance 10–19 µm”.
- Before you have made enough choices the identifier line reads “Make selections above to populate this identifier.”
- Two selectors never reach the identifier: on “Crown & stem” the line is fixed at “NIHS 63 · Crown” or “NIHS 63 · Push-piece”, and neither the crown model nor the size appears in it.
- Clicking the d or D callouts on the Pivot Fits drawing does nothing, and no other page's drawing responds to clicks at all.
- The “Standard:” footer is usually just the NIHS number. “Crown & stem” and “Dials” have no footer; Pivot Fits is the one page that still prints a longer citation including source page ranges.
- The Barrel & Spring page's own subtitle says “enter the four key dimensions” while the form has five fields. Trust the fields.
Open the raw NIHS source tables under a category page
You want the standard's own tables verbatim rather than the page's derived values — to check a footnote, or a column the page does not surface.
- Scroll to the bottom of the category page, above the “Standard:” footer.
- Click the wide bar. It reads “Show all NIHS tables” on Pivot Fits, Threads, Barrel & Spring, Gear Train, Balance & Hairspring, Jewels, Shock Absorbers and Screws. Six pages name their own standards instead: “Show NIHS tables for this opening type” (Case openings), “Show NIHS 61-xx crystal standards” (Crystals), “Show full NIHS 66-01 tables” (Gaskets & O-rings), “Show all NIHS tables for this part” (Crown & stem), “Show all NIHS 65-xx tables” (Dials), “Show full NIHS 99-02 tables” (Lubrication).
- Read the word at the right end for the state: “show” when closed, “hide” when open.
- On Pivot Fits, Threads, Gear Train, Balance & Hairspring, Jewels, Screws and Shock Absorbers, click a table's own row — standard number in amber monospace, then the table title — to expand it; each carries its own “show” / “hide”. On Barrel & Spring, Lubrication and the five Case & Crown sub-pages the tables are laid out in full inside the toggle, with no second level.
- Where your selection points at a particular row, the collapsed table header carries an amber chip such as “1.80 highlighted”, and that row is highlighted once you open it — so you can confirm the selection is landing without expanding anything. Threads, Gear Train, Balance & Hairspring, Screws and Shock Absorbers do this; Pivot Fits and Jewels do not.
- Both levels start closed on every visit; the state is not remembered.
Convert a horological unit
You need to move between lignes and millimetres, bph and Hz, gram-force centimetres and newton metres, or degrees and radians.
- Open the Library and click the “Unit converter” tab.
- Under the heading “Live unit converter” find the four independent cards: “Length” (header shows “base: mm”), “Frequency” (“base: Hz”), “Torque” (“base: N·m”) and “Angle” (“base: rad”).
- Type a number into any field of the card you need. Every other field in that same card updates as you type; the four cards do not affect one another.
- Use the field you want: Length — “ligne (L)”, “mm”, “inch (in)”, “µm”; Frequency — “bph”, “Hz”, “rpm”; Torque — “N·cm”, “gf·cm”, “mN·m”, “µN·m”; Angle — “degrees (°)”, “radians”, “arcminutes (′)”.
- Click away from the field you typed in to let it reformat to its display precision; trailing zeros are trimmed. Clearing that field blanks the whole card.
- Check the line under the cards for the ratios used: “Exact ratios: 1 ligne = 2.2558291 mm · 1 in = 25.4 mm · bph = 2·Hz·3600.”
- Nothing is saved. Leaving the “Unit converter” tab and coming back gives you four empty cards.
- Display precision differs per unit — µm to 2 decimals, bph to 0, radians to 6. The conversion itself is at full precision; only the figure shown is rounded.
Look up a term in the trilingual glossary
You have a French or German term from a source document, or want a definition and the standards a term belongs to.
- Open the Library and click the “Glossary” tab. It opens under the heading “Watchmaking glossary” on the “Terms” view; the two-button switch reads “Terms” / “Symbols (§1.3)”.
- Type into the search box; its placeholder is “Search EN / FR / DE (e.g. pivot, balancier, Stein)…”. Matching runs over the English, French and German headwords and the definition text.
- Watch the count line: with nothing typed it reads “34 of 34 terms”, and as you type it narrows and appends your query.
- Read the groups: terms sit under a large amber initial letter with the group's size on the right, and each row shows the English headword, the French term in amber italics and the German term in grey.
- Click a row to expand it. You get the definition and, where the term is tied to standards, a “Related:” line listing each standard's number and title.
- Click the row again to collapse it. Only one term is open at a time — opening another closes the previous one.
- The glossary holds 34 terms: a core vocabulary, not an exhaustive dictionary.
- Search does not look at the related standard numbers, so typing “41-02” here finds nothing. Use the “Standards” tab for that.
- If nothing matches you get a card reading “No glossary terms match your search.”
Look up a physical symbol and its SI unit
You have hit a symbol in a formula or a source table and need the quantity it stands for, its SI unit, and which alternative units are tolerated or deprecated.
- Open the Library, click the “Glossary” tab, then click “Symbols (§1.3)” on the two-button switch.
- Use the search box; its placeholder becomes “Search symbol / quantity / unit (e.g. F, pression, Pa)…”. It matches the English quantity name, the French quantity name, the symbol itself, the unit symbol, the unit name, and the tolerated and avoid entries.
- With the box empty, read the six domain groups in order — “Space & time”, “Periodic motion”, “Mechanics”, “Temperature”, “Electrotechnics”, “Magnetism” — each with its French name in amber italics and its row count on the right. The line above reads “46 of 46 symbols”.
- Read across the four columns: “Quantity” (English, French underneath), “Symbol”, “SI unit” (unit name underneath) and “Notes”, which spells out “tolerated: …” and “avoid: …” where the source lists them.
- Type to filter. Domains with no surviving row disappear and the count updates. If nothing matches you get “No symbols match your search.”
- The standing caveat printed under the table is worth taking at face value: “Reference only — the SI symbols and units as printed; no conversion or calculation.”
- The Terms and Symbols views share one search box, so switching views re-filters with the text already in it.
Come back to a Library view later, or send it to someone
You want to bookmark a category page, or send a colleague a link straight to the standard you are discussing.
- Navigate to the view you want in the Library.
- Copy the address bar. The Library keeps its state in the address: /reference for the Standards tab; /reference?tab=units, ?tab=gearTool and ?tab=glossary for the other three; /reference?cat= plus one of pivot_fits, threads, barrel_spring, gear_train, balance_hairspring, jewels, shock_absorbers, screws, case_crown, lubrication for a category page; and /reference?std= plus an id, for example ?std=nihs-58-10, for a single standard.
- Paste or bookmark it. Opening it reopens that view.
- Use the browser Back button to step back one view at a time — tab switches and category or standard drill-downs are real history entries.
- Search text is deliberately not in the address: a link can carry a category or a standard, never a query.
- Selections made inside a category page — screw size, jewel cascade, crown model — are not in the address either, so a shared link opens the page at its defaults. ?cat=case_crown opens the sub-category grid, not one of the five sub-pages.
Proving a number in the Calculator
Fifty-two standalone calculators. No project, no sign-in, nothing saved: you set the inputs, read the result, and export a PDF if you want to keep it. This chapter covers the anatomy that repeats on every card, how the app behaves when an assumption is violated, and two worked examples end to end.
Open the Calculator section and find the calculator you need
Whenever you want a number checked on its own — no project open, nothing saved, nothing signed in.
- Press “Calculator” in the header's section switcher. Below the small-screen breakpoint the button is the keypad icon and the name stays as its tooltip. The address becomes /calculator.
- Read the landing: the title “Calculator” and the subtitle “The watchmaker's calculators — quick answers with no project open. Every relation is definitional kinematics or carries its reference; every table value comes through the audited NIHS/GR loaders.”
- Scroll the card grid. There are 52 calculators in one flat list — one column on a phone, two from the small breakpoint up. They are not grouped and there is no search box.
- Use your browser's find-in-page (Ctrl+F or ⌘F) across the names and blurbs. With 52 cards and no search, that is the quickest route.
- Press a card. The address becomes /calculator?calc= plus its id, and the calculator opens in place of the grid.
- Press “← All calculators” at the top left to go back, or use the browser Back button — opening a calculator pushes a history entry.
- The order is fixed. It begins Beat & rate, Gear mesh, Fits & tolerances, Case fitting Ø, Hand fitting, Mainspring & barrel, and ends Cylinder escapement, Detent (chronometer) escapement, Robin escapement, Verge escapement, Gear-tooth strength (Lewis).
- To jump straight to one, type the deep link: /calculator?calc=beat, ?calc=mesh, ?calc=fits, ?calc=spring, ?calc=escapement. An unrecognised value simply shows the card grid.
- Nothing you type is saved. Leaving a calculator discards its values, and reopening restores the coded defaults. Export the PDF or write the numbers down first.
- At the foot of the grid one line ends with the link “Open the unit converter →”, which opens the Library's “Unit converter” tab. General unit conversion lives there; the only converter card in this section is Ligne ↔ mm.
Read a calculator card: How to use, the ● ○ ∑ markers, the ⓘ buttons and the figure
The first time you open any calculator — this is the anatomy that repeats on all 52.
- Look at the top row: “← All calculators” on the left, “Export page data (PDF)” on the right.
- Below it, the calculator's name with its icon.
- Press the collapsed strip labelled “How to use”, marked with an amber ▸. Three to nine short paragraphs unfold: what the calculator computes, what each input means, what the defaults produce, and what the number is for at the bench. All 52 carry this text, collapsed by default.
- Read the marker legend on the first line inside the calculator: ● decide · ○ default — leave unless you have a reason · ∑ computed.
- Read each field's marker: ● is yours to set for your watch; ○ already has a sensible value; ∑ is a computed read-out you cannot hand-edit. Hover the marker beside a field or chip — not the ones in the legend — for the fuller sentence.
- Read the figure's caption before you measure anything off the drawing. It ends either “drawn to scale from the entered values — updates live with the inputs” or “schematic, not to scale — labels match the input fields”.
- Press the small round italic “i” beside a label where one appears. A centred dialog opens with the field's name as its heading, a paragraph explaining the quantity, and a “Close” button; the dark backdrop also closes it.
- Look at the last line for “Standard:” followed by a citation, where a public standard applies.
- Input fields read: marker glyph, label, an optional ⓘ button, then the number box with its unit suffix. Results are bordered chips: the ∑ glyph, the label in small capitals, the value in bold tabular figures. Chips turn green, amber or red where the calculator grades the result.
- An absent ⓘ means no explanation is registered, not a broken control. 23 of the 52 calculators carry them, covering 493 fields.
- 22 of the 52 draw a figure. It sits immediately after the legend in most, after the first inputs in a few.
- Only four calculators show a “Standard:” line — Fits & tolerances, Case fitting Ø, Hand fitting and Perpetual calendar. On the other 48 the citation is empty and the whole line is suppressed, so nothing is left orphaned.
- The marker legend appears on 51 of the 52; Hand fitting does not render it.
Enter values and read results
Every time you actually drive a calculator.
- Set the mode first where one exists. Several calculators carry a row of small toggle buttons; the pressed one takes the amber accent border over a tinted background. Beat & rate has “Solve for:” then “Escape speed” / “Beat rate” / “Escape teeth”, above the fields. Fits & tolerances has “05-01 (≤3 mm, H6)” / “05-03 · H5 (≤0.25)” / “05-03 · H6 (≤0.25)”, above the fields. Gear mesh has “External gearing” / “Internal gearing”, below the three number fields.
- Note what a mode does: in a solve-for calculator the quantity you are solving for is removed from the inputs and returns as a result chip. Other toggles, such as Gear mesh's External and Internal, change the formula rather than the field list.
- Type into the number boxes. You can clear a box completely and retype; the field keeps your keystrokes as a draft and will not snap to 0 while it is empty.
- Read the results as you type. They update live; there is no Calculate, Apply or Reset button anywhere in the section.
- Leave the field with Tab or a click away. On blur the value is clamped into the field's allowed range and the box is rewritten to the clamped number; if you left it blank or unparseable, the last valid value is restored.
- Use the preset buttons where a calculator offers them. Ligne ↔ mm lists “Common caliber sizes” as buttons reading, for example, “11.5′′′ · 25.94 mm”; Density's “Specific weights (g/cm³)”, Thermal expansion, ISO 286 fits and Continued fractions do the same from their printed tables. Pressing a preset writes its values into the fields.
- Most fields set a minimum but no maximum, so an absurdly large entry stays as typed and the calculator reports the consequence rather than refusing it.
- Some fields round on entry: Gear mesh rounds both tooth counts, as does Beat & rate's Escape teeth Z.
- Density's presets set two fields at once, so the result is the metal's specific weight per 1 cm³.
Use the diagram-to-field link
When the figure shows a symbol — h, e, Z, N, clr — and you cannot see which box on the page it belongs to.
- Open one of the 18 calculators whose figure is wired (listed below).
- Point at a symbol label or a dimension arrow in the figure. Where the link is live the cursor becomes a pointer and the symbol carries a tooltip of its own.
- Press the symbol. The matching input field or result chip scrolls smoothly to the centre of the screen and takes an amber accent ring; in the figure the symbol turns amber, bold and underlined, and a dimension arrow also thickens.
- Read the field, change it if you need to, and carry on. The highlight clears itself after about two seconds.
- Press the same symbol again to re-centre it; repeat taps re-trigger the scroll rather than doing nothing.
- The 18 wired calculators are: Automatic winding, Balance & hairspring, Beat & rate, Blade spring, Case fitting Ø, Movement energy chain, Fits & tolerances, Keyless works, Mainspring & barrel, Motion work, Oscillator & regulation, Pendulum, Bearing loads & pivot pressure, Rozé mainspring, Shock & drop, Speeds & units, Torsion oscillator, Train torque & power. On the rest the figure labels are plain text and tapping does nothing.
- Link keys are calculator-local: an “h” in one calculator and an “h” in another are unrelated.
- The link is inert inside the Designer's Calculators panel. Use the Calculator section for it.
Read what the calculator says when an assumption is violated
When a chip goes amber or red, a warning paragraph appears, or a result looks impossible.
- Look for a coloured paragraph directly under the fields or chips. These are the calculator's own words, and they cover four different situations.
- Refusal — the result is withheld rather than printed as nonsense. Fits & tolerances replaces its three result chips with an amber box reading “NIHS 05-01 covers nominal dimensions up to 3 mm.”, “NIHS 05-03 covers escapement pivots up to 0.25 mm — use 05-01 above that.” or “Enter a positive nominal diameter.” Bearing loads & pivot pressure prints “No pressure: the geometry is degenerate (hole length ≤ 0, pivot Ø ≤ 0, or the hole is not larger than the pivot). Pick a jewel and pivot so the hole is larger than the pivot.”
- Impossible geometry — the inputs cannot describe a real part. Balance & hairspring: “The rim inner Ø must be smaller than the outer Ø (and the height positive) — no inertia exists for these inputs.” Beat & rate: “Z is not an integer — this vph/N pair has no real escape wheel; adjust one input.” Brinell hardness: “The indentation cannot be wider than the ball — check d ≤ D.”
- Off-standard but not wrong — the number is computed and flagged. Gear mesh prints green “✓ on the NIHS module series” or an amber line naming the whole series, and separately, under “Standard module band, by mesh × caliber Ø”, prints the band and appends “ — your module is outside the band” when it is. Mainspring & barrel prints “Arbor below the 32·e rule — increase the arbor or thin the strip (Grossmann).”
- Honest negative results — where the algebra genuinely goes negative, the app says so rather than clamping. Train torque & power: “R₂ < 0: the force plane lies OUTSIDE the bearing span (S > T) — both bearings load the same side. The sign is physics, not an error.”
- Read the standing formula flags before designing from three calculators: Gear-tooth strength (Lewis) and Cylinder escapement each carry an amber boxed paragraph, and Tourbillon / carrousel cage carries a plain grey line beginning “FLAG (kept as printed):”.
- Cylinder escapement's flag reads: “FLAGGED: the rest-force terms are transcribed from OCR-uncertain reference pages (the ± sign and the friction term). The frictionless limits are the reliable values; verify the friction terms against the reference before design use.”
- Movement energy chain will report a negative result plainly: “α₂₄ < 0: the barrel turns per day exceed the stress cap α_max/2π — the spring is dead before 24 h. The negative M₂₄/P_r/I_c below are the algebra shown honestly, not a usable design.”
- Bearing loads & pivot pressure carries a standing honesty note under its results: the cascade, forces, reactions and resultants reproduce the reference values to 15 digits, while the final Hertz pressure has no worked example to check against.
- A refusal caused by a value under a field's minimum is transient: typing 0 into Fits & tolerances shows “Enter a positive nominal diameter.”, but leaving the field clamps it to the 0.05 mm minimum. Over-range values persist, because these fields set a minimum and no maximum.
- The absence of a “Standard:” line is not a fault — it is suppressed when the citation is empty, which is the case on 48 of the 52.
Worked example — Beat & rate: prove a movement really is 4 Hz, and catch an impossible escape wheel
You have a beat rate from a timing machine, or an escape wheel in front of you, and want the other numbers plus a sanity check.
- Go to Calculator and open the first card, “Beat & rate” (“vph ↔ Hz ↔ beat period, and the escape relation vph = 2·Z·N solved either way.”), or go straight to /calculator?calc=beat.
- Open “How to use” if you want the reasoning; its first paragraph states the defaults and what they produce.
- Note where it opens: “Solve for: Escape speed” is pressed, and two fields show — “Beat rate” = 28800 vph and “Escape teeth Z” = 20 z. The escape-speed field is hidden because it is the answer.
- Read the chips: “Frequency” 4 Hz · “Beat rate” 28800 vph · “Beat period” 125 ms · “Escape speed” 720 rev/h · “Beats per second” 8 /s.
- Change “Beat rate” to your own figure — 18000 for a 2.5 Hz movement, 36000 for a high-beat — and “Escape teeth Z” to the count on your wheel. The chips follow immediately.
- Use the figure above the fields: an escape wheel labelled “Z = 20” with a rotation arrow labelled “N”, a pallet-fork glyph on the drive line, a balance, and the relation vph = 2·Z·N printed underneath. Press the “Z” label and the Escape teeth field scrolls to centre and rings amber; press “N” and the Escape speed chip rings instead, because in this mode N is an output.
- Now check a pair for buildability. Press “Escape teeth” in the Solve for row. The Z field disappears and an “Escape speed N” field appears, defaulting to 600 rev/h. With Beat rate 28800 and N 600 the chip reads “Escape teeth” Z = 24 — a whole number, so that pair is buildable.
- Type 700 into “Escape speed N”. The chip now reads Z = 20.57 and an amber line appears under the chips: “Z is not an integer — this vph/N pair has no real escape wheel; adjust one input.”
- Adjust the beat rate or the speed until the chip returns a whole number.
- The figure's caption ends “schematic, not to scale — labels match the input fields”, so do not measure the drawing.
- The drawn tooth count is capped for legibility while the label always prints the true value: a 90-tooth entry draws 40 teeth but still reads “Z = 90”.
- Escape teeth Z is rounded to a whole number on entry, so the fractional answer only ever appears as a result.
- This calculator shows no “Standard:” line — its citation string is empty, so the line is suppressed.
Worked example — Fits & tolerances: get the machining limits for a 0.5 mm pivot
You are turning or checking a pivot and its jewel hole and need the actual limit dimensions and the clearance to expect.
- Open the third card, “Fits & tolerances” (“NIHS 05-01 / 05-03 pivot-fit limits: shaft + bore dimensions and the clearance band.”), or go to /calculator?calc=fits.
- Note the defaults: standard “05-01 (≤3 mm, H6)”, shaft grade “f6”, “Nominal Ø” 0.5 mm.
- Read the three chips: “Shaft (pivot)” 0.488 – 0.494 mm · “Bore (H6)” 0.500 – 0.506 mm · “Clearance” 6 – 18 µm. Those are the turning targets and the play the pivot will have once both parts are in tolerance.
- Choose the standard for your part. Press “05-03 · H5 (≤0.25)” or “05-03 · H6 (≤0.25)” for fine escapement pivots. The grade list changes with the standard, and a grade that is not in the new list moves to the first one.
- Set the grade by hand or by part. The “Shaft grade” dropdown lists each grade with its deviations, for example “f6 (-6/-12 µm)”. Above it, the row labelled “Component” offers four shortcuts — “Escape pinion”, “Balance staff”, “Pallet staff”, “General train pivot (editorial)” — each jumping the grade to the one normally used for that part; hover one to see every grade it covers.
- Type your own diameter into “Nominal Ø” (step 0.01 mm, minimum 0.05 mm). The chips recompute as you type.
- Read the figure at the top: an ISO tolerance-zone chart with the dashed nominal line labelled “Ø nom”, the bore zone above it, the shaft zone below, the deviation labels ES / EI / es / ei down the right-hand side, and a dimension arrow labelled “clr” on the left.
- Press “shaft” in the figure and the Shaft (pivot) chip scrolls to centre and rings amber; press “clr” for the Clearance chip; press “Ø nom” for the Nominal Ø input.
- Test the limit: with 05-01 selected, type 4 into Nominal Ø. The three chips disappear and an amber box replaces them: “NIHS 05-01 covers nominal dimensions up to 3 mm.” Switch to 05-03 with a diameter above 0.25 and you get “NIHS 05-03 covers escapement pivots up to 0.25 mm — use 05-01 above that.”
- Read the grey line under the chips for what the chosen grade is for — for f6, “Pallet staffs (NIHS 05-03); train pivots (less critical) — editorial”.
- Press “Export page data (PDF)” to take the limits to the lathe.
- The figure's caption ends “drawn to scale from the entered values — updates live with the inputs”: the zone heights and the gap are in true proportion to one another, on a µm axis deliberately exaggerated against a mm diameter.
- The clearance figures come from the loaded table row where the standard provides them, rather than from re-derived arithmetic — which is why the chip prints whole micrometres.
- The calculator refuses out-of-range diameters rather than extrapolating. That is the intended behaviour, not a fault.
- One row labels itself editorial — “General train pivot (editorial)” — so you can see where the standard assigns a row and where the app has.
- At the foot, the “Standard:” line reads “NIHS 05-01 (SN 280 501) + NIHS 05-03 (SN 280 503) deviations; component assignments per 05-03.”
Reach the same calculators from inside a project
You are designing and want a number checked without losing the project you have open.
- Open your project in the Designer section. In the ribbon, under the group captioned INSPECT, press “Calculators”. On a phone, press the floating “Tools” button and choose “Calculators”.
- Read the panel heading “Calculators” and its hint: “The same calculators as the Calculator section, here inside your project — sizing, tolerances, materials and metrology, each with its reference. Nothing here changes the design; it's the reference maths for it.”
- Press a card. The identical calculator opens inline — same 52 cards, same fields, figures, warnings and “Standard:” line.
- Press “← All calculators” in the panel to return to the card list without leaving the project.
- The Designer panel renders the calculator body only. For the “How to use” dropdown, the tappable diagram-to-field link and “Export page data (PDF)”, use the Calculator section instead.
Designing the movement in Designer
All design work happens inside an open project; the project list itself is covered in the first chapter. The order below is roughly the order a movement is built: orientation, then targets, caliber boundary, escapement, going train, barrel and spring, balance, and finally the parts that are not train wheels. Nothing needs saving by hand.
Find your way around the studio
First time inside a project — before you build anything, learn where the parts of the workspace live and how to summon them.
- Read the top bar (the ribbon) left to right: “← Projects”, the editable project name, then — on a screen 1024 px wide or more — five captioned tool groups, WORKSPACE, CREATE, EDIT, INSPECT and VIEW. Sync and account controls sit at the far right.
- WORKSPACE holds two buttons: “Build” (the design canvas) and “Goals” (the targets dashboard). A fresh session opens on Build.
- CREATE holds “Sketch” (the full-screen drawing overlay) and “Gear chain”.
- EDIT holds a single button whose label is the currently active group — “Movement” for Base movement, “Caliber” for the caliber. Hover it for the full name; click it to open or close that group's editor panel.
- INSPECT holds “Validate” and “Calculators”.
- VIEW holds a “Top” / “Section” pair (group name “Canvas view”), a “Front” / “Back” pair shown only in Top view (group name “View side”), and a “Browser” button.
- Click “Browser” to show or hide the left dock. It holds the “Assembly” tree at the top and the “Edit history” timeline pinned below it.
- Click any ribbon tool: its panel docks to the right of the canvas with the tool's name as its heading and a “Close ✕” button. Escape also closes it, and with no tool open the canvas fills the full width.
- Use the three icon buttons at the bottom right of the canvas — tooltips Navigate, Edit and Inspect — then zoom in (+), zoom out (−) and “Fit”. A project always opens in Edit mode.
- Below 1024 px the ribbon's tool groups are hidden. The same tools live in a floating dock at the bottom left: a spanner button (“Tools”) listing Sketch, Gear chain, the active group's editor, Validate and Calculators plus the Top/Section and Front/Back switches; a second button for the workspace switch; and a third (“Browser”) that opens the assembly tree as a bottom sheet labelled “Sections & parts”.
- The layout state — active group, open tool, canvas view, side — is view state only and is not saved with the project. It survives moving between tools and even between projects within one browsing session, but resets on reload.
Undo, redo, and step along the edit history
Whenever you want a change back, or want to see, step by step, how the design got here.
- Open the browser dock: ribbon VIEW → “Browser”. At 1024 px and wider it holds “Assembly” on top and “Edit history” pinned beneath. The dock is open by default.
- Below 1024 px, press the last button of the floating dock at the bottom left (accessible name “Browser”) to raise the “Sections & parts” sheet, which carries the same “Edit history” panel.
- Use the four transport buttons in the panel's header row, in order: “To start”, “Undo”, “Redo”, “To latest”. They are icon-only; those are their tooltips.
- Or use the keyboard, anywhere in the studio: Ctrl/⌘ + Z undoes, Ctrl/⌘ + Shift + Z or Ctrl/⌘ + Y redoes. Both are ignored while the cursor is in a text field, so typing a number never triggers an undo.
- Click any row to jump to that state. The current step is highlighted; undone steps stay listed, dimmed, until you make a fresh edit — which discards them.
- Right-click a row for two commands: “Jump here” and “Delete from here” (that step and everything after it). The first step cannot be deleted.
- Press Delete or Backspace with nothing focused to remove the current selection, in this order: the selected part, else the selected bridge, else all canvas measurements.
- Read the list as a record of the design rather than a log of keystrokes. The first entry is always “Opened”; later ones are named for what changed — “Going train created”, “Edited train”, “Added wheel”, “Moved wheel”, “Changed caliber”, “Changed barrel”, “Changed escapement”, “Generated gear”, “Gear chain (7 parts)”, “Group added”, “Sketch edited”.
- Up to 100 steps are kept; older ones drop off the front.
- The timeline is saved with the project and travels with it to the cloud.
- The sketcher keeps its own separate undo stack for geometry while you are drawing.
- Measure lines drawn on the canvas are annotations and deliberately create no history entry.
Set the project's targets in Goals
Before auto-suggesting anything: the beat rate, reserve and amplitude targets drive the train solver, the spring ranking and the live status readouts.
- In the ribbon's WORKSPACE group click “Goals”. The page is headed “Project goals”.
- Under “Frequency”, click one of the presets — 18000, 21600, 28800, 36000. For any other value type it straight into the vph field below the presets (3600–72000, step 100); the segmented control then shows “Custom” as selected.
- Under “Power reserve target”, set the hours you are designing for (1–2000 h).
- Under “Target amplitude”, set the degrees you want the balance to swing (0–360, step 5°). Leave it at 0 for no target — the hint begins “0 = no target.”
- Under “Planned complications”, toggle any of “Date”, “Day”, “Moonphase”, “Chronograph”, “GMT”, “Power reserve”, “Alarm”.
- Read the right-hand column, “Live status”: Frequency, Power reserve, Caliber, Amplitude and Complications, each tagged “Met”, “Off target” or “Not yet” with the actual numbers underneath.
- Type any decisions, references or standards into “Project notes” lower in the same column; it saves with the project.
- Scroll past the dashboard to the “Validation summary” rendered underneath it, to see the whole-movement checks in the same place.
- The escapement type and escape-wheel teeth are not here — they live in the Escapement tab of the Base movement group.
- With a Swiss lever escapement and at least two arbors, an extra block appears in the right column: “Amplitude feasibility (RK4)”. It sweeps the whole GR spring catalogue at your barrel bore and states plainly whether the amplitude target is reachable at all — reachable together with the reserve target, reachable only by trading reserve, or “No catalogue spring reaches {target}° in this barrel — grow the barrel, slow the beat, or lighten the balance.”
- “Standards used”, below that, is generated from what the design actually uses. It is read-only.
Set the caliber outline (round or rectangular)
Right after the targets — the caliber is the boundary every wheel, bridge and part is fit-checked against, and it bounds the train solver's wheel sizes.
- In the left “Assembly” browser, click the row “Caliber (base)”. Its editor opens in the right-hand tool panel.
- Under “Caliber shape”, choose “Round”, “Rectangle” or “Freeform”.
- For Round, set “Max diameter” in mm (4–80, step 0.5). The hint under the field shows the same figure in lignes, for example “≈ 11.51 ‴”.
- For Rectangle, set “Max length” and “Max width” (4–120 mm, step 0.5), and optionally “Corner radius” — its hint reads “Rounds the rectangle corners; used in the fit + clearance checks.”
- Leave it there. The panel confirms with “✓ Values save to the project automatically.”
- A new project starts at a round Ø26 mm caliber. Until you touch it, the Goals dashboard flags it “○ default, not yet reviewed”.
- Switching shape carries your decided size across rather than resetting it: round to rectangle takes the diameter for both sides, rectangle to round takes the longer side. Re-tapping the shape you are already on does nothing.
- Auto-suggested wheels are sized to at most 30 % of the caliber radius, so several wheels and the barrel coexist inside the boundary.
Build a freeform caliber from a drawn outline
When the movement is not round or rectangular — a shaped, asymmetric or curved plate.
- Open “Caliber (base)” and choose the shape “Freeform”. A placeholder rectangle the size of your current caliber is seeded, and the hint ends “The shape below is a placeholder until you do.”
- Click “Draw the outline in Sketch →”, or use the ribbon's CREATE → “Sketch”.
- Make sure no part is selected, so you are drawing the shared movement sketch. The adoption panel is hidden while a part is open.
- In the “Sketch tools” toolbar pick a drawing tool — “Line”, “Arc”, “Circle” or “Spline” — and draw a closed outline around the movement centre. Sketch millimetres are movement millimetres, 1:1, and the movement shows through dimmed underneath, so draw it where it really goes.
- With a spline, click each control point, click the first point again to close the loop, then press Enter to finish.
- In the right-hand rail, find the panel “Use as caliber outline”. If the sketch holds more than one closed region, pick the one you want from the chips labelled “W × H mm”.
- Read the confirmation line, which begins “Adopts a W × H mm” and states that the train re-places itself inside the new boundary, then click “Adopt as caliber outline”.
- Check the green line: “Adopted — the caliber is now the drawn outline (see it update beneath the sketch).”
- Click “← Back to Build”. The Caliber panel now reads “Current outline:” with the point count and the bounding size.
- Adoption is refused, with the reason spelled out, if the outline crosses itself, if the movement centre (0,0) is not inside it, or if it has fewer than three points.
- Adopting re-places the train inside the new boundary while honouring any pinned arbors. Anything left outside is reported by the fit checks rather than silently moved.
Choose the escapement and its escape-wheel teeth
Before auto-suggesting the train — the escape-wheel tooth count is the Z in vph = 2·Z·N, and the escapement type decides whether the train can be solved at all.
- In the “Assembly” browser click “Base movement”.
- In the tool panel, click the tab “Escapement”. The three tabs are “Train”, “Barrel”, “Escapement”.
- Choose a type from the “Escapement type” dropdown. In list order: Swiss lever (anchor), Detent (chronometer), Co-axial, Cylinder, Duplex, Verge (foliot), Graham (deadbeat), Recoil anchor, Pin-pallet (Roskopf), Constant-force, Magnetic.
- Set “Escape-wheel teeth” (6–40). The hint reads “Z in vph = 2·Z·N.”
- If the type is not one of the four modelled ones, read the notice: “Formula missing — this escapement type's tooth↔beat coupling and geometry are not yet modelled, so auto-train is disabled for it. Swiss lever, cylinder, detent and duplex are supported.” Change the type, or accept that Auto-suggest will not be offered.
- Defaults for a new project: Swiss lever, 15 escape teeth, 21600 vph, 48 h reserve.
- The four modelled types — Swiss lever, cylinder, detent and duplex — are also exactly the four whose geometry is drawn on the canvas. Every other type gets the one notice above and no drawn escapement.
Auto-suggest a going train
Once the frequency, escape-wheel teeth and caliber are set — this is the one action that lays out a whole barrel-to-escape train.
- Open the “Base movement” group and stay on the “Train” tab; it is the default.
- Click the wide accent button “Auto-suggest train”. Once a train exists the same button reads “Re-suggest train”.
- Read the two chips that appear: “Beat rate (actual / target)” — green when the two agree within 0.5 vph, red otherwise — and “Arbors”, the number of arbors in the chain.
- Read “Per-mesh module (barrel → escape)”: one chip per mesh, in order. A chip outlined amber is a mesh whose module is larger than the one before it.
- Read the line under those chips: “Module steps down toward the escapement ✓” or “Module increases somewhere toward the escapement (warning).”
- Check the chain under “Wheels (barrel → escape)”: rows read “Barrel”, “Centre”, “Third”, “Fourth” … “Escape”, each with its tooth count and pinion leaf count.
- If more than one solution was found, look at “Alternative trains” — up to five. Each row shows wheel and pinion counts per mesh, barrel to escape, then the deviation from your target beat rate in vph; “⚠” marks a candidate whose module gradient steps up. Click a row to apply it.
- After changing the frequency, escape teeth or caliber, press “Re-suggest train” again. It keeps the chain length you have built.
- What the beat-rate readout compares: the vph the chain actually produces — computed from the centre-to-escape stage ratios and the escape wheel's tooth count — against the target vph you set in Goals. It is a check, not a knob: there is no calibration screw, so a mismatch means the tooth counts must change.
- A default suggestion produces a three-stage chain, five arbors: Barrel, Centre, Third, Fourth, Escape. A new project already carries a 60 rev/h rate target on the seconds wheel, and the solver honours it.
- If nothing works, the train is left untouched and an amber notice explains why: “No integer train satisfies the beat rate AND every rate target with this chain length. The change was refused (nothing was altered) — adjust the target, the wheel count, the frequency or the escape-wheel teeth.”
- The button is not shown at all for escapements outside the four supported types; the missing-formula notice takes its place.
Edit one wheel: teeth, leaves, module and pitch diameter
When you want a specific tooth count, a specific module, or a wheel of a given diameter rather than the solver's pick.
- Open “Base movement” → “Train” and click a row in “Wheels (barrel → escape)” to expand it. Alternatively, with the canvas in Edit mode, tap the wheel on the canvas: at 1024 px and wider that opens the same editor, on a phone it opens the wheel sheet.
- Work down the fixed sections: “On this axis”, “Gear”, “Position & constraints”, “Barrel (specific)” for the barrel only, “Notes”, “Colour” and “Train length”.
- Under “Gear”, set “Wheel teeth” (6–200). On the barrel this field is labelled “Rim teeth”; on the escape wheel it also updates “Escape-wheel teeth” in the Escapement tab.
- Set “Wheel module” directly (0.04–0.6 mm, step 0.005), or type a “Wheel pitch Ø” and let the app back-solve the module from m = d/z with the teeth held.
- Leave “Snap module to the NIHS series” ticked — it is on by default — to have a pitch-Ø edit land on a preferred module; untick it to keep the exact d/z value.
- Read the line under the checkbox: it states the module and whether it is on the NIHS preferred series or off it (“custom cutter needed”).
- Set “Pinion leaves” (6–20) and, if needed, “Pinion module” and “Pinion pitch Ø” the same way.
- On an intermediate wheel, tick “Target rate” to pin its speed — presets “1 rev/min”, “1 rev/h”, “1 rev/12 h”, “1 rev/24 h”, or a typed rev/h value. The solver then has to satisfy that as well as the beat rate.
- To hold a plain wheel at a chosen size and let the rest re-solve around it, use “Lock size (teeth / Ø)”: enter “Lock wheel diameter” and press “Lock & re-solve”. This is not offered on the barrel or the escape wheel.
- Use “Notes” to record the standard you followed, a supplier or a reminder — it travels with the part. Use “Colour” to override the wheel's canvas colour; “Reset” appears once an override is set and returns it to the role colour.
- Every field carries a nature marker explained by the legend at the top of each panel: ● decide, ○ default — leave unless you have a reason, ∑ computed.
- Editing a gear re-runs the layout solver, so wheels move. Any pins and angle locks you have set are honoured.
Insert, add or remove a wheel in the train
When the ratio needs another stage, or when the chain is longer than the caliber can carry.
- Open “Base movement” → “Train”.
- In the “Wheels (barrel → escape)” list, click one of the dashed “+ Insert wheel here” buttons in the gaps between the centre wheel and the escape wheel. The wheel is inserted at that position and the chain re-solves.
- To append instead, expand any wheel and use “+ Add wheel” in the “Train length” section. It greys out once the chain is full.
- To delete an intermediate wheel, expand it and click “− Remove this wheel”, then confirm — the dialogue reads “Remove this wheel from the going train? The train re-solves around the change.”
- Check the beat-rate chip afterwards. The chain re-solves every stage, so the beat rate — and a 60 rev/h seconds wheel, if set — stays exact.
- Barrel and escape are fixed endpoints: nothing can be inserted before them and they cannot be removed. The chain tops out at six centre-to-escape stages, which is eight arbors.
- Every surviving wheel keeps its identity across the rebuild: pins, constraints and bridge or jewel references stay on the same wheel even as its position in the chain shifts. If a rebuild has to drop wheel slots, an amber notice reports how many slots and how many references went with them.
- If the new length has no integer solution, nothing is changed and the “No integer train satisfies…” notice appears.
Hold a wheel in place: pins, angle locks and clearance targets
When layout matters — a wheel that must sit at a particular point, a mesh that must run at a particular angle, or a wheel that must keep a minimum gap to the case edge.
- Expand the wheel (Base movement → Train, or tap it on the canvas in Edit mode) and go to “Position & constraints”.
- Tick “📍 Pin position” to fix the arbor at an absolute point. The fields “Pin X” and “Pin Y” then appear, with buttons “Snap to 0.1 mm” and “Snap to centre”.
- Tick “∠ Angle from previous” to lock this mesh's direction. Type the degrees, or drag the slider — it snaps at 0, 30, 45, 60, 90 and 180°. Unticked, the line below simply reports the current angle. The barrel has no previous wheel, so this block is absent there.
- Tick “Target edge clearance” and set the millimetres the wheel must keep to the caliber boundary.
- Review everything you have set in the “Constraints” box at the bottom of the Train panel; click ✕ on a row to remove it.
- If a drag on the canvas is refused, read the small amber note at the canvas's top right: “A pin holds — can't drag past it” or “A constraint holds — angle locked or in a line”.
- Pinning is not the same as “Lock size”: a pin fixes where the arbor sits, a size lock fixes how big the wheel is. Meshing neighbours always stay at their exact centre distance either way.
- Over-constrained layouts are reported, not silently resolved. The Train panel prints the reason in red, and Validate repeats it.
Choose the mainspring in the Barrel tab
After the train exists — the required turns depend on the barrel-to-centre ratio, so the spring cannot be ranked before there is a train.
- Open “Base movement” and click the “Barrel” tab. With no train yet an amber line reads “Build the going train first so the barrel ratio and required turns can be computed.”
- Set the drum, in the order the fields appear: “Inner radius”, “Arbor radius”, “Wall thickness”, “Inner height”.
- Read the six chips above the catalogue: “Barrel turns / h”, “Required turns”, “Optimal length”, “Max turns N_max”, “Barrel inner Ø”, “Barrel outer Ø”.
- Choose “Spring material” — the two segments read “NIVAFLEX 45/5” and “NIVAFLEX 45/18 (no Be)” — and a “Cold work” segment: “KV 50”, “KV 70” or “KV 90”. These pick the after-aging yield the stress guard compares against; the chips “Yield (after aging)” and “Stress margin σ/yield” update live.
- Work down the list “Recommended GR mainsprings” — up to six candidates. Each card gives, in order: the reference “GR” plus its number and a verdict, green “feasible” or amber “check”; the strip as H, e and L in mm with the barrel Ø; “develops X turns (need Y)”, with “· over-stress” or “· too tall for barrel” appended when either guard fails; “sustained reserve H h — target T h”, green when it meets your reserve target; and for a Swiss lever, “Full-wind amplitude ~A° — target T°”.
- Click the card you want. It stays outlined, and the “Chosen spring” block below fills with “Developed turns (approx.)”, “Power reserve (sustained)”, “Full-wind amplitude”, “Full unwind”, “Min sustaining torque”, “σmax / limit MPa” and “Outer-fibre strain”.
- If the list is empty, read the reason — “No GR reference within tolerance of this barrel Ø. Adjust the inner radius.” — change the inner radius and look again.
- The barrel's toothed rim is not on this tab. The note under the grid says it is “a gear property, edited in the barrel's wheel editor (tap the barrel on the canvas) like any other wheel.”
- “feasible” means four things at once: the strip fits the barrel height, the peak stress stays under the after-aging yield, it develops at least the required turns, and its sustained reserve reaches your target. A candidate that passes all four but cannot reach your amplitude target is demoted to “check” — the app will not call a shallow-swinging spring feasible.
- Sustained reserve is not full unwind: it is the time until the delivered torque falls below the minimum that keeps amplitude up. Both numbers are shown, and the sustained one is always the shorter.
- Amplitudes come from the same RK4 escapement dynamics that Simulate runs, for Swiss lever only. While they compute, the card reads “computing amplitude…”.
- The candidate list is drawn from the real GR (Générale Ressorts) catalogue, filtered to references within 1 mm of your barrel bore — a purchasing shortlist, not a synthesised strip.
Let the app size the barrel to your goals
When you would otherwise be guessing barrel dimensions and want the reserve and amplitude targets met, or an honest statement that nothing meets them.
- Find the block “Size to the goals” at the foot of Base movement → “Barrel”. It appears whenever the escapement is a Swiss lever and there is a going train of at least two arbors.
- Set a “Target amplitude” in Goals first. Without it the button stays greyed out and the line below reads “Set a target amplitude in Goals first — the search needs both targets.”
- Click “Size the barrel to the goals”. While it runs, the line beside the button reports each bore it tries: “trying Ø X mm…”.
- Read the verdict box. On success it is green: “Sized and applied: barrel Ø D × H mm + GR <ref> → ~A° at full wind, R h sustained.” The barrel dimensions and the spring have already been written into the design.
- If the target is out of reach the box is amber and names the largest drum it could try and the best it found. Click “Apply the best found anyway”, or change something else — a slower beat, fewer intermediate wheels, a lighter balance.
- If no spring holds the reserve at any size, read that too: “No catalogue spring holds the {h} h sustained reserve at any drum size up to Ø … mm in this caliber.”
- Afterwards, look at the canvas and run Validate. Growing the drum can push the barrel into its neighbours, and those consequences are reported there rather than suppressed here.
- The search steps the inner radius up in 0.25 mm increments from the current bore to the cap, and at each size picks the strongest catalogue spring that still holds the sustained reserve. The arbor follows the D_int/3 rule and the height grows to clear the strip.
- The cap is the caliber boundary, less the barrel's own offset from centre and its wall. In-plane clashes with neighbouring wheels are left to the Z-aware collision model and Validate, because a drum legitimately passes other parts at other heights.
- When the target is unreachable, the panel may note that two such barrels in parallel would deliver the amplitude at the same reserve — a real construction, but one the app cannot yet draw.
Set the balance and read the escapement geometry
After the train exists — the pallet fork and balance are placed relative to the escape wheel, so they need one to exist.
- Open “Base movement” → “Escapement” and scroll past the type fields to the block headed “Balance & escapement”. With no train it says “Build the going train first so the escape wheel exists to place the pallet fork + balance.”
- Read “Escapement geometry”. A Swiss lever shows “Centre distance a (pallet↔escape)” and “Centre distance b (balance↔pallet)”; a cylinder shows “Shell outer Ø”, “Shell wall”, “Escape↔balance distance”, “Lift / lock / impulse” and “Cylinder η (inst. bound)”; a duplex shows “Locking roller ϱ”, “Impulse pallet r” and “Escape↔balance distance”; a detent shows its centre distance and “Detent blade reach”. Every drawn type also shows “Impulses / oscillation” and “Impulses / day”.
- Set “Balance diameter” (3–22 mm). Frequency alone cannot fix it, so this is yours to decide.
- Choose “Rim construction” (Annular, Screwed or Bimetallic) and “Rim material” (Glucydur, Maillechort or Steel).
- Read the derived row: “Inertia (NIHS 34-04)”, “Required stiffness C”, “CGS number (NIHS 35-10)”, “Strip height h_s” and “Candidate spring”, then the reconcile line, which either states that the target frequency reconciles with the computed one or tells you to adjust the diameter or hairspring.
- Read “Amplitude & sustaining torque”: “Design amplitude θ₀”, “Amplitude at full unwind”, “Min sustaining torque”, “Escape power P_r”, “Train η”, “Power reserve (sustained)”, “Full unwind” and “Inertia required (energy)”. With no real spring chosen this block says “Choose a real mainspring to compute the escape power, sustained reserve and required inertia.”
- Orient the escapement under “Position & constraints”: drag the pallet fork or the balance on the canvas, or type the degrees into “Escapement orientation” (−180 to 180, step 5). Tick “∠ Lock orientation (blocks dragging the balance / pallet fork)” to freeze it.
- Use “Position pins” to fix a body at an absolute point. “Pin balance” is always there; a Swiss lever adds “Pin pallet fork”, a detent adds “Pin detent mount”. Ticking one reveals X and Y fields in mm.
- The diameter hint is explicit about its provenance: “User input — only 9.5 / 19.2 mm appear in the references; the rest scale the rim.”
- Which read-outs appear depends entirely on the escapement type. For a type outside the four drawn ones the whole block collapses to the type name plus the missing-formula notice — there is no geometry to read.
Generate a NIHS wheel or pinion
When you need a real horological tooth form — the wheel and matched pinion that general CAD will not produce — as a first-class, exportable part.
- Open the Sketch overlay: ribbon CREATE → “Sketch”. On a phone, Tools dock → “Sketch”.
- Click “⚙ Generate gear”. The panel is headed “Generate a NIHS gear”; “Close” dismisses it.
- Under “Tooth profile” choose “NIHS 20-02 ogival” (the going-train form) or “NIHS 20-25 epicycloidal” (winding and time-setting trains). The third option, “ISO 20° involute”, reports “Not yet available in the Designer” and explains why: it is the industrial form and Fusion already generates it.
- Optionally pick a mesh from “Seed from a going-train mesh”; rows read “Mesh N — wheel z{z} / pinion z{z}, m {m} mm”. “— enter manually —” is the default.
- Set the counts. For 20-02: “Wheel teeth (z₂ ≥ 40)” and “Pinion leaves (z₁ 6–20)”. For 20-25: “Wheel teeth (z ≥ 8)” and “Pinion teeth (z ≥ 8)”. Then set “Module m (mm)”; the preferred NIHS module series is printed beneath the fields.
- Under “Generate” choose “Wheel”, “Pinion” or “Wheel + pinion”, which is the default.
- Under “Place on layer (Build canvas)” choose the group the part belongs to. It defaults to “Base movement”.
- Check the preview and its derived line: “Pitch ⌀… · tip ⌀… · root ⌀… mm”.
- Click “Generate part”. The new part is created, selected, and shown in the static viewer with its NIHS citation underneath.
- If the parameters are invalid the button is disabled and the reason is printed after “Can't generate:”.
- Generated parts survive a going-train re-solve: they live in a separate parts array, keep their own identity, and carry their NIHS citation in the part's notes, visible as “NIHS basis” in the Parts panel.
- Both wired profiles export as true LINE and ARC entities — the badge under the profile picker says “Exact LINE/ARC — lossless DXF for Fusion.”
- When you generate wheel and pinion together, the pinion is offset by the meshing centre distance a = m·(z₁+z₂)/2 as its assembly position only. The exported geometry of each part stays centred on its own origin.
Generate a bearing jewel
When you need a pierced jewel sized from the NIHS tables rather than typed by hand.
- Open the Sketch overlay (CREATE → “Sketch”) and click “◉ Generate jewel”. The panel is headed “Bearing jewel — NIHS 41”.
- Choose the “Jewel type”: “Flat (NIHS 41-02)”, “Domed (NIHS 41-03)” or “End-stone (NIHS 41-05)”.
- Optionally type a “Pivot Ø filter (mm)” to hide bores smaller than your pivot.
- Pick a valid combination from “Bore t”, “Outer d1” and “Thickness e”. Only combinations that exist in the extracted tables are offered; “Bore t” is not shown for the end-stone, which has no bore.
- Under “Bind to arbor”, pick the arbor it serves so it rides that wheel across re-solves, or leave “None — free at (0, 0)”.
- Under “Place on layer (Build canvas)” choose its group. It defaults to Bridges.
- Click “Generate jewel”.
- The pivot filter hint is explicit that the running clearance is a NIHS 05-01 / 05-03 fit choice you make yourself, never auto-derived here.
- A generated jewel behaves like a generated gear: it is selected on creation and appears in the Sketch overlay's Parts list under “Generated gears”, where it exports the same way.
- Jewel plugs (NIHS 43-xx) are not generated. The panel says so and points at the raw tables in the Library.
Add a part to a group, give it a pivot, and draw its shape
For any part that is not a going-train wheel — a motion-work mobile, a keyless lever, a complication part, a dial element.
- In the “Assembly” browser click the group the part belongs to: “Motion work”, “Keyless”, “Complications”, “Dial” or a custom group of yours.
- In the tool panel click “Add a part”. The new part appears as a chip named “Part N”. On the Dial group there is also “Draw the dial outline”, which creates the single backdrop outline.
- Click the part's chip to select it. Its properties open: “Part name”, “Group” (to move it to another subsystem), “Rotation axis” and “Intent motion”.
- To set the pivot on the canvas, click “📍 Set axis — pick a point”, then tap the point. An arbor centre binds the part to that arbor so it tracks across a re-solve; anywhere else is a free pivot. “Cancel” abandons the pick.
- Alternatively expand the manual controls (“Manual — type X/Y or pick an arbor”) and choose “None”, “Free” (with “Pivot X” and “Pivot Y”) or “On arbor”.
- Set “Intent motion” — “Static”, “Continuous”, “Stepping” or “Retrograde” — plus its “Direction”, “Angle range” and “Period” in cyc/h if it moves.
- Click “Draw this part's shape in Sketch →”. The sketcher opens with that part loaded — a chip reads “Drawing:” and the part's name — so everything you draw belongs to that part.
- When finished, click “← Back to the sketch” to deselect, then “← Back to Build”.
- “Add a part” is offered on the four static part-container groups (Motion work, Keyless, Complications, Dial) and on any custom group. Base movement and Bridges have their own dedicated editors instead.
- Inside the sketcher an axis pick can bind the pivot to a sketch point, so the pivot tracks the geometry as you edit it.
- Intent motion is exactly that — intent. The panel states it plainly: “This is the INTENDED motion, computed from the spec — not a built or coupled mechanism.”
Draw and constrain a part in the sketcher
Whenever a shape has to be dimensionally exact — bridges, levers, springs, plates, or a caliber outline.
- Open the Sketch overlay (CREATE → “Sketch”), and select the part you are drawing — or leave nothing selected to draw on the shared movement sketch.
- Pick a tool from the “Sketch tools” toolbar. The live tools are Select, Point, Line, Arc, Circle, Rectangle, Curve, Spline, Dimension, Construction, Trim, Extend, Offset, Fillet, Mirror, Pattern and Project. Buttons with a key show it on a badge — L line, C circle, A arc, R rectangle, D dimension, X construction, T trim, O offset, F fillet, P project.
- Draw roughly. With Line, Circle or Rectangle a heads-up box follows the cursor: type the value and press Enter to commit. Line and Rectangle have two fields, and Tab switches between them; Escape returns to Select.
- Switch to Select and click one to three elements. A contextual bar appears with exactly the constraints that apply — Coincident, Fix, Horizontal, Vertical, Parallel, Perpendicular, Tangent, Equal, Point on, Symmetric, Length, Radius, Ø, Angle. If none apply it says “No constraints apply to this selection.”
- Click a constraint. Dimensional ones — Length, Radius, Ø, Angle — open a value box: type the millimetres or degrees and press “OK”.
- Watch the status: “Empty”, “Under-constrained”, “Fully constrained”, “Over-constrained” or “Conflicting”, followed by the remaining degrees of freedom. Conflicting elements are highlighted and listed.
- Use the right rail for the drawing aids: the “Snap” checkbox (“Snap to real geometry + wheel centres/tips. Off = free placement; dimension for precision.”) and the “Train” slider that fades the movement showing through underneath.
- Undo and redo with the ↶ / ↷ buttons or Ctrl/⌘ + Z; “Fit” reframes; “Clear” empties the sketch after confirming “Clear the sketch? This discards all drawn geometry (you can undo immediately after).”
- Watch the closure readout under the canvas: “Closed region (n) — ready to mesh / export”, “Open contour — gap {d} mm (close it to mesh / export)”, or “Open contour — {n} loose end(s)”.
- The sketch solver is planegcs, the FreeCAD constraint solver, loaded on demand. You may briefly see “Loading sketch solver…”, and it needs a connection the first time.
- Measure (I) and Move (M) are listed in the toolbar and answer their keys, but report that the tool is not available yet rather than doing anything.
- Pan with a middle-drag, a held Space, or two fingers; zoom with Ctrl + wheel or a pinch. The rail states this.
Route power to a new part with Gear chaining
When power has to reach something the auto-suggested train does not serve — a motion-work mobile, a complication, a second hand at an odd rate.
- Click “Gear chain” in the ribbon's CREATE group, or from the phone Tools dock. Its panel docks beside the canvas under the heading “Gear chaining”.
- Choose a “Power source” from the dropdown; each entry names a placed wheel. If nothing can drive a chain yet you will see “Nothing can drive a chain yet…” and a button “Open the train editor →”.
- Optionally tick “Start with a NEW gear on this axis (e.g. a cannon pinion — rigidly co-rotating)” and give it “Teeth z” and a “Module”. For the first mesh the module is free, because both gears are new.
- Place the first driven wheel: drag on the preview canvas to swing it around its driver — the mesh distance is held exactly — or type into “Placement angle”. Set “Candidate teeth z”.
- Read the four live chips before committing: “Mesh module (= driver's)”, “Pitch circle”, “Centre distance” and “Derived rate”.
- To hit a specific target, switch “Aim” from “Free” to “Target rate”, “Target ratio” or “Target axis” and fill in the target. The panel then states either that the target is met exactly, or by how much it misses and what the nearest whole-tooth count would be — click “Use nearest z = {z}” (or, for an axis aim, “Aim: z = {z}, angle {angle}°”) to adopt it.
- In Target rate aim, if the sense comes out reversed, press the button that appears: “⟲ Insert an idler to flip the direction (keeps the ratio)”.
- Click “Add wheel to chain”. The chain so far is listed row by row, with “Cumulative ratio (end/source)” and “Chain-end rate” underneath.
- To continue from a co-arbor pinion, set “Pinion teeth z” and “Module” and click “Add co-arbor pinion”. “Remove last” and “Clear chain” undo the draft.
- Choose “Create into group” — Motion work, Keyless, Complications or Dial — and click “Create chain parts (n)”. A green line confirms how many parts were created, and the same button then reads “Replace chain parts (n)”.
- Everything in this panel is design-time tooth-count arithmetic: rates and directions are derived from tooth counts alone, and every external mesh reverses the sense. Nothing is typed in as a rate.
- The created parts carry NIHS 20-25 tooth geometry. If a tooth count is too low for valid geometry the part is still created — axis-only — and its note says the geometry was refused and why.
- A Z-plane warning appears when the candidate and its driver do not overlap in height: “Z-planes do not overlap… the teeth would miss each other. Adjust the wheel's plane/height after creation (axis browser) or pick another plane.”
Set part heights in the Section view
Once the plan layout is right — to give each part a real height profile so meshes actually align and collisions mean something.
- Switch the canvas: ribbon VIEW → “Section”. The assembly browser's “Open section view ⇅” button at its foot does the same; on a phone use Tools → VIEW → “Section”.
- With no train yet the view says “No movement yet — build a going train first…”.
- Click “⚙ Auto-stack the train”. It seeds every mobile's real profile — wheel and pinion at their own levels, each pinion engaging its driving wheel's plane, pivots beyond. Everything it writes remains editable.
- Read the status chips beside the button: “No collisions” or the collision count; “{n}/{n} meshes aligned” or “{n} mesh(es) miss in Z”; and “{n} part(s) not connected” when a part's features leave a gap.
- Adjust on the drawing: drag a feature up or down to move it in Z; grab its top or bottom edge to resize it.
- Or click a feature, or a part label, and edit it numerically in the right-hand panel: its type — “Wheel (tooth band)”, “Pinion (leaf band)”, “Arbor / staff”, “Collar / drum / hub”, “Pivot”, “Feature” — its name, “Footprint Ø”, “Z bottom” and “Height”.
- Use “+ Add feature” to add another band to the part, and the ✕ beside the type dropdown (tooltip “Remove feature”) to delete one.
- To snap a feature to a named height, use the “Z preset” dropdown and pick one from the “Snap to…” list. Manage them in the “Z presets” disclosure below, which holds a name and a Z field per preset, a ✕ per row and “+ Add preset”.
- Use “Reset to flat” to return a part to a single slab, after confirming “Discard this part's Z-profile and return it to a single flat slab?”
- Return to plan with VIEW → “Top”.
- Be clear about what these numbers are: the panel says it outright — all heights are first-order, labelled, editable values, never sourced standard dimensions. Widths are the parts' real footprint diameters at true scale; dashed widths are placeholders for shapes drawn in Sketch.
- Parts still shown dashed are flat: one slab at one height. Auto-stack is the fastest way to give them an honest profile.
- Drags snap to 0.05 mm; the numeric fields stay free.
Organise the assembly: groups, order and visibility
As the movement grows — to keep the canvas readable, to reorder how layers draw, and to create your own subsystems.
- Show the browser: ribbon VIEW → “Browser”. On a phone, the third dock button opens the “Sections & parts” sheet.
- Read the “Assembly” tree: the seven built-in groups — “Caliber (base)”, “Base movement”, “Motion work”, “Keyless”, “Complications”, “Dial”, “Bridges” — plus any you add. A badge on the right of a row counts its parts.
- Click a group's name to make it the active group; its editor opens in the tool panel.
- Click ▾ or ▸ at the left of a row to collapse or expand its parts. The arrow appears only when the group has parts.
- Click a part underneath a group to select it on the canvas. A ○ after the name means it is drawn schematically — tip and pitch circles, not real tooth geometry.
- Click the 👁 at the right of a group row to hide that whole group on the canvas; the eye beside an individual part hides just that part. Hidden rows dim, and editing a hidden group shows a banner reading “This section is hidden on the canvas.” with a “Show” button.
- Reorder groups — which changes draw order — by dragging the ⠿ handle onto another row, or open ⚙ and use ↑ / ↓.
- Click ⚙ on a row for that group's settings: “Name”, “Colour”, “Icon”, “Base Z” (the start height for new parts), “Side” (Movement / Dial), “Type” (Base / Module), “Lock this group's parts” and “Note”.
- Click “+ Add group” at the foot of the tree to create a custom group. It becomes the active group and its settings open immediately — name it there.
- Delete a custom group from its settings with “Delete”; the confirmation reads “Delete the group "<name>"? Its parts move back to their default group.” Built-in groups have no Delete.
- Group and layer are separate axes from height: a part can belong to Base movement and still sit at any Z. “Base Z” only seeds the starting height of newly added parts.
- Collapse state and the visibility eyes are session-only view state. Group names, colours, icons, order, base Z, side, type, lock and notes are saved with the project.
- You can move an existing part between groups from its properties (“Group”) or from the Sketch overlay's Parts panel, where the same setting is called “Build layer”.
Check the design: collisions, clearances and Validate
Continuously while laying out, and always before exporting or committing to dimensions.
- Watch the readout floating over the canvas — bottom left on a desktop, top left on a phone. It shows either “No collisions” in green or the collision count in red, then “to case edge” and “to neighbour” distances. Either distance turns amber below 0.2 mm.
- Click a wheel to change which part those two clearance figures describe. With nothing selected they describe the first arbor.
- Open the full report: ribbon INSPECT → “Validate”. The docked panel is titled “Validate”; inside, the report is headed “Validation summary” and flagged “No blocking errors” or “Has errors”.
- Read the list. Each line carries a mark — ✓ pass, ⚠ warning, ✕ error, ? unverified — covering the beat rate, rate targets, the module gradient, pinion leaf counts, tip-circle collisions, caliber fit and tight clearances, spring turns, sustained reserve, strip height, peak stress, outer-fibre elongation, arbor sizing rules, torque, pins and constraints, balance fit, hairspring reconciliation, bridge coverage and Z-plane mesh alignment.
- Fix what the message tells you to fix. Each line names the numbers and the remedy, for example “Mesh {driver}→{driven}: the wheel band (…) and the pinion band (…) miss each other by {gap} mm in Z — the gears never touch.”
- To measure something by hand, click the ruler button in the canvas corner (tooltip “Inspect”), then tap two points; “Tap the first point” and “Tap the second point” guide you.
- To wipe measurements, use the trash button that appears in the same cluster (tooltip “Clear measures”); it asks “Clear all measurements on the canvas?” first.
- Collision detection is Z-aware: two parts only clash if their height ranges actually overlap, so a balance sitting over the train is not reported as a clash. This is why the Section view matters — parts left flat share one height band.
- Adjacent meshing wheels are excluded from the collision count and from the “to neighbour” figure; their tip circles are meant to overlap.
- Several checks are reported rather than auto-fixed by design. A pinned collision, or a balance overflowing the caliber, says so in the message itself.
- The same report is rendered underneath the Goals dashboard, so you can review targets and validation together.
Running it in Simulate
Simulate always runs on a Designer project — there is no blank sheet. Kinematics come from the tooth counts alone, and every force, torque and amplitude figure stays hidden until a real mainspring has been chosen in Designer. The Spring lab at the end is a separate workbench for blade springs.
Open a project in Simulate and switch between the two views
First thing, every time — Simulate needs a project to run on.
- Press the Simulate button in the header (the play-in-circle icon). Below the small-screen breakpoint the four section buttons are icon-only; the name stays as the tooltip.
- If no project is open, the page is headed “Pick a project to simulate”. Press a project row, or its “Open” button. The project you last worked on carries an “Active” badge, and each row shows “Edited” with the date.
- If a project is already active, Simulate opens it straight away and the list is skipped. Press “← Projects” at the top left to return to the list; the heading changes from the project name back to “Simulate”.
- Under the project name, use the two-button group (group label “Simulate views”): “Movement” for the running going train, “Spring lab” for the blade-spring workbench. The choice is remembered while the app is open.
- With fewer than two arbors the Movement view refuses, showing the card “No going train to simulate” and a link reading “Open in Designer →”. Spring lab still works — it needs no train.
- Switching projects resets the simulation clock, so one project's run-down never leaks into another.
- The Movement view does not edit the design: “The simulation derives every rate from this project's geometry and drives the parts with it. Watch and verify here; edit the design in Designer.” Two things do write to the project — the dual-retrograde demo generator, and everything in Spring lab.
Run the movement: play, pause, step one beat, reset, change speed
To watch the train turn and the escapement lock and impulse, or to land the movement on an exact beat for inspection.
- In the “Movement” view press “Play”. The button reads “Pause” while running.
- Pick a multiplier in the group labelled “Speed”: “0.05×”, “0.1×”, “1×”, “60×”, “600×”, “3600×”. The two slow settings make the lock and impulse readable; 600× and above make the minute and retrograde motions watchable.
- Read the status row under the transport: elapsed watch time as hh:mm:ss.s (prefixed with the day count once a day passes), “beat <n>”, and a badge alternating between “Locked” and “Impulse · entry” or “Impulse · exit”. When the RK4 curve is driving the amplitude, an “A <n>°” chip sits between the clock and the beat count.
- Press “Step one beat” to advance exactly one tick. It pauses playback first, lands on the next beat boundary, and never steps past run-out.
- Press “Reset” to start over: playback stops and the clock returns to 00:00:00.0.
- Tick “Follow the escapement” to reframe onto escape wheel, pallet fork and balance.
- Playback speed is display speed only. It multiplies how fast watch time runs against real time, never the beat rate.
- “Reset” re-anchors the wind at time zero rather than refilling the barrel: the gauge returns to the percentage you last set, not to 100 %.
- While “Follow the escapement” is ticked, dial parts and every force layer are hidden, and your zoom and pan are reset.
- The impulse window is only a few per cent of a beat, which is why the badge swap is brief. Use 0.05× or 0.1× to see it.
Zoom, pan and fit the movement canvas
To get close to a mesh or the escapement without leaving the running view.
- Use the button group floating in the canvas's top-right corner (group label “Zoom”): “+” (Zoom in), “−” (Zoom out) and “Fit”.
- Press “+” or “−”; each press changes the scale by a factor of 1.5, clamped between 0.5× and 40× of the fitted view.
- Press “Fit” to return to zoom 1 and clear any pan.
- With a mouse or pen, drag on the canvas to pan. On a touch screen use two fingers to pan and pinch — one finger scrolls the page instead.
- With a trackpad or wheel, hold Ctrl or Cmd and scroll to zoom; a plain scroll is left to the page.
Check the derived rates against the target beat
To verify that the tooth counts you drew actually deliver the beat rate and daily rate you intended.
- In the right-hand column, find the section headed “Derived rates”.
- Compare “Target beat rate (vph)” with “Delivered by the train (vph)”. The delivered figure draws green on an exact match and amber otherwise.
- Read “Beats per second” and, when it can be derived, “Daily rate from the train” in s/d — green within ±0.5 s/d, amber outside.
- Read the per-wheel chips below the list: “Barrel”, “Centre”, “Third”, “Fourth”, “Fifth”, “Sixth”, “Escape” (or “Wheel <n>”), each with its speed in r/h and an arrow for the turning sense.
- If the train is incomplete there is no canvas at all — read the amber block that takes its place: “This project has no going train yet (<n> arbors).”, “Mesh <n> is incomplete (a pinion is missing) — rates cannot propagate past it.”, or a statement that the chosen escapement's beat coupling is not modelled yet and the simulation refuses rather than invent one.
- For the driven dial parts, read “Motions — intended vs delivered” underneath. Each part shows “delivers <n> r/h” or “delivers <n> sweeps/h · arc <n>°” against its stated intent, with a verdict badge “met”, “off target” or “different motion”.
- With nothing driven, that section reads “No part carries a mechanical drive yet. Generate the demo mechanism below to see the engine drive real parts.”
- The source line under the rates states the basis: beat coupling vph = 2·Z·N and the escapement angle sets; mesh ratios per NIHS 20-01. Balance swing is first-order isochronous, and within-impulse advance is linear in balance angle — both labelled first-order.
Give the simulation real forces — choose the mainspring in Designer
Before any torque, tooth force, bearing load, power reserve or RK4 amplitude will appear.
- Read the gap where it is stated. The panel “Forces — from the movement's mainspring” says: “This project's barrel still holds no real mainspring, so no torque can be derived. Choose the spring in Designer (Base movement → Barrel); the force chain then runs on that exact strip.” Press “Open in Designer →” beneath it.
- In Designer, press “Base movement” in the assembly browser, then the “Barrel” tab.
- Scroll to “Recommended GR mainsprings” and press one of the “GR” rows. Each row states H, e and L and the barrel Ø, the turns it develops against the turns needed, the sustained reserve against your target and the full-wind amplitude, and is marked “feasible” or “check”.
- Return to Simulate. The forces panel now heads its readouts with the strip you picked, naming the H × e × L dimensions, the NIVAFLEX grade and the GR reference.
- Check that the rest has come alive: the “Summary — the movement now” card appears, the canvas force layers draw, and the “Amplitude follows the spring (RK4)” tick box appears.
- Without a spring the kinematics still run — rates, wheel speeds and the escapement animation are all derived from tooth counts. Only the force chain is withheld.
- Two other panels state the same gap in their own words: the Spring lab's mainspring card, and “Escapement dynamics (RK4)”, which says it “Needs the movement's real mainspring torque — choose a spring in the Barrel step; the dynamics then runs on that exact band.”
- The refusal is deliberate: no spring means no invented torque, not a zero.
Read the summary — what the movement is doing right now
First stop after opening a project that has a real mainspring: the live verdict, collected in one card.
- Find the card headed “Summary — the movement now” at the top of the right-hand column. It renders only when a real mainspring is chosen.
- Read “Amplitude now” — the live swing in degrees, or “Stopped” in amber when the movement cannot run at this wind.
- Read “Amplitude at full wind” — the same curve at 100 % wind, amber below 220°. This is the design verdict on whether your spring sustains a healthy swing at all. It appears only when the RK4 curve exists.
- Read “Wind state” — the live wind percentage, falling in watch time as the simulation runs.
- Read “Running time left” — the hours at this wind, ending at the sustaining floor rather than at zero torque.
- Read “Torque at the escape wheel” — the escape torque scaled to the live wind, in N·mm, µN·m or nN·m as the magnitude warrants.
- Read “Impulse force on the pin” and “Draw on the locking stone” — the two escapement contact forces in newtons, or mN below 0.1 N.
- The card computes nothing new. Its own note: live values at this wind, collected from the panels below — amplitude from the RK4 equilibrium curve with the labelled worked-example escapement assortment, impulse at the mid-impulse contact, draw first-order as F = M/r.
Set the wind state and wind the crown
To see the movement at any point between full wind and stop — and to restart it after it has run down.
- In the forces panel, drag the slider labelled “Wind state” (0–100 %, 1 % steps). The percentage shows to its right.
- Press “Wind one turn” to add exactly one barrel turn. The button greys out at 100 %, and its note states the basis: “One press = one barrel turn (<n> developed turns fill the barrel).”
- Read “≈ <n> h of running left at this wind” beside the button.
- Press “Play”. The gauge runs down in watch time.
- At the sustaining floor the clock stops itself and the canvas states: “The mainspring has RUN DOWN: the delivered torque no longer sustains the balance (the same stop the Barrel step's sustained reserve states), so the movement stops. Wind the crown or raise the wind gauge to restart.”
- To restart, press “Wind one turn” or raise the slider, then press “Play” again.
- The crown button and the running-time readout appear only when the developed-turns figure can be derived from the chosen spring.
- Wind scales every force, torque, power and bearing readout, and the RK4 amplitude — never a rate. The panel says so: it is a labelled view parameter.
- The stop point is not zero torque. With the RK4 curve active it is the wind at which the swing can no longer clear the unlocking window; otherwise it is the Barrel step's minimum-sustaining-torque cutoff.
Set the balance amplitude — let it follow the spring, or drive it by hand
Amplitude decides whether the escapement can unlock at all, and it is the one number Simulate lets you falsify by hand — so know which mode you are in before reading anything else.
- Below the canvas, find the tick box “Amplitude follows the spring (RK4)”. It is present only for a Swiss lever escapement with a real mainspring chosen, and it is ticked by default.
- While the curve is being solved, read the label's progress: “computing the curve…” with a percentage. Thirteen wind samples are solved, one per macrotask, so the interface stays live.
- Leave it ticked to read the amplitude off the RK4 equilibrium curve at the current wind. The live value shows as “A <n>°” in the status row and falls as the spring runs down.
- Untick it to get the manual slider “Balance amplitude” (5° steps, up to 330°; its low end is tied to the escapement's own lift). The value in use shows in figures beside it.
- Press “Use default” to drop your override. Without one, the default comes from the project: “Default comes from this project's target amplitude (<n>°).” If the goals set none, the slider starts at an editable default of 270°.
- Drive the amplitude below what the escapement needs and read the canvas: “The movement is STOPPED: at <n>° amplitude the balance cannot swing through the escapement's lift window (it needs more than <n>°). Raise the amplitude slider to run.”
- With the curve on, the note reads: the amplitude now follows the mainspring, declining as the spring runs down, and the movement stops only where the swing can no longer clear the unlocking window — no wall.
- Amplitude never changes a rate. The app says so: it shapes the balance swing and the impulse window only; every rate comes from tooth counts alone.
- The RK4 curve uses labelled stand-ins for what the design does not carry: “Escapement assortment and inertias are the labelled worked-example defaults.”
Read the force chain: torque per arbor, tooth force per mesh, bearing load per arbor
To size pivots, judge a mesh, or see how much of the barrel's torque survives to the escape wheel.
- Open the panel headed “Forces — from the movement's mainspring” in the right-hand column. The wind gauge sits at its top, and every number below scales with it.
- Read the list: “Barrel torque (delivered)”, “Torque at the escape wheel”, “Power at the escape wheel” in µW, “Train efficiency” as a percentage, and “Power reserve (sustained)” in hours — or the word “underivable”.
- Under “Torque per arbor”, read one chip per arbor, barrel to escape, each named by its wheel and carrying its torque at the live wind.
- Under “Tooth force per mesh”, read each row labelled “<driver> → <driven>” with the tangential tooth force in N, or mN below 0.1 N.
- Under “Bearing load per arbor”, read one chip per arbor with the radial resultant at its pivot.
- For pivot pressure, follow the link “open the pivot-pressure calculator” at the end of that note. It opens the Calculator's “Bearing loads & pivot pressure” card.
- The app states its own limit on the bearing figure: it is first-order, the radial resultant of the two tooth forces on each mobile summed as vectors at the pitch points. Splitting it across the two pivots, and the Hertz contact pressure, need bearing spans and jewel dimensions — hence the calculator link.
- Sources line, verbatim: “mainspring torque (K = E·e³·h/12L, hysteresis η = 0.93; torque ∝ wind angle); mesh torque ratio + power per the standard moment relations; per-mesh rendement 0.93 per NIHS 20-10. Tooth force is the first-order tangential F = M/r at the pitch radius m·z/2.”
Turn on a force layer over the running movement
To see where the load actually is — which tooth carries it now, which pivot presses which way, and where the power is lost.
- In the forces panel, find the heading “Force layer on the canvas” and its four-button group: “Off”, “Arrows”, “Heat map”, “Power flow”. “Arrows” is the state you start in.
- Choose “Arrows” to draw the tangential tooth force at each mesh's pitch point, labelled in newtons (mN below 0.1 N). The arrows visibly shrink as the wind falls.
- Choose “Heat map” to colour the bodies and pivots by load. A legend appears under the canvas with one switch per layer — “Torque”, “Tooth force”, “Bearing load” — each with its colour ramp and the live range at this wind. Untick a row to drop that layer.
- Choose “Power flow” to draw an animated conduit along each mesh with the power in µW and the loss, for example “−0.12 µW (η 0.93)”. The dashes advance only while the train really moves and freeze through every lock.
- The layers are hidden while “Follow the escapement” is ticked, and none of them draw until a real mainspring is chosen.
- The heat layer carries its own caveat: colours are log-scaled over the live chain — bodies by arbor torque, rings by bearing load — and the glow rides the one tooth at the contact right now, handing over tooth to tooth as the wheel turns. The neighbours' fade is a drawing aid; position and magnitude are real.
- Colours follow the live wind against the full-wind scale, so the whole map visibly cools as the spring runs down. The bearing load draws as an arc plus arrow on the side the pivot actually presses, not a uniform ring.
Inspect a single wheel's live numbers
To pull one mobile out of the chain and read its speed, torque, power, in and out tooth forces and bearing load together.
- Read the prompt under the canvas: “Tap a wheel on the canvas to inspect its live forces and speed.”
- Tap, or click without dragging, a wheel on the canvas. A dashed blue ring marks the selection and a readout opens below the canvas, headed with the wheel's name.
- Read the rows that apply: “Speed” (r/h with the sense arrow), “Torque”, “Power” (µW), “Tooth force in”, “Tooth force out” and “Bearing load” — the last as force plus the direction the pivot presses, for example “12.4 mN @ 213°”.
- Close it by tapping the same wheel again, tapping empty canvas, or pressing the “×” (labelled “Close”) in the readout's corner.
- Force rows appear only when a real mainspring is chosen; without one the inspector still shows the wheel's speed. All values follow the live wind, so they change as the movement runs down.
- The inspector lives on the canvas, so it needs a runnable train — with an incomplete train there is no canvas to tap.
Solve the escapement dynamics (RK4) for one alternance
To ask what amplitude the current torque actually sustains, rather than what the geometry merely allows — and to see the unlocking and impulse timing.
- Find the panel headed “Escapement dynamics (RK4)” in the right-hand column.
- Press “Solve one alternance”. The button is disabled while the escape torque is zero, which means no spring has been chosen.
- Read “Amplitude after the alternance” — the amplitude out, with the change against the amplitude you started from in brackets.
- Read “Steady amplitude at this wind” — a figure in degrees, or “STOPS (below the unlocking window)”, or “> 350° — would overbank (rebattement)”.
- When it runs, read “Escapement efficiency η_e (at the steady state)” as a percentage, “Unlock → end of impulse” in ms, and “Percussions” as “<n> pin–fork · <n> tooth–pallet”.
- Read the chart below: it plots the balance angle through the alternance, and its caption gives the angle range and names the dashed marks — “unlocking contact · end of unlocking · end of impulse”.
- Check the input line under the chart: “From this design: escape torque <n> µN·m at <n> % wind · f = <n> Hz · θ₀ = <n>°.” Those four are yours; the rest are labelled stand-ins.
- If the solve refuses, read that instead of figures: the balance “does not swing through the unlocking window”.
- Stated limits, verbatim: “Inertias, balance frictions, restitution and the entry-escapement assortment come from the treatise's worked calibre example (labelled defaults — the design does not carry them yet).” And: “Entry-side release and impulse dynamics (A1/A2), integrated numerically (RK4); transmission ratios derived from the escapement geometry. The exit alternance is assumed symmetric (first order).”
- For any other escapement the panel shows only: “The dynamics model covers the Swiss lever escapement; this design uses another escapement type.”
Generate (or remove) the dual-retrograde demo mechanism
When you want moving complications to watch — and to see the fly-back emerge from geometry rather than from an animation.
- Scroll the right-hand column to the section headed “Demo: dual retrograde”.
- Press “Create the dual-retrograde demo”. The button is disabled until the project has a runnable train of at least three arbors.
- Check the six parts that appear and are saved into the project: “Minute snail”, “Minute rack”, “Retrograde minutes”, “Seconds snail”, “Seconds rack”, “Retrograde seconds”.
- Watch them in “Motions — intended vs delivered”: each should carry a “met” badge with its derived cadence and arc.
- To rebuild after changing the train, press the same button, which now reads “Replace the demo (re-derive from the current train)”. To take it out again, press “Remove the demo” beside it.
- This is the one place the Movement view writes to your project. The parts are real parts, saved through the normal autosave.
- The section's own description: it builds a snail-cam, rack and fly-back hand for the minutes (off the centre wheel) and the seconds (off the seconds wheel). Every shape and every motion value is derived from the drawn geometry — the fly-back is not animated by hand; it happens because the snail's step passes under the follower.
Spring lab: get a blade onto the bench
Any time you want to analyse a jumper, a click spring, a detent blade or a hand — the lab works on the project's own parts, not on copies.
- Switch to “Spring lab” with the view switcher. With no spring yet the page reads “No spring in this project yet. Draw one by hand, or add the reference blade to begin. Springs made on the Sketch surface (mark centreline) appear here too.”
- To draw one, press “Draw a spring”; the button becomes “Cancel drawing”. Follow the hint: “Draw the blade centreline in ONE stroke — pen, finger or mouse (with a pen down, touches are ignored as palm rests). The grid is millimetres; the stroke simplifies automatically and the first point becomes the clamped anchor.”
- Draw on the grid and lift. The part is created as “Hand-drawn spring” and drawing mode ends. A stroke that simplifies to fewer than three points is discarded.
- To start from a known blade instead, press “Add the reference blade”: a straight 4.1 mm blade at the standard section, h 0.40 × b 0.25 mm, named “Reference blade”.
- To promote an existing part, open “Make an assembly part a spring” and press the row reading the part's name followed by “→ designate as spring”.
- If the shape cannot be a blade you get the reason instead of a result: that its edges fork or close into a loop and a blade needs one open centreline, or that it has no open edges because circles alone carry no centreline.
- Once several springs exist, switch between them with the named buttons in the row at the top of the left-hand column.
- Every one of these actions edits the project — the spring parts are saved through the normal autosave.
- The designate block appears only when the project has drawn parts without a centreline, and it starts collapsed once a spring already exists.
Spring lab: choose material and section, then read deflection and stress
To find out whether a blade survives the deflection you need — and by what margin.
- Select the spring. The “Section & material” card is in the side column, below the canvas on a narrow screen; it is always open.
- Choose from “Material (reference library)”. The first entry is “Custom values…”, followed by “Blade spring steel”, “NIVAFLEX 45/5”, “NIVAFLEX 45/18”, “Nivarox-type alloy”, “CuBe (Glucydur-type)”, “Steel (general)”, “Brass”. A new blade already carries “Blade spring steel”.
- Read the line beneath it: E, the limit (σ_adm or Rp0.2), density where published, the source, and in amber whatever the reference does not publish.
- Set “Thickness h (mm)” and “Width b (mm)”. Choosing “Custom values…” adds two more fields: “Young's modulus E (N/mm²)” and “Admissible stress (N/mm²)”.
- On the canvas side, choose the load type in the group “Load mode”: “Set deflection” or “Set force”.
- Drag “Tip deflection” (0.02–1.2 mm) or “Tip force” (0.02–6 N). The solution updates as you drag; there is no separate solve button.
- Press “Animate” to cycle the twelve solved load steps; it becomes “Stop”. The readouts follow whichever step is on screen, so press “Stop” at the state you want to read.
- Use “Deformation display scale” (×1 to ×25) if the true deflection is too small to see.
- Read the “Analysis” card: “Developed length”, “Tip force”, “Tip deflection”, “Peak stress / limit”, “Safety factor” (green at 1 or above, red below, with the limit kind in brackets) and “Solver” — “converged” or “NOT converged”.
- The deformation slider magnifies the display only; the solution is always at true scale. On the canvas, grey dashes are the unloaded centreline, the band is the equilibrium shape with a continuous stress field, a red ring marks the critical point, and the scale below carries the material limit as a red tick.
- Non-convergence is stated, not hidden: “The solver did not converge at this load — the shape shown is the last iterate, not an equilibrium. Reduce the load or thicken the blade.”
- Engine and limits, verbatim: “Corotational beam FEM (Rust → WebAssembly), validated against closed-form references: cantilever 0.013 %, reference force 0.45 %, exact large-deflection arc 0.006 %. First-order limits: constant rectangular section, in-plane bending, frictionless contact.”
- Persistence caveat, verbatim: “Thickness saves with the part; the rest are analysis settings.”
Spring lab: couple a blade to the movement and run a star-wheel contact sweep
To see what a jumper does against its star — force and torque through one tooth pitch — at a cadence the going train dictates rather than one you typed.
- With a spring selected, find the block headed “Excitation — what drives this spring”.
- Set “Star teeth”, “Root radius (mm)” and “Tip radius (mm)”. The tip radius must exceed the root radius or “Run the contact sweep” stays disabled.
- Press “Run the contact sweep”. The lab solves 48 quasi-static states over one tooth pitch, and the transport, the contact view and the two charts appear.
- Drag “Star angle” to scrub through the cycle; the readout gives the angle and the contact force.
- To couple the blade to the movement, pick a driver in “Driving part” — each entry names the wheel or part and its derived speed, for example “Fourth · 60.00 r/h” — then press “Save the coupling”; it reads “Update the coupling” afterwards.
- Read the green confirmation, which names the driver and states how many times per hour the blade flexes, derived rather than typed.
- With a driver chosen, press “Run from the movement” to play the sweep at the derived rate, using the multipliers “1×”, “60×”, “600×”. “Pause” stops it, and touching the scrub slider also stops playback.
- Read the two charts, “Contact force vs rotation” and “Star torque vs rotation”, and the note beneath them.
- The sweep itself does not need a saved coupling — only the derived-cadence line and “Run from the movement” do.
- The note under the charts is also a physics check: torque resists while the nose climbs the flank and drives after the tip — the jumper snap — and the net work over the full cycle should be about zero for a frictionless elastic contact. It also gives the peak blade stress in the sweep.
- The coupling is saved onto the spring part itself, so it survives leaving the lab.
Getting it out: DXF, SVG, STEP and PDF
Output is per part, per sketch or per page. There is no single file that carries a whole movement into CAD, and no project file to hand to a colleague — this chapter covers what can be exported, in what form, and what arrives at the other end.
Export a part or a sketch as DXF or SVG
When handing geometry to CAD or CAM — the app's output is per part, not one file for the whole movement.
- Open the Sketch overlay in Designer: ribbon CREATE → “Sketch”.
- For a generated gear or jewel, find it in the “Parts” list in the right-hand column, under “Generated gears”, and click its name. The static viewer opens with the part drawn exactly.
- Click “Export DXF” or “Export SVG” beneath the viewer. In the browser the file downloads; in the desktop build a native save dialogue opens. The filename is the part's name with spaces replaced by hyphens.
- For a hand-drawn part, select it in the Parts list — the sketcher opens with that part's geometry — then use “Export DXF” or “Export SVG” in the right rail's “Import / export” panel.
- For the shared movement sketch, deselect any part with “← Back to the sketch” and export from the same panel.
- In Fusion, follow the on-screen note under the viewer: in Insert DXF, uncheck “Combine to single sketch” so the construction circles arrive as their own sketch and the tooth profile can be selected in one click.
- Units and origin: everything is millimetres, 1 unit = 1 mm. Each part exports centred on its own origin, never shifted by a meshing centre distance — position parts in CAD against their pitch circle. Both DXF and SVG negate Y, because the sketch world has Y pointing down and CAD uses Y up.
- Layers: the tooth profile and normal geometry go on HOROLATOR_GEOMETRY, construction geometry on HOROLATOR_CONSTRUCTION, and a derived spring outline on HOROLATOR_OUTLINE.
- Honest limit: there is no single export-the-whole-design DXF or STEP from the Designer. Lines, circles and arcs export as true LINE, CIRCLE and ARC entities; splines are sampled into a 12-point polyline; dimensions and constraints are not geometry and are not written out.
- Anything exported from the sketcher itself — a hand-drawn part or the shared sketch — is saved as sketch.dxf or sketch.svg. Only the generated-part viewer names the file after the part.
- To bring outside geometry in, use “Import DXF/SVG” in the same panel, and heed the hint: “Import replaces the sketch with a starting outline.”
Export a Spring lab blade to CAD
When the blade is dimensioned and you want it in a drawing or a CAD model.
- In Simulate, switch to “Spring lab” and select the spring.
- Find the “Export” card at the bottom of the side column.
- Press one of the four buttons: “DXF”, “SVG”, “STEP” or “Fusion package”.
- Take the file, which is offered under the part's name in lower case with spaces turned into hyphens — a part called “Reference blade” exports as reference-blade.dxf, reference-blade.svg, reference-blade.step or reference-blade.fusion.json.
- For Fusion, import the .fusion.json with the Horolator Import add-in.
- Export note, verbatim: “All exports share the part-local origin (anchor at 0,0) and open right-side-up in CAD. The Fusion package pairs with the Horolator Import add-in (fusion-addin/INSTALL.md): sketches + user parameters.”
- The app states the honest caveat about the add-in itself: its behaviour inside Fusion is verified from the add-in's own manual checklist.
Draw a single gear in the Library and export the outline as DXF
You need one wheel or pinion to a standard tooth profile, with no project open — to check its diameters, or to take the outline into CAD or a wire-EDM job.
- Open the Library and click the “Gear tool” tab. A green note at the top states what the tool is for and points the full movement designer at the Designer section.
- In the panel on the right, pick a “Tooth profile”: “Involute — 20° pressure angle (NIHS)”, “NIHS 20-02 — Ogival, wheel”, “NIHS 20-02 — Ogival, pinion” or “NIHS 20-25 — Corrected epicycloidal”.
- Read the hint under the dropdown where one appears — “Pressure angle fixed at 20° (NIHS / ISO 53 involute).” for the involute, and “NIHS 20-02 requires the driving wheel to have at least 40 teeth.” for the ogival wheel. Choosing the ogival wheel with fewer teeth raises the count to 60 for you.
- Set “Tooth count (z)”: whole numbers, 6 to 240. Values outside that are clamped.
- Set the module. “Standard module” is a dropdown of the preferred series from “0.06 mm” to “0.30 mm”. For your own value pick “Custom…” at the bottom of the list; the field's label becomes “Custom (mm)” and it accepts 0.04 to 2.00 mm in 0.01 steps.
- Read the preview on the left: centred on a cross, the tip and root circles as plain circles, the pitch circle dashed, the base circle dashed in amber (involute only), and the complete toothed outline. It auto-scales to fit and cannot be zoomed or panned.
- Read the “Computed dimensions” panel: “Pitch diameter (dp = m · z)”, “Tip diameter (da)”, “Root diameter (df)”, “Base circle (db = dp · cos α)”, “Circular pitch (p = m · π)”, “Angular pitch (360 / z)”, “Tooth thickness at pitch line”, “Root clearance (c)”, then “Profile source” naming the construction actually used.
- Click “Export DXF”. The file downloads as, for example, horolator-gear-z10-m0.2.dxf.
- Press “Reset to defaults” to restore the involute profile, z = 10 and m = 0.20 mm.
- What arrives in CAD: an AutoCAD R12 ASCII DXF in millimetres, gear centred on the origin, with the whole closed tooth outline as one polyline on layer GEAR_OUTLINE and pitch, tip and root reference circles on layer GEAR_REF. Two comment lines at the top record the gear and its profile source with dp, da and df.
- If the combination falls outside the standard's table the preview reads “No geometry to display.”, the panel reads “Value is out of the supported range.” and the export button is disabled. The limits are: ogival wheel z ≥ 40; ogival pinion z from 6 to 20; corrected epicycloidal z ≥ 8; involute z ≥ 6.
- Base circle shows “—” for the ogival and epicycloidal profiles, which have none.
- With the defaults (involute, z = 10) an amber warning is showing the moment you open the tab: “Involute undercut likely below z = 17 teeth at 20° pressure angle. Consider a corrected profile or higher tooth count.” It is advice, not an error — the gear still computes and exports.
- For “NIHS 20-02 — Ogival, wheel” the standard's factors are keyed by the mating pinion, which the tool cannot know; it assumes a 10-leaf partner and says so in “Profile source”.
- The green note above the tool says the outline exports “as SVG”, but the button is labelled “Export DXF” and the file written is a .dxf. The note's wording is stale; there is no SVG export from this tool.
- Your last profile, tooth count and module are remembered in the browser and come back next time you open the tab.
Export a Library page as a PDF
You want a clean, printable sheet of the part you have just specified — identifier, drawing and tables — to take to the bench or send to a supplier.
- Set the page up first: choose the standard, or make all your selections on a category page. The export captures the page exactly as it stands.
- Find the “Part identifier” bar near the top of the page. The button at its right-hand end is labelled “Export page data (PDF)”.
- Click it. Every collapsed section inside the page — the NIHS tables toggle and each collapsed table — is expanded automatically first, and they stay open afterwards.
- Your browser's own print dialog opens on a freshly built, light-background report. Choose Save as PDF, or your printer, there and confirm.
- Check the result: a “Horolator” / “LIBRARY” masthead, the page title, the page subtitle where it is plain text, an “Identification” line holding the same identifier string, the drawing, a “Tables” section with every table that was on screen, and a footer reading “Source: … · Generated by Horolator” with the date and time.
- The button exists only where an identifier bar exists: on the category pages that supply one, and on the 27 search-opened entries that have at least one numeric table cell. The Lubrication page passes no identifier and so has no export button at all.
- A Library report carries the identifier, the figure and the tables only. The exporter can also emit a “Dimensions & values” block, but no Library page marks its fields for it.
- It is print-to-PDF, not a generated file: the app builds a print document and hands it to the browser, so the save step and its wording belong to your browser.
- The report's own headings — “Identification”, “Tables”, “Source:”, “Generated by Horolator” — are English whatever the app language.
Export a calculator's inputs and results as a PDF
When you want the numbers on paper at the bench, or a record of the state you proved — the only way to keep a calculator's values, since nothing is saved.
- Open the calculator and set every input to the values you want recorded. Nothing is exported that is not on screen.
- Press “Export page data (PDF)”, the outlined button with a download arrow at the top right of the open calculator.
- Your browser's own print dialog opens on a clean, light, print-formatted report. Choose Save as PDF as the destination, or print it directly.
- Check the report before saving. It carries a header with “Horolator” and the section name “Calculator”; the calculator's name as the title; an “Identification” line repeating that name; a figure box; a two-column “Dimensions & values” list holding every input field and every result chip with its label and value; any tables the calculator rendered, under “Tables”; a “Method / formulas” list containing the calculator's “How to use” paragraphs; and a footer reading “Source: … · Generated by Horolator” with the date and time.
- Close or cancel the print dialog when you are done; the temporary document removes itself.
- There is no file download and no server round-trip. The PDF comes from your browser's print-to-PDF, so the destination menu's wording is the browser's, not Horolator's.
- The report's figure is not the working diagram — the exporter takes the first drawing it finds inside the page, which is the heading icon. The “How to use” text does reach the report, as the same paragraphs are passed through as the method notes.
- On the 23 calculators that carry ⓘ buttons, the export opens their explanation dialogs on the way past; dismiss them afterwards.
- The Designer's Calculators panel has no export button. Export from the Calculator section.