The reference for every screen in the Hours of Service logbook. Written for drivers who keep the log, and for the fleet manager who reads it.
Status: SynOdos HOS is approved by MTO/CVOR for use in lieu of paper logs. The app is still being extended, so features marked (planned) are not in the build yet.
1. Signing in
Open https://hos.synodos.app on a tablet or phone. The account is created here, on the
sign-in screen — the site's request forms do not create one. See
getting started for the site side: the
early access form, the website request, and what comes back.
| Path | How it works |
|---|---|
| Continue with Google | One tap, no password to remember. Recommended. |
| Email + password | Create the account once with New here? Create an account, then sign in. |
The log book is local-first. Records are written to the device's own database (IndexedDB) before anything touches the network, so the app opens and edits with no signal. Signing in on a second device merges both copies — nothing is overwritten or dropped.
After a successful sign-in the app stays usable offline for 7 days without re-authenticating. The account panel shows the countdown ("7 days offline left"). Once that window lapses you need one online sign-in to continue.
2. The three screens
| Screen | What it is for |
|---|---|
| Daily Logger | Record today's duty status on the 15-minute grid and fill in the day's details. |
| Dashboard | Every saved week, grouped by month, with driving / on-duty / cycle totals per record. |
| Inspection | The 15-day roadside record an officer reads, plus the Handoff QR code. |
Open any of them from the menu (☰, top right).
3. Recording a day — Daily Logger
3.1 The day header
- Weekly record → Log details collapses or expands the metadata panel.
- ‹ Tuesday, November 3 › moves one day at a time; crossing a week boundary loads (or creates) the adjacent week automatically.
- Last Edited shows when the open day was last written.
- Finish Day locks the day against further edits. On a past day it locks and saves in one step, which is what triggers the reason prompt below.
3.2 The grid
The grid is 24 hours on a 15-minute resolution, one column per duty status: Off-Duty, Driving, On-Duty. Turn on Show sleeper in preferences and a Sleeper column appears between off-duty and driving.
- Tap a quarter-hour cell to set that block to the column's status.
- Tap an hour header to advance all four quarters of that hour at once — one tap on an off-duty hour makes the whole hour driving. The fast way to block in a stretch.
- The bottom bar totals the day live: off-duty, driving, on-duty, and distance.
- On a phone the grid rotates to a vertical layout with sticky time labels and early off-duty hours compacted; on a desktop it is horizontal.
Everything is editable after the fact, but past days are locked. Unlocking one raises a warning that the change is written to the forensic audit trail, and saving a changed historical day requires a reason.
3.3 Day details
| Field | Notes |
|---|---|
| Remarks | Free text for anything an officer should know. |
| CMV Plate | Matches a saved vehicle and can fill that vehicle's odometers. A new plate is added to the vehicle profile on blur. |
| Start / End Odometer | Distance is derived from the pair. The end value can carry forward to the next unlocked day for the same vehicle. |
| Add another vehicle | A day can hold more than one vehicle record. |
3.4 Saving
Two paths, both writing to the device first:
- Save Progress in the menu, explicitly.
- Autosave — a two-second debounce after any change, when enabled in preferences.
Before writing, the app compares against the last saved snapshot. If a past or previously locked day changed, it asks for a reason; ordinary current-day edits save silently.
If you try to leave with unsaved historical edits, you get three choices: Save & Navigate (with reason), Discard Changes, or Cancel.
4. Presets
- Save Preset stores the recurring header values of the open day: driver name, operator name, operator business address, home terminal address, CMV plate, and cycle.
- Apply Preset writes those values into the open day.
Built for drivers who sign the same operator and unit into every day. The preset does not carry grid entries, remarks, or odometers.
5. Dashboard
Saved weeks are listed by month, newest first.
- The current week is highlighted.
- Each card shows driving, on-duty, and cycle hours for that week.
- Click a card to open it in the Daily Logger.
- The download icon exports that week to PDF.
- The trash icon deletes it with a two-step confirm (arms after one second, resets after five) so a stray tap cannot wipe a week.
6. Inspection — the roadside screen
15-Day Record is what you show when an officer asks.
- Lists today plus the previous 14 days, newest first.
- Each available day is a read-only duty graph with a cycle marker —
C1for Cycle 1 (7-day) orC2for Cycle 2 — and a chip showing the hours recorded that day. - Days with nothing recorded read No log data and stay collapsed.
- Today's graph stops at the current quarter and carries a red current-time marker.
- Expanding a day reveals odometer, remarks, and selected metadata.
Handoff shows a QR code that opens the same record read-only on the officer's own phone. Sharing needs a connection, and the link stops working after 7 days — the on-screen record and the printed PDF do not.
7. PDF export
Export Log (PDF) produces an A4 portrait document: title block, driver and log metadata, vehicle fields, one block per day with a 24-hour duty graph, totals, remarks, operator information, and signature lines.
The roadside variant (from the Inspection screen) collects the current day plus the previous 14, fills any missing date with a locked all-off-duty entry, and adds last-edited text plus the current-time cutoff. The file downloads with the driver name and week number in the filename.
8. Preferences and profile
System Settings covers:
- Display — light/dark theme, week start day, and log defaults.
- Log defaults — values pre-filled into every new day.
- Installation — guidance for adding the app to the home screen.
- Version history — what changed in the running build.
Profile (the account button) holds personal information and certification dates, occupation, and the vehicle list — add, edit, or delete units, with mileage derived from matching log entries. Changes are staged locally until Save Preferences.
9. Offline, install, and sync
- The app is a PWA: install it from the browser menu, then it launches full-screen from the home screen.
- Status changes queue locally while offline and flush when a connection returns; the sync badge reports the state.
- Records live on the device. Clearing site data removes them — use the encrypted backup before doing that.
10. Encrypted backup to Google Drive
- Connect Google from the profile panel (Drive
appdatascope). - Choose a PIN or passphrase.
- Backup Now encrypts logs and preferences with AES-GCM, key derived from the PIN by
PBKDF2, and stores
synodos_hos_backup.encin your private Drive app folder. - Restore downloads, decrypts, writes the records back, and reloads.
The PIN is not recoverable. Nobody — including SynOdos — can decrypt the file without it. Write it down somewhere safe.
11. The rules the app enforces
| Limit | Value |
|---|---|
| Maximum driving | 13 hours per 24-hour day |
| Maximum on-duty | 14 hours per 24-hour day |
| Mandatory off-duty | 10 hours minimum per day |
| Consecutive rest | 8 continuous hours |
Cycle hours accumulate across the cycle and are shown on the day, the dashboard, and the inspection record. Totals recalculate on every entry, so a limit breach is visible when the block is placed, not during an audit.
12. Audit trail
Every save of a historical day records what changed — metadata, daily fields, and a summary of grid changes — together with the reason given. The Inspection screen shows the combined audit table, newest first. Current-week metadata edits are not audited; unlocked edits are audited only once saved.
13. Known gaps in this build (v0.35.5)
- No visible control to activate a pending service-worker update; new versions arrive on the next full launch.
- Restore does not validate the backup's schema version before importing.
- PDF and most database operations have no dedicated error screen.
Companion documents: getting started for the site and the two request forms, and the tutorial for the same material as a guided first session.