The problem with custom protocols and SDKs is vendor dependence. When you go out of business or pivot, what happens to my product? I was already burned once by Google cloud IoT...