Settings Reference
This reference lists the settings available in Librescoot 1.3.x. For everyday changes, use the dashboard or the settings controls described in the Handbook. Settings can also be inspected or changed with lsc. The markers identify settings added or changed in a patch release.
Settings marked user-visible are listed below. All other settings are in the collapsed Advanced settings section. Service Mode temporarily overrides several keys and stays active across reboots.
Settings
alarm-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Alarm Durationalarm.duration | Duration in seconds for alarm sound | 30 | 0–300 seconds |
Alarmalarm.enabled | Enable or disable the alarm system | true | bool |
Alarm Hornalarm.honk | Enable horn during alarm trigger | false | bool |
battery-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Dual Battery Modescooter.dual-battery | Enable dual battery mode (battery 1 active instead of idle) | false | bool |
dbc-backlight
| Setting | Description | Default | Values / range |
|---|---|---|---|
Backlightdashboard.backlight-mode | Display backlight level (auto = ambient light sensor) | "auto" | Auto (auto), Low (low), Medium (medium), High (high) |
scootui
| Setting | Description | Default | Values / range |
|---|---|---|---|
Avoid Cobblestonedashboard.avoid-cobblestone | How hard navigation works to keep off cobblestone and sett. The level is a detour budget: low spends up to as much extra travel time as riding the rough stretch would take, medium four times that, high eight times. Needs routing tiles that classify cobbles; older tiles ignore it. Not applied when the route preference is shortest. | "medium" | Off (off), Low (low), Medium (medium), High (high) |
Battery Displaydashboard.battery-display-mode | Battery display mode | "percentage" | Percentage (percentage), Range (range), Icons Only (icon) |
Blinker Styledashboard.blinker-style | Blinker indicator style | "icon" | Icon (icon), Overlay (overlay) |
Languagedashboard.language | Dashboard UI language | "en" | string |
North Orienteddashboard.map.north-oriented | In 2D view, keep the map oriented to north instead of following the vehicle heading | false | bool |
Traffic Overlaydashboard.map.traffic-overlay | Show live traffic overlay on the map (requires online tiles) | false | bool |
Map Typedashboard.map.type | Map tile source | "offline" | Online (online), Offline (offline) |
Map Viewdashboard.map.view-mode | Map camera view: 3D (tilted perspective) or 2D (flat top-down) | "3d" | 3D (3d), 2D (2d) |
Auto-download Mapsdashboard.maps.auto-download | Automatically download map updates when available (uses mobile data) | false | bool |
Map Update Checkdashboard.maps.check-for-updates | Automatically check for map tile updates (weekly when online) | false | bool |
Milestone Celebrationsdashboard.milestone-celebrations | Celebrate odometer milestones (every 500 km) and special-number easter eggs with on-screen confetti and a banner when parking. Disable to turn all milestone celebrations off. | false | bool |
Default Screendashboard.mode | Default screen mode | "speedometer" | Speedometer (speedometer), Navigation (navigation), Debug (debug) |
Power Displaydashboard.power-display-mode | Power display unit | "kw" | Kilowatts (kw), Amps (amps) |
Routedashboard.route-preference | How navigation picks a route. Fastest uses travel time, shortest uses raw distance and ignores all other preferences including cobblestone avoidance. | "fastest" | Fastest (fastest), Shortest (shortest) |
12V Batterydashboard.show-aux-battery | 12V battery charge icon visibility in the status bar (warning = only when SoC <= 50%) | "warning" | Always (always), When Low (warning), Never (never) |
Bluetooth Indicatordashboard.show-bluetooth | Bluetooth indicator visibility | "active-or-error" | Always (always), Active or Error (active-or-error), Error Only (error), Never (never) |
CBB Batterydashboard.show-cb-battery | CBB charge icon visibility in the status bar (warning = only when SoC <= 50%) | "warning" | Always (always), When Low (warning), Never (never) |
Clockdashboard.show-clock | Clock format in the status bar (always = time only, kept for compatibility) | "always" | Time (always), Date + Time (date-time), Alternating (alternate), Never (never) |
Cloud Indicatordashboard.show-cloud | Cloud indicator visibility | "active-or-error" | Always (always), Active or Error (active-or-error), Error Only (error), Never (never) |
GPS Indicatordashboard.show-gps | GPS indicator visibility | "error" | Always (always), Active or Error (active-or-error), Error Only (error), Never (never) |
Internet Indicatordashboard.show-internet | Internet indicator visibility | "active-or-error" | Always (always), Active or Error (active-or-error), Error Only (error), Never (never) |
Road Namedashboard.show-road-name | Road name pill visibility on the cluster and map (map = map screen only, navigating = only while a route is active) | "always" | Always (always), Map Only (map), When Navigating (navigating), Never (never) |
Speed Limitdashboard.show-speed-limit | Speed limit sign visibility on the cluster and map (map = map screen only, navigating = only while a route is active, over-limit = only while exceeding the posted limit) | "always" | Always (always), Map Only (map), When Navigating (navigating), Over Limit (over-limit), Never (never) |
Temperaturedashboard.show-temperature | Ambient temperature widget visibility (warning = only when below 10 °C) | "warning" | Always (always), Warning Only (warning), Never (never) |
Themedashboard.theme | UI theme | "auto" | Light (light), Dark (dark), Auto (auto) |
update-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
DBC Release Channelupdates.dbc.channel | Release channel override for DBC. Transient: lives in Redis only; on reboot update-service falls back to the channel inferred from the installed image. | not set | Stable (stable), Testing (testing), Nightly (nightly), reset on reboot |
DBC Update Check Intervalupdates.dbc.check-interval | Time between update checks for DBC (0 to disable) | "6h" | 0–any |
DBC Update Methodupdates.dbc.method | Update method for DBC | "delta" | Delta (delta), Full (full) |
MDB Release Channelupdates.mdb.channel | Release channel override for MDB. Transient: lives in Redis only; on reboot update-service falls back to the channel inferred from the installed image. | not set | Stable (stable), Testing (testing), Nightly (nightly), reset on reboot |
MDB Update Check Intervalupdates.mdb.check-interval | Time between update checks for MDB (0 to disable) | "6h" | 0–any |
MDB Update Methodupdates.mdb.method | Update method for MDB | "delta" | Delta (delta), Full (full) |
vehicle-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
DBC Blinker LEDscooter.dbc-blinker-led | Blink DBC boot LED in sync with blinkers (green for single, red for hazards) | "disabled" | Enabled (enabled), Disabled (disabled) |
Horn While Seatbox Openscooter.horn-when-seatbox-open | Allow the manual horn button to sound while the seatbox is open and the scooter is unlocked. Disabled by default so the open seat lid resting on the button does not honk. | false | bool |
Advanced settings
Show advanced settings (62)
These settings are intended for setup, diagnostics, or service configuration.
alarm-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Hair Triggeralarm.hairtrigger | Enable hair trigger mode (immediate short alarm on first motion) | false | bool |
Hair Trigger Durationalarm.hairtrigger-duration | Duration in seconds for hair trigger alarm | 3 | 1–30 seconds |
L1 Cooldown Durationalarm.l1-cooldown | Level 1 cooldown duration in seconds | 15 | 1–60 seconds |
Seatbox Alarm Triggeralarm.seatbox-trigger | Trigger alarm on unauthorized seatbox opening | true | bool |
Buttons Alarm Triggeralarm.trigger.buttons | Enable brake/horn/seatbox button presses as an alarm trigger source | true | bool |
Handlebar Alarm Triggeralarm.trigger.handlebar | Enable handlebar lock-sensor / position as an alarm trigger source | false | bool |
Motion Alarm Triggeralarm.trigger.motion | Enable BMX055 motion as an alarm trigger source | true | bool |
battery-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Aux-Low Keep-Active Enter Thresholdscooter.battery-aux-low-keep-active-enter-mv | Aux battery voltage (mV) below which the keep-active-on-seatbox-open override engages automatically | 11500 | 0–any mV |
Aux-Low Keep-Active Exit Thresholdscooter.battery-aux-low-keep-active-exit-mv | Aux battery voltage (mV) at or above which the aux-low keep-active override disengages (must be > enter threshold) | 12000 | 0–any mV |
Keep Battery Active On Seatbox Openscooter.battery-keep-active-on-seatbox-open | Keep a running battery active when the seatbox opens instead of deactivating it | false | bool |
Max Battery Voltage Deltascooter.max-voltage-delta | Maximum voltage delta between batteries for dual battery activation (0 to disable) | 1000 | 0–any mV |
dbc-dispatcher
| Setting | Description | Default | Values / range |
|---|---|---|---|
Dashboard Appdashboard.app | Display application to launch on DBC boot | "scootui-qt" | ScootUI (Qt) (scootui-qt), ScootUI (TUI) (scootui-tui) |
ecu-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Boost Modeengine-ecu.boost | Enable motor boost mode | false | bool |
KERSengine-ecu.kers | Kinetic energy recovery system (KERS) | "enabled" | Enabled (enabled), Disabled (disabled) |
KERS Powerengine-ecu.kers-power | KERS regeneration current | not set | 0–65535 mA |
KERS Power (Dual Battery)engine-ecu.kers-power-dual | KERS regeneration current when both batteries are active | not set | 0–65535 mA |
modem-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Cellular APNcellular.apn | LTE attach + data bearer APN. Empty = use SIM operator defaults. | "" | string |
Cellular APN authcellular.auth | APN authentication type for data bearer. One of: none, pap, chap. | "none" | string |
Cellular APN passwordcellular.password | APN password (PAP/CHAP authentication). Empty = none. | "" | string |
SIM PINcellular.sim-pin | PIN for SIM unlock and lock-enable (4-8 digits, empty = leave SIM as-is) | "" | string |
Cellular APN usernamecellular.username | APN username (PAP/CHAP authentication). Empty = none. | "" | string |
pm-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Default Power Statepm.default-state | Default power target state when idle. 'run' keeps the system awake, 'suspend' triggers auto-suspend after the pre-suspend delay. | "suspend" | Run (stay awake) (run), Suspend (auto-sleep) (suspend) |
Hibernation Timerpm.hibernation-timer | Hibernation timeout in seconds (0=disabled). Values between 1 and 299 are clamped up to the 300 second floor. | 259200 | 0–any seconds |
Scheduled Hibernation Cronpm.scheduled-hibernate-cron | 5-field cron expression (minute hour day-of-month month day-of-week) defining when scheduled hibernation fires. Empty disables. | "" | string |
Scheduled Hibernation Durationpm.scheduled-hibernate-duration | How long the scheduled hibernation should last. The system wakes at fire-time + this duration (wall-clock target wake time). | "0s" | 0–any |
Scheduled Hibernationpm.scheduled-hibernate-enabled | Enable scheduled hibernation defined by pm.scheduled-hibernate-cron and pm.scheduled-hibernate-duration | false | bool |
Suspend While Onlinepm.suspend-when-online | Allow a locked scooter with no main battery present to suspend while it still has connectivity. When false, it stays awake so cloud commands can still reach it. A main battery present or active in either slot blocks suspend regardless of this setting. | true | bool |
Wake Timer Ack Timeoutpm.wake-timer-ack-timeout | How long pm-service waits for the nRF52 to confirm a wake-timer was armed before aborting hibernation | "10s" | 0–any |
Wake Timer Maxpm.wake-timer-max-seconds | Safety cap on the wake-timer duration sent to the nRF52. Requests above this value are clamped. | 604800 | 60–604800 seconds |
scootui
| Setting | Description | Default | Values / range |
|---|---|---|---|
Hop-on Combodashboard.hop-on-combo | User-defined hop-on / hop-off unlock combo as pipe-delimited tokens (e.g. 'LB|RB|HORN'). Empty = no combo defined. Managed by the dashboard learning UI. | "" | string |
Map Render Modedashboard.map.render-mode | Map rendering mode | "vector" | Vector (vector), Raster (raster) |
Maps Availabledashboard.maps-available | Whether offline map tiles are available (system-managed) | false | read-only |
Navigation Availabledashboard.navigation-available | Whether full navigation is available (maps + routing engine, system-managed) | false | read-only |
Recent Destination Labeldashboard.recent-destinations.0.label | Recent destination label | not set | string |
Recent Destination Latitudedashboard.recent-destinations.0.latitude | Latitude | not set | -90–90 |
Recent Destination Longitudedashboard.recent-destinations.0.longitude | Longitude | not set | -180–180 |
Recent Destination Used Atdashboard.recent-destinations.0.used-at | Last used timestamp | not set | string |
Saved Location Created Atdashboard.saved-locations.0.created-at | Creation timestamp | not set | string |
Saved Location Labeldashboard.saved-locations.0.label | Location label | not set | string |
Saved Location Last Useddashboard.saved-locations.0.last-used-at | Last used timestamp | not set | string |
Saved Location Latitudedashboard.saved-locations.0.latitude | Latitude | not set | -90–90 |
Saved Location Longitudedashboard.saved-locations.0.longitude | Longitude | not set | -180–180 |
Show Raw Speeddashboard.show-raw-speed | Show raw uncorrected speed from ECU | false | bool |
Speedometer Scaledashboard.speedometer.max-speed | Full-scale value of the speedometer arc in km/h. The arc keeps its size; the tick labels and the range it covers follow this value. | 60 | 20–200 km/h |
Speedometer Overspeeddashboard.speedometer.overspeed | Speed in km/h above which the speedometer fill pulses purple and pink. | 60 | 1–200 km/h |
Speedometer Warning Speeddashboard.speedometer.warn-speed | Speed in km/h from which the speedometer fill shifts from blue towards purple. Must be below dashboard.speedometer.overspeed. | 55 | 1–200 km/h |
Valhalla URLdashboard.valhalla-url | Valhalla routing service endpoint | "http://localhost:8002/" | url |
settings-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Service Mode Activedashboard.service-mode-active | Runtime status: service mode is active. Published by settings-service; not user-settable. | false | read-only, reset on reboot |
Log Server URLscooter.logserver | systemd-journal-remote URL to ship journald entries to (e.g. http://logs.example:19532). Unset or empty disables log shipping. | not set | url |
update-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
DBC Update Dry Runupdates.dbc.dry-run | Enable dry-run mode for DBC updates (no reboot) | false | bool |
DBC Last Update Checkupdates.dbc.last-check-time | Last time DBC checked for updates (ISO8601 timestamp) | not set | string |
DBC Releases URLupdates.dbc.releases-url | Release index base URL for DBC | "https://downloads.librescoot.org/releases" | url |
MDB Update Dry Runupdates.mdb.dry-run | Enable dry-run mode for MDB updates (no reboot) | false | bool |
MDB Last Update Checkupdates.mdb.last-check-time | Last time MDB checked for updates (ISO8601 timestamp) | not set | string |
Orchestrate DBC Updatesupdates.mdb.orchestrate-dbc | Automatically power on DBC and trigger update checks when a newer DBC release is available | true | bool |
MDB Releases URLupdates.mdb.releases-url | Release index base URL for MDB | "https://downloads.librescoot.org/releases" | url |
vehicle-service
| Setting | Description | Default | Values / range |
|---|---|---|---|
Auto Standby Timeoutscooter.auto-standby-seconds | Auto-lock timeout when parked in seconds (0=disabled) | 900 | 0–any seconds |
Brake Hibernationscooter.brake-hibernation | Enable brake lever hibernation | "enabled" | Enabled (enabled), Disabled (disabled) |
Hornscooter.enable-horn | Horn enable mode | "true" | Always (true), Disabled (false), In Drive Only (in-drive) |
Handlebar Unlockedscooter.handlebar-unlocked | When true, the handlebar lock latch is released and auto re-lock is suppressed. Set by the service-mode overlay; transient so it never persists. | false | reset on reboot |
Lock on Bluetooth disconnectscooter.lock-on-bluetooth-disconnect-seconds | Grace period in seconds before locking the scooter after the connected phone disconnects while parked (0=disabled) | 0 | 0–any seconds |
USB Link Policyscooter.usb0-policy | MDB to DBC USB link behavior. auto brings usb0 down when the scooter is in standby (default). always-on keeps usb0 up regardless of dashboard state for installer/diag reachability — transient, so the override lasts only until the next reboot. | "auto" | Always On (always-on), Auto (track dashboard) (auto), reset on reboot |