Live GPS Position
Ride History
| Start | Km | Top Speed | Lean L / R | Route | |
|---|---|---|---|---|---|
| Loading rides... | |||||
Selected Route View
🏆 Records & Personal Bests
Where you ride the most
Current Maintenance
| Service | Due | Remaining | Alert | Options |
|---|---|---|---|---|
| Loading... | ||||
Safety Alerts (Theft / Crash / Battery)
| Type | Date | Details | Actions | |
|---|---|---|---|---|
| Loading... | ||||
Logs & Events
| Time | Level | Source | Type | Details |
|---|---|---|---|---|
| Loading... | ||||
Send SMS
Sent through the tracker's own cellular modem, not a 3rd-party SMS gateway. If the tracker is asleep, delivery happens at its next check-in (see the check-in interval in Settings → Tracker). The firmware also enforces its own number whitelist and a 60s cooldown between sends.
Message Log
-| Time | Direction | Phone | Message | Status |
|---|---|---|---|---|
| Loading... | ||||
Motorcycle
Identity
Odometer
No ECU reports the dashboard odometer over OBD-II, so it is tracked as this reading plus the GPS distance of every ride recorded since you entered it. Re-enter it occasionally to correct the drift (expect ~2–3% under).
Tracker
Sent live to the tracker via MQTT, applied on the next connection. The APN/MQTT connection remains configurable only from the tracker's local WiFi portal (AP "MotoMic-Tracker").
Reporting intervals
Battery calibration
OBD-II
Bike telemetry read from a Bluetooth OBD-II adapter. Strictly read-only towards the ECU — the tracker refuses every write, reset and clear-DTC request at a compile-time whitelist.
Connection
Advanced — OBD adapter (normally left alone)
Read rates
Dashboard display
Display only, stored with the motorcycle profile. The Connection switch above is what makes the tracker actually read the engine.
Diagnostic logging
Safety
Sent live to the tracker via MQTT, applied on the next connection. Theft and crash SMS are sent by the tracker itself over the modem, so they work even if this platform is unreachable.
Alert numbers
Anti-theft geofence
Crash detection
Motion while parked
Firmware
Over-the-air update
Data & Retention
Data retention windows. 0 = keep forever. Changes take effect on the next
daily cleanup — no container restart needed. Env vars in docker-compose.yml only
seed the initial defaults.
Retention windows
Ride grouping
Database backups
Daily automatic backups (kept 7 days). Restore overwrites all current data and restarts the server — a pre-restore snapshot is taken automatically.
Logging
Global level
Device logs
Per-source levels
Each source below can override the global level. Inherit = follow the global default above.
Off silences a source in the DB entirely (it still prints to docker logs).
Hover the ⓘ to see what each source covers. High-frequency raw MQTT sources default to Off. Applied live, no restart.
Notifications
Maintenance alerts
Tracker silent
SMS forwarding
Every SMS the tracker's SIM receives (its own number, or a carrier notice) is also forwarded here — sent directly from the tracker over the modem, so it still works even if this platform is unreachable.
Integrations
Home Assistant's own MQTT integration only supports one broker at a time.
If you already have a separate broker for Home Assistant, this mirrors
MotoMic's topics (moto/# and homeassistant/#) out to it,
so HA sees the tracker's sensors without touching your existing HA MQTT setup.
Applies immediately on save — no container restart needed.
Home Assistant bridge
Status: -
Users
People with access
| User | Role | Last sign-in |
|---|
Owner - everything, including this page. Rider - day-to-day use: rides, maintenance, I Filled Up, service mode; no tracker settings, SMS or logs. Viewer - read-only: live map, rides, statistics. There is always at least one enabled owner.
Add a user
A temporary password is generated and shown once. The new user must replace it at the first sign-in, and can then link their own Google account.
Invite with Google
You get a link to send them. It works once, for 7 days, and only for a Google account with exactly this email - the account is created when they accept. While your Google OAuth app is in Testing, also add their email under Test users in Google Cloud (or publish the app: openid + email need no review).
Account
Change password
This account signs in with Google and has no password. If you ever need one, ask the owner for a password reset.
Signed in as -. The password from
ADMIN_PASSWORD only seeds the account on first start;
once changed here it survives container restarts.
Changing the password signs out every other browser that was logged in; this one stays signed in.
Sign in with Google
-
Only a Google account linked here can sign in - any other is refused. The password above keeps working either way.