When Tesla’s Model 3 was launched back in April, we were told that there would be a second big announcement later in the year. Following a small delay, this past Wednesday we finally got it:

“We are excited to announce that, as of today, all Tesla vehicles produced in our factory — including Model 3 — will have the hardware needed for full self-driving capability at a safety level substantially greater than that of a human driver.”
The Tesla Team, All Tesla Cars Being Produced Now Have Full Self-Driving Hardware


Admittedly, I greatly admire Elon Musk and fully buy into his vision of creating a better, sustainable future for humans (I highly recommend reading his Master Plan, Part Deuxe, released back in July). Transitioning to Autonomous Vehicles (AV) will save countless lives, lower costs of transport, and greatly reduce our negative environmental impact as we stop using gasoline in favor of all-electric.

So the hype around this announcement is justified as it represents another big step forward towards AVs. Now, every new Tesla car sold will one day become a fully Autonomous Vehicle via a software update.

Hardware isn’t the hard part.

Autonomous Vehicles are part of the Internet of Things. And, as this announcement shows, the hardware necessary to create incredible, world changing smart devices is already here. So what’s holding back the full potential of IoT?

Any complete IoT service needs to successfully integrate hardware, connectivity, and software.

First, sensors (the hardware) collect data from the environment. This could be something as simple as temperature or as complex as video. Data from those sensors will first be processed on-board the car in localized software. And then, that data needs a way of being transmitted to the cloud (the connectivity). This could be via cellular, satellite, WiFi, Bluetooth, or Low-Power Wide-Area Networks (LPWAN), depending on the IoT application.

Once the data reaches the cloud, Tesla’s services must process the data to learn from it. This will eventually help Tesla better construct both the software on their cloud and the software on their cars. And the software is what will really make Tesla’s cars “self driving.” Tesla’s Autopilot service is a system of cloud- and device-based software that all needs a sort of supervised training, and having the hardware already available will enable their cars to, essentially, learn from real drivers while Tesla seeks to improve their software. The software is the most vital — and in this case hardest to get right — component in Tesla’s Autopilot service.

The great challenge of IoT projects is getting the service right. Tesla is fortunate in that they obviously have a high degree of confidence that the set of hardware and sensors they are now installing on their cars will provide the necessary data collection and actuation to finish their Autopilot service. But like so many “IoT inventors,” that basically leaves them with a “thing” and still no service. To build that service, they need data and they need software.

That’s our sweet spot at Leverege: We enable people to begin building their IoT service even if they haven’t yet built a “thing.”

If you want to see how we’re approaching the difficulty of integrating all the components of IoT, check out Yitaek Hwang’s awesome post: Jumpstart IoT — Bringing simulation-driven development to IoT.