Bringing Your Scooter Online
A SIM card unlocks remote control, online maps, and over-the-air updates. Here's the full path: hardware, modem config, OTA settings.
Optional, not required
Librescoot runs fine without a SIM. See Works Fully Offline for what's available with no connectivity. Everything below is for adding cellular on top.
1. Install the SIM card
The 4G modem on the MDB needs a Mini-SIM (2FF) in a soldered SIM holder. Stock unu Scooter Pros ship without the holder populated, so on most scooters this is a soldering job.
- Open the footwell, disconnect all batteries (CB and AUX), and remove the MDB. The full procedure is in the installation guide.
- Open the MDB case (Torx T10) and locate the SIM holder footprint next to the SIM7100E modem.
- Solder a Mini-SIM holder onto the pads. Any standard 6-pin push-push or hinged holder for 2FF cards works.
- Insert your SIM, close the case, reinstall the MDB, reconnect batteries (AUX first, then CB, then main).
Use a data-only or M2M SIM if you can — voice/SMS are not used. Mini-SIM (2FF) is the form factor; cut down a Micro/Nano SIM only if you have to.
Disconnect all batteries before opening the MDB
Same drill as installation: pull the main batteries, disconnect the CB, then disconnect the AUX. Reverse order on reassembly.
2. Set the APN
The modem needs an APN for your provider. SSH into the scooter and set it via lsc:
lsc set cellular.apn internet
Replace internet with your provider's APN. Common ones in Germany:
internet— Telefónica o2 (all current tariffs), Telekom (incl. Congstar contract)internet.telekom— Congstar prepaidweb.vodafone.de— Vodafone (incl. CallYa prepaid)
Your provider's onboarding email or website lists it.
APN authentication (Congstar prepaid, some MVNOs)
Most German carriers don't require APN authentication. A few do — notably Congstar prepaid, which needs username congstar / password cs with PAP auth:
lsc set \ cellular.apn internet.telekom \ cellular.username congstar \ cellular.password cs \ cellular.auth pap
cellular.auth takes none (default), pap, or chap. If you don't know which your provider uses, try pap first — it's by far the most common.
How it takes effect
modem-service watches these settings and reconciles them into both NetworkManager's GSM profile (data bearer) and the modem's stored LTE attach context (cid=1). After a successful apply it briefly deregisters and re-registers the modem with the carrier so the new APN takes effect immediately, rather than waiting for the next reboot. The whole sequence usually completes within 30 seconds; you can watch it with:
redis-cli HGET modem apn-action
Values are applied (just written), ok (already correct), iccid-changed-cleared (SIM swap detected, see below), or error.
SIM swap behavior
If you swap the SIM card with the scooter running, modem-service notices the ICCID changed and clears the APN settings inside NetworkManager and the modem. This prevents an old carrier's APN from being pushed to the new SIM. After a swap, set cellular.apn again (and the credentials, if any) for the new SIM — your lsc set commands above are the trigger to re-arm reconciliation.
3. Set the SIM PIN (if required)
If your SIM has a PIN lock, store the PIN so the modem can unlock it on boot:
lsc set cellular.sim-pin 1234
Skip this step if your SIM is not PIN-locked. Setting an empty value leaves the SIM as-is. The PIN is stored in the local Redis settings hash and is not transmitted off-board.
Verify the modem comes up with:
lsc status
4. Configure OTA updates
Once the scooter is online, you'll want over-the-air updates. There are three settings each for MDB and DBC, plus one for orchestration.
Channel
stable for production, testing for early access, nightly for development builds. Use the shortcut to set both at once:
lsc ota channel stable
Method
delta downloads only the changed blocks (small, fast). full downloads the entire image. Delta is the default and what you want on a metered SIM.
lsc set updates.mdb.method delta updates.dbc.method delta
Check interval
How often the scooter polls for new releases. Go duration string — 24h for daily, 6h for the default, 0 to disable auto-checks. Note that 1d is not a valid Go duration; use 24h.
lsc set updates.mdb.check-interval 24h updates.dbc.check-interval 24h
MDB orchestrates DBC
The DBC (dashboard) is powered off most of the time, so it can't check for updates on its own. With orchestration on, the MDB powers the DBC on when a newer DBC release is available and triggers an update check there.
lsc set updates.mdb.orchestrate-dbc true
Recommended defaults
For most riders:
lsc ota channel stable lsc set \ updates.mdb.method delta \ updates.dbc.method delta \ updates.mdb.check-interval 24h \ updates.dbc.check-interval 24h \ updates.mdb.orchestrate-dbc true
5. Verify it works
Check the modem and OTA status:
lsc status # cellular registration, signal, IP lsc ota status # current OTA config and last check time lsc ota check # force an update check now
If lsc ota check reports the current channel and a last-check timestamp, the scooter is talking to the release server.
Cloud uplink (optional)
OTA updates work as soon as the scooter has internet — no cloud account needed. If you also want to see status, location, and battery from a phone or browser, register the scooter with a cloud:
- Sunshine Cloud — the community-run uplink. Free for personal use.
- Self-host with uplink-server.