Smartwatches are largely seen as smartphone companions, extending the use of the phone. I think this is why sales have been lukewarm in all but one area: fitness. I think that if a smartwatch provided different functionality to the phone, or was more effective in providing a service, then they would become more popular.
I wanted to demonstrate that is was possible to control a home with a smartwatch independently of a smartphone so I created a smarthome controller system using a Raspberry Pi as a gateway Hub. I then created smartwatch, smartphone and web app’s to control Phidgets sensors and actuators.
I used MQTT and websockets to establish a publish-subscribe system allowing push messages to and from the sensors/ actuators. The hub runs a Mosquitto MQTT broker for control on the local network and a CloudMQTT broker for use when the user is out and about. I also used JmDNS for service discovery allowing the devices to discover each other.
I think I achieved this allowing users to control actuators and receive sensor information directly to/from the watch. A watch is always on you, unlike a phone, and so I believe the watch is a more convenient controller. You don’t put your watch down, you don’t have to find it, you don’t have to unlock and connect to the internet before you can use it.
The only area the phone is required is registration as I was unable to implement an mDNS solution on the Samsung Gear which runs Tizen. However, I produced an Android phone app which uses JmDNS and so smartwatches running Android Wear will be able to register directly.
Future work includes connecting wireless sensors and actuators, allowing their automatic discovery through mDNS and an iOS app.
Web App/Service: https://github.com/samorgill/watchai_web_service.git
Tizen Smartwatch App: https://github.com/samorgill/watchai_tizen.git
Android Smartphone App: https://github.com/samorgill/watchai_android.git
Hub (Eclipse): https://github.com/samorgill/watchai_pi.git
Hub (Raspberry Pi): https://github.com/samorgill/watchai_hub_rpi.git
Checkout my playlist of demonstrations of the systems various functions: