smartphone at the office --> cloud --> thermostat home
The problem is that the engineers made the command flow with the cloud as the only method of communication instead of enabling a secondary communication that lets 2 wifi devices talk directly. Obviously, direct wifi communication is technically possible since people buy inkjet wifi printers and their wifi laptops print directly to them every day. People would be livid if they couldn't print their paper just because the internet down or the vendor's cloud server had an outage for "maintenance". The data sent from the computer to the printer does not roundtrip up to the cloud and back down to the printer.
Yes, you reminded me of a very good point about local wifi communications:
If 2 devices are on wifi, it's easier if both are configured as clients that talk to a 3rd server (such as cloud). When both act as clients, they don't need to know each other's ip address to communicate.
The other option of configuring one of the wifi devices as a server is more difficult especially for non-techies. Now, you have an extra complication of discovering the ip address of the printer/camera acting as a "server" to receive commands. This requires a weird dance where the server device has to "broadcast" itself and you have the client computers "find" it. For my Canon wifi printer, I had to press and hold down the power button a certain way so the computer could "discover" it. For my wifi camera, I had to go the DOS prompt and enter an obscure ARP command[1]. The difficulty is compounded when the "server" device has no builtin LCD display so you're basically "flying blind" as to what ip address it got from the wifi router's DHCP.
However, the HVAC wall controller has a large LCD display and touchpad so configuring it as a server on local wifi shouldn't be that difficult.
Total bonkers. Silicon Valley only knows how to make web services apparently.
If your IoT device depends on the internet for functionality it really should be able to connect to cell networks, not just wifi. The only problem is the security risks with that, but it doesn't expand the attack surface that much more than having a cloud-connected device as it is.
Some proposals for future 'smart cities' is having CAT-6 LTE (which can be as fast as most home broadband connections) broadcasting everywhere and having all the devices connected to that, so you don't have to depend on your home wifi staying on or being in range.
I agree but in some cases, you end up with such a restrictive product because it's part of a system package.
For example, I recently bought a new Trane air conditioner system and it comes with a fancy system controller.[1] It has wifi so Trane promotes the capability for you to control the temperature remotely from your smartphone. Well, the IoT rub is that it requires the cloud for that capability. When I first heard that explained to me by the installer, I had to have him repeat it twice because it didn't make any sense.
"You mean my iPhone that's on wifi doesn't communicate with this thermostat that's on the same wifi -- directly? You mean the thermostat app on my iPhone has to send the "increase temperature" command out of the house to the mothership cloud, and then round trip back to my thermostat?!? Yes, that's how it works." That's crazy -- If the internet is down, my iPhone can't control the thermostat that's 10 feet away!
Needless to say, I just forego the smartphone remote app and simply walk up to the thermostat and change the settings on the wall.
[1] https://www.trane.com/residential/en/products/thermostats-an...