Compare
MOS4 vs Geotab & CalAmp
Closed telematics devices run vendor firmware and route data through a vendor cloud. MOS4 puts customer-owned code on the device, delivers data over a standard MQTT path to your cloud ingress, and gives you 12 vehicle protocols in a declarative JSON stack.
Cloud topology
End-to-end data path.
The recommended cloud path from a MOS4 device to your cloud ingress: micro service on device → mos-communication-gateway → MD21 optimised leg → cloud-connect → MQTT forwarding micro service → your cloud ingress over standard MQTT. The MD21 leg handles multiplexing, piggyback, compression, and ASN.1-based encoding — bandwidth optimisation that is invisible to your application layer and material on metered cellular links.
Customer micro service on device sends data through mos-communication-gateway over an MD21-optimised leg to Munic cloud-connect, which forwards over MQTT to the customer cloud ingress.
flowchart LR
subgraph Dev["On device"]
micro service[Customer micro service] --> GW[mos-communication-gateway]
end
GW -->|MD21 optimised leg| CC[cloud-connect]
CC -->|MQTT forward micro service| CI[Customer cloud ingress]
subgraph CC["Munic cloud-connect"]
MQ[mqtt-fwd micro service]
end Side-by-side
Capability comparison.
Source — Geotab from geotab.com; CalAmp from calamp.com; MOS4 from /architecture.
Vehicle protocols
16 protocols in a declarative stack.
| Protocol | Standard | MOS4 support |
|---|---|---|
| CAN | ISO 11898 | Native, declarative JSON stack |
| CAN-FD | ISO 11898-1:2015 | Native |
| DoIP | ISO 13400 | Native |
| UDS | ISO 14229 | Native, DTC read + clear |
| J1939 | SAE J1939 | Native |
| ISOBUS | ISO 11783 | Native (acquisition) |
| J1587 / J1708 | SAE J1587 | Native |
| J1850 VPW/PWM | SAE J1850 | Native |
| TP 2.0 | VAG TP 2.0 | Native |
| GMLAN | GM LAN | Native |
| CANopen | CiA 301 | Native |
| Modbus | Modbus RTU/TCP | Native (RTU production) |
Stack definitions are JSON DSL data files validated at LoadStack time. Protocol changes are file edits, not firmware releases.
FAQ
The questions we hear most.
-
Can MOS4 read the same telemetry as Geotab or CalAmp?
Yes — and more. obdstacks-v2 covers OBD-II plus the manufacturer-private PIDs and DTCs that closed devices typically gate. DTC reading and clearing are available across the supported protocol stack. Anything readable on the bus is readable from a MOS4 component.
-
Where does my data go?
Your data goes where you configure it. The cloud path is: micro service on device → mos-communication-gateway → MD21 → cloud-connect → MQTT forwarding micro service → your cloud ingress over standard MQTT. The MD21 leg handles multiplexing, piggyback, compression, and ASN.1-based encoding — bandwidth optimisation that is invisible to your application but material on metered cellular links.
-
Can I write automation logic without Rust?
Yes. The MOS Event Processor (MEP) evaluates declarative YAML policies — Trigger, Condition, Action — against device state and vehicle signals without any Rust or compiled code. Rules hot-reload without a firmware flash. Any container language also reaches any component via the MQTT bridge: a Python container speaks MQTT, which proxies through the RPC bridge to any obdstacks-v2 service call.
-
Can I reuse existing diagnostic tooling?
Yes. obdstacks-v2 implements the SAE J2534 04.04 passthrough API over JSON/Protobuf. Existing PC-based OEM diagnostic scan tools and ECU flashers can reach the vehicle bus through the same embedded gateway that handles continuous telematics.
-
How does OTA work?
mos-update handles download, SHA-256 verify, Ed25519 validate, delta apply, A/B partition commit, and automatic rollback via bootcount without operator intervention on failure. Retry and reboot limits persist across power cycles. Per-programme automation hooks available on request.
-
When is a closed SaaS device still the right choice?
When fleet operations need a turnkey OBD-II and GPS feed with zero engineering involvement. MOS4 is the right answer when the programme needs custom on-device logic, additional vehicle protocols, data sovereignty, or on-device AI inference.
Your code, your data path, your servers.
A 30-minute call with engineering. We will size the device and the cloud path for your programme.