The Good Stuff
We love to do new stuff. Quirky stuff. Weird stuff, and also stuff that people want. But while our engineers are pretty kick-ass people, they also have a sense of pride in what they do. In practice this means we actually have a few bells and whistles we need supported on the actual product to make it into a decent experience for you guys.
Device types we already support
For existing categories (such as smart charging), this would mean we need a car that supports things like start and stop charging commands (duh ..), GPS location, a bunch of info on make model, odometer state etc etc ..
Entirely new things
For new categories, it's actually more complex since we first need to support the actual type of device. Examples here are door locks, smart charging of robocleaners, or anything else. In addition to supporting the device type, we also need to figure out something really amazing to do with that specific type of device in the app to see if it would actually add value to you as a user.
The less then ideal stuff
But... and here’s the kicker.. While we really want to figure out how to integrate certain devices, sometimes we can’t. This usually boils down to the fact that the product or integration we’re aiming for is falling short in terms of either:
Capabilities, for example a car that doesn’t support all the functions we need (GPS is a pretty common one historically)
Lack of integration capabilities, common reasons are there is either no API at all, there is an API, but its only locally available, or there is an API which is actually in theory possibly for us to do, but its outright terrible to work with. And yes, you’re right. Sometimes we even do those, but based on learnings it’d have to be a pretty darn cool power-up for us to go down that route.