Managing Maintenance
The Maintenance page helps you track service schedules for your vehicles. You can set up maintenance reminders based on various metrics including distance traveled, engine hours, fuel used, and many other vehicle parameters.
How Maintenance Works
A maintenance record watches one number on the vehicle — usually the distance it has travelled — and alerts you each time that number reaches a service point.
You describe the schedule with two values:
- Start — the reading at which the first service is due.
- Period — how much further the vehicle goes between each service after that.
Example. Oil change, Start = 50,000 km, Period = 10,000 km. You get an alert at 50,000 km, then 60,000 km, then 70,000 km, and so on.
You set this up once. The schedule repeats on its own — you do not need to edit the record after each service.
Start is a total reading, not "how far from now". If a bus has already travelled 48,000 km and you want its next service in 2,000 km, set Start to 50,000 km — not 2,000 km.
The easiest way to get a vehicle's current reading is the Current value button in the form — see Using the Current Value. Note that this is the reading recorded by the tracking device, which may differ from the number on the vehicle's dashboard.
Viewing Maintenance Records
The Maintenance table displays the following columns:
- ID: Unique identifier (hidden by default)
- Name: Maintenance task name (e.g., "Oil Change", "Tire Rotation")
- Type: What is being tracked (Total Distance, Engine Hours, etc.)
- Vehicles: Which vehicles this maintenance applies to. The first vehicle is shown with its secondary label (e.g., license plate) underneath; if there are more, a +N more label appears — hover over it to see the rest.
- Start: The reading at which the first service is due, shown in readable units (km, h, L…). For date-based types it is shown as a date and time.
- Period: How often the service repeats after that, in readable units
- Sync Status: Real-time connection status with visual indicators
- Actions: Edit and Delete options
On mobile devices, columns like Type, Vehicles, Start, Period, and Sync Status are automatically hidden for better readability.
Quick actions: Click a row to open it for editing, or right-click a row to open the same Edit / Delete menu as the actions button.
Maintenance Types
NexaBus supports 45 maintenance tracking types organized by category:
Distance-Based
- Total Distance: Overall distance traveled
- Distance: Distance measurement
- Odometer: Vehicle odometer reading
- Service Odometer: Service-specific odometer
- Trip Odometer: Trip distance
- OBD Odometer: Odometer read from the vehicle's OBD port
Hour-Based
- Hours: Engine hours counted by the tracking server
- Engine Hours: Engine hours reported by the device
- Driving Time: Active driving duration
Date-Based
- Device Time, Fix Time, Server Time: Schedule service by calendar date instead of usage
Fuel Metrics
- Fuel: Fuel level monitoring
- Fuel Used: Total fuel consumed
- Fuel Consumption: Consumption rate
Engine Parameters
- RPM: Engine revolutions
- Coolant Temperature: Engine coolant temp
- Engine Temperature: Engine temp sensor
- Throttle: Throttle position
Battery & Power
- Power: Voltage reading
- Battery: Battery voltage
- Battery Level: Battery percentage
And Many More
Including speed, altitude, GPS accuracy, satellites, humidity, device and extra temperature sensors, and various OBD parameters.
For regular servicing, use a type that keeps growing — distance, hours, fuel used, or a date. Instant readings such as RPM, temperature or battery level go up and down, so they rarely make a useful schedule.
Units for Start and Period
Start and Period are entered in the raw units the tracking device reports, which are not always the units shown in the table. The hint under each field tells you exactly what to enter for the selected type.
| Type | Enter in | Example | Shown in table as |
|---|---|---|---|
| Distance types (Total Distance, Odometer…) | Meters | 10,000,000 | 10,000 km |
| Hour types (Hours, Engine Hours, Driving Time) | Milliseconds | 3,600,000 | 1 h |
| Date types — Start | Timestamp in milliseconds | use Current value | A date and time |
| Date types — Period | Milliseconds | 86,400,000 | 1 day |
| Fuel types | Liters | 50 | 50 L |
| Temperature types | Celsius | 90 | 90 °C |
| Power, Battery | Volts | 12.5 | 12.5 V |
| Battery Level, Throttle | Percent (0–100) | 80 | 80 % |
| Speed types | Knots | 50 | 92.6 km/h |
Handy conversions:
- 1 km = 1,000 meters
- 1 hour = 3,600,000 milliseconds
- 1 day = 86,400,000 milliseconds
The Start and Period fields accept up to two decimal places, and you can use the − and + buttons next to them to adjust the value.
Filtering by Vehicle
The Vehicles column header is an interactive dropdown. Click it to filter the table and show only maintenance records for a specific vehicle. Each vehicle in the list shows its name and secondary label (e.g., license plate) underneath for easy identification.
Select All Vehicles to clear the filter and show all records.
The active vehicle filter is preserved when you search or navigate between pages. When the filter is active and you click Add Maintenance, the vehicle will be pre-selected in the form.
Searching for Maintenance
Use the search field to find maintenance records. The search works across name, type, sync status, and vehicle name. Results update as you type.
The search works together with the vehicle filter — you can search within the already-filtered results.
Customizing Columns
- Click the Columns button above the table.
- Check or uncheck columns to show or hide them.
Adding a Maintenance Record
- Click the Add Maintenance button.
- Fill in the maintenance details:
Form Fields
- Name (Required): Describe the maintenance task (e.g., "Oil Change", "Brake Inspection")
- Type (Required): Select what to track from 45 available types
- Start (Required): The reading at which the first service is due. The hint underneath shows the expected unit.
- Period (Required): How often the service repeats after that, in the same unit
- Vehicles (Optional): Select one or more vehicles this maintenance applies to
- Click Create Maintenance.
If a required field is missing, an error appears under it. The error disappears as soon as you correct that field.
Using the Current Value
Next to the Vehicles field there is a Current value button. It reads the vehicle's latest reading from the tracking device and fills it into Start, so you don't have to look it up or convert units yourself.
- Choose the Type.
- Select exactly one vehicle.
- Click Current value.
Things to know:
- The button only appears for types that keep growing: the distance and odometer types, Hours, Engine Hours, Driving Time, Fuel Used, and the date types.
- It is disabled when no vehicle or more than one vehicle is selected — hover over it to see why.
- Clicking it first clears Start, then fills in the new reading.
- If the vehicle's tracker doesn't report the selected value (for example, OBD Odometer on a tracker without OBD), you'll see a message and Start stays empty.
- For date types, the hint under Start shows the filled-in timestamp as a readable date.
The current reading is usually where you'd start counting from. To schedule the first service further ahead, add the distance or time to it — e.g., add 10,000,000 (10,000 km) to the current distance.
Assigning Several Vehicles
You can attach the same maintenance record to as many vehicles as you like — useful when a whole group of buses follows the same service plan.
Each vehicle is tracked separately against its own reading. With Start = 50,000 km, a bus already at 62,000 km and a bus at 20,000 km will each be alerted when that bus reaches its own service point.
Because of this, group vehicles with similar readings together. If your vehicles are at very different mileages, create a separate record for each instead.
To change the list later, edit the record and add or remove vehicles — removed vehicles stop being tracked by it.
Example Maintenance Records
- Oil Change: Type = Total Distance, Start = 45,000,000 (45,000 km), Period = 5,000,000 (5,000 km)
- Air Filter: Type = Total Distance, Start = 40,000,000 (40,000 km), Period = 20,000,000 (20,000 km)
- Engine Service: Type = Engine Hours, Start = 3,600,000,000 (1,000 h), Period = 1,800,000,000 (500 h)
- Annual Inspection: Type = Server Time, Start = current value, Period = 31,536,000,000 (365 days)
Editing a Maintenance Record
- Find the maintenance record in the table.
- Click the row, or click the actions menu (three dots) in that row and select Edit.
- Update the details as needed.
- Click Update Maintenance.
Tip: You don't need to edit anything after a service is carried out — the schedule repeats by itself. Only change Start if you want to move the whole schedule to different readings.
Deleting a Maintenance Record
- Find the maintenance record in the table.
- Click the actions menu (three dots) in that row, or right-click the row.
- Select Delete.
- Confirm the deletion.
Exporting Maintenance Records
Click the Export button above the table and choose:
- Export: Downloads all maintenance records matching the current search and vehicle filter as an Excel spreadsheet.
- Print: Opens a print-ready view of the data.
Exports always include all matching records — not just the current page. Start and Period are exported in the same readable units as the table.
Understanding Sync Status
Maintenance records sync with the NexaBus tracking server in real-time:
- Syncing: Spinning icon indicates sync in progress (yellow)
- Synced: Check icon confirms successful synchronization (green)
- Failed: Error icon indicates sync failed - click to retry (red)
Sync status updates automatically without refreshing the page.
Retry Sync
If a maintenance record shows "Failed" status:
- Click the sync status button to retry
The record will attempt to sync again with the tracking server.
Pagination
The table displays 10 maintenance records per page. Use the pagination controls at the bottom to navigate:
- First and Last page buttons
- Previous and Next page buttons
- Current page indicator showing "Showing X to Y of Z"
Navigating from Vehicles
You can open the Maintenance page pre-filtered for a specific vehicle directly from the Vehicles table:
- Go to the Vehicles page.
- Click the actions menu (three dots) on any vehicle row.
- Select Maintenance.
This takes you to the Maintenance page with that vehicle already selected in the column filter, and the add form will also pre-select that vehicle when you click Add Maintenance.
Permissions
You need the appropriate permissions to add, edit, or delete maintenance records:
- Create: Requires maintenance:create permission
- Edit: Requires maintenance:update permission
- Delete: Requires maintenance:delete permission
Without a permission, the matching button or menu item is shown but disabled, and clicking a row does not open the edit form. Contact your administrator to request access.