How DIMO Pairing Works
When you connect your car using a DIMO certified Device like the Autopi (for sale now), a process occurs in the background using several smart contracts to establish trust relationships between a user’s wallet, the hardware device, and the vehicle.
This creates an open, verifiable trail of control that is not present in IoT systems today. By leveraging an array of open pieces of infrastructure like Polygon, Streamr, plus wallets like MetaMask & Rainbow, and physical security provided by NXP, we can build a better, more open system - a solid foundation to build apps and services on in the future.
The end state we’re aiming for is the network of relationships pictured below, completely controlled by DIMO users.
The IoT device market is expected to reach 29 billion devices by 2030. You probably already own a variety of these devices and currently login through your email, or a device specific account to manage them. During this time you have probably also noticed that devices from one manufacturer do not usually work very well with devices from other manufacturers.
You’ve also noticed that whenever the manufacturer has a cloud outage, your devices do not work, and they also charge you for access to your own data. And worst of all, the devices that manufacturers decide to deprecate become paperweights.
The DIMO team has spent a significant amount of time building connected vehicle products and services, and believes that sufficient decentralization and user control can create a much better relationship between people and their connected devices — particularly when those devices are making increasingly important decisions about how people consume energy, and drive around at high speeds on public roads.
We want to live in a world where people can trust machines, with the ability to own device identity and access to their data is the first step.
Today, all users need a web3 wallet like Metamask or Rainbow for the actions required to pair their device <> vehicle <> wallet. Future updates will provide more options like a native wallet in the DIMO mobile app, and pre-configured devices controlled by a fleet manager account.
This wallet is how you establish ownership of and control the vehicle, device, and any rewards you might earn. In the future, it will allow you to seamlessly move between different apps that might want to use your data or vehicle ID - just log in and your data will populate.
Connecting a wallet can be done by creating your account with the wallet (via WalletConnect) or linking a wallet to your account after creating an account with email.
Wallet <> Device
DIMO Devices come with a secure element, basically a fancy chip that stores a crypto wallet. This means your device has its own wallet already installed!
In the pairing process in DIMO Mobile, what you are actually doing is claiming the digital twin of the physical device. You do this by proving you have physical possession of the device, which you do by connecting to it over bluetooth and asking the device’s wallet to sign a message.
When the DIMO smart contract sees this message, the device’s signature, and your signature, it will transfer the digital twin of the device (which represents ownership) to YOUR wallet. The effect is like a marriage license, with both parties signing the message together. Here’s an example transaction on Polygon.
Now that your wallet “owns” the device, you’ll show that your wallet and your vehicle are connected.
Wallet <> Vehicle
When you connect your phone to the device over bluetooth, in addition to the steps above, you’re also prompting the device to generate this fingerprint from the car and sign it to verify authenticity. The fingerprint is checked against our database to validate the vehicle.
After the fingerprint is generated and checked, a user uses their wallet to sign a minting tx that creates the vehicle ID on-chain owned by the user’s wallet.
By now a user has linked:
User wallet <> Device
User wallet <> Vehicle
The last step is to finalize the link between Device <> Vehicle.
Here’s an example of this type of transaction.
Device <> Vehicle
To be more clear about the links above, the user’s wallet now owns both unique digital twins: the device’s and the car’s. Cars are nice because they already have identities provided to them by the manufacturer — represented by a VIN or Vehicle Identification Number.
DIMO has built a “Digital DMV” that keeps track of every car that we can find in the world, and makes sure that users are able to pair with and own each vehicle only once. As more cars are produced, they’re checked for compatibility and added to the list — we’re doing that constantly.
Next, a user signs a transaction that links these together, and the process is complete. It’s also reversible, so if you sign another message, you can unlink this device and vehicle and move your device to another car. Just know that you can’t send data from more than one vehicle at a time, so you can’t earn rewards or use the data from multiple cars. One device can only be linked with one car, always.
See for yourself how easy it is to get started today
Want to Get Started?
Check out the shop, and use the discount code TwentyBucks to get $20 OFF DIMO Hardware.
Alex Rawitz has spent 10 years in and around startups in the crypto and IoT world, and is always looking to put these technologies to work making people’s lives better. Prior to DIMO, Alex worked with exchanges, defi protocols, and fintechs at Chainalysis. Before that he worked in sales at Servato, an IoT company in the telecom space. He started his career at a startup accelerator, The Idea Village, in New Orleans.