Google wants people to use its Cloud Platform for connecting and managing IoT devices through IoT Core and use other GCP components like BigQuery to analyze data produced by those devices. While these products are fantastic, they also have some real world challenges. IoT Core provides a managed service for connecting IoT devices. It talks with both HTTP and MQTT protocols and features one-click integration with Cloud PubSub easing most of the infrastructure tasks. However there are some limitations: You cannot use any random MQTT topic to send/receive messages as you would expect on a custom MQTT bridge. There are special topic formats to send messages and also to receive commands. IoT Core uses Public-Private Key cryptography to secure devices. All IoT devices must first authenticate using the Public Key in a JWT token and then start sending and receiving messages. While these may seem like reasonable restrictions, one has to keep in mind that hardware vendors are still s
Musings on life and software development