One of the biggest advantages of webinos is the cross device functionality it provides. The perfect example is interconnecting your car, with your mobile phone and your computer in order to keep track of your trips. This can be easily done using our vehicle hub.
The hub is nothing more than a cool, product-ready application that utilizes webinos platform to provide an integrated experience between your devices, centering its view on the vehicle. In this case, my car.
In order to communicate with the vehicle, webinos has proposed the vehicle API which is a guideline to the car manufacturers on how to expose the CAN bus data via an API. One of our partners has implemented a prototype that exposes these data, but due to the proprietary nature of the CAN bus, the details are not available and even if they were, they would hardly meet the requirements of another brand. So unless you have access to the car prototype, you are almost out of luck.
All cars have an OBD II port that is useful for service info and “debugging”. This port is meant to be used only while the car is parked and only as an interface with specialized hardware. The reason I am giving this disclaimer is to set the context : “if you ever think of doing this yourself, be sure to understand the risks you are running into, or else wait till we get a slicker and safer solution or your car manufacturer implements the vehicle API”. As a matter of fact, it would be great if you could actually request from your car manufacturer to do so.
The disclaimer continues with the following list of risks:
- Most ODB II scanner tools power up from the ODB II port which doesn’t cut off after the car is switched off. This means that you are running the risk of killing your battery should you forget the device on the car.
- The ODB II port was not designed for constant plug-in, plug-out operation. This means that you might break it eventually if you are not extra careful, all the time.
- Some cars have extra air bugs on the feet of the driver to protect in case of collision. This will not work as it was meant to if you have an ODB device there. This is analogous to the codriver placing her feet on top of the airbag. As a matter of fact, the whole passive protection may be jeopardized having a device somewhere next to the pedals. Imagine if the scanner felt off and went behind the brake.
- My list ends with warning about losing your attention while driving. Be sure to keep your attention on the road all the time. I know that the vehicle hub is a cool app, but you should never look at it while driving! If you can’t afford a codriver, record your data and review them later.
Having said all that, webinos provides the IoT API. The IoT API is scalable, loading drivers for the sensors it supports. If you have a sensor, you will have to write your driver or use one of the generic ones we have and webinos will support it. If you think of it, ODB II is yet another device with sensors in the wide context of IoT. It exposes sensors for RPM, speed, torque, engine temperature etc. Although this information is a small subset of the information provided via the vehicle API, it is a starter for debugging your car remotely and providing a remote dashboard. Our vehicle hub comes with this flavor too and we took our car for a test run with it.
The setup is easy. You need webinos with the IoT API and the odb2 driver, an ODB II scanner, a mobile phone for geolocation and a computer to run the vehicle hub. Connecting your computer to the ODB II scanner is a matter of pairing with it via Bluetooth or usb (way more dangerous having a cable right next to your feet while driving). Either way, you will end up with an outgoing COM port (in windows) which you will have to configure in your odb2 driver.
In my case it’s COM3 and I had to do the following configuration in my config.json inside the webinos-driver-obd2 folder.
Note that at the moment of writing this post, the recorder I am using writes logs in a file and is not yet in the published driver. There is the normal Bluetooth driver which will do for live data. The recorder will become available as soon as we finalize the db support we are adding on webinos.
The vehicle hub application will locate the geolocation in your personal zone (your mobile phone) and also the RPM and the rest of the sensors that are exposed by the odb2 driver. If there are multiple sensors available (in the case of having more than one vehicles connected to your personal zone hub), the user will have to select the sensors from the webinos dashboard. Having configured the vehicle auto view, the screen my co driver was looking at was the following.
In theory he could have been anywhere in the world and have the same real time dashboard of me driving, all thanks to the 3G connection of my mobile phone. I wouldn’t even require to have a computer with me and I could connect the ODBII reader in my mobile phone via Bluetooth. In our case though, he didn’t want to miss the excitement of riding in a webinos enabled car.
Those of you that are going to be in ICT 2013 in Vilnius, can have a look on the vehicle hub in our booth (location 5C7). We have recorded a test lap we did this weekend and you can see the playback there, or if you have a car, we could actually try it live as we will be carrying the ODBII connector.