We analyzed various cloud based services for IoT including Google IoT, IBM Watson IoT, AWS IoT, Microsoft Azure IoT and Xively IoT. After a thorough evaluation and analysis of the available services, we zeroed in on IBM Watson IoT as best placed to deliver the kind of app functionality the client wanted.

We chose IBM Watson IoT because:

  • It helped us integrate services that enabled the user to monitor water usage and provided real-time data analysis and triggered alerts when the water meter battery was low.
  • The use of this platform allowed us to deliver easy to use features, data security and provide scalable solutions that seamlessly integrated with other devices.


Technostacks has a proven track record of delivering advanced IoT applications as per client requirements. However, each IoT app comes with its own set of challenges as the app needs to be configured in such a way that it can drive connections and integrations between different IoT devices. In this case the key challenges included:

  • Creating an app that had perfect synergy between water meter sensors and the app to deliver accurate water consumption data through water meters
  • Connecting to the cloud server to get only the most precise calculation of the water being used by the building or specific apartment.
  • Ensuring that the app can track consumption information on an hourly basis.
  • Ensuring that the water consumption can be tracked across all sensors placed across all the outlets.
  • Enabling seamless data monitoring from the mobile application.
  • Developing and designing a comprehensive dashboard that enables customers to see their consumption statistics including their highest, average and lowest consumption data.
  • Facilitating and driving a more efficient and systematic water management process.
  • Monitoring safety of the water consumption and detection process.
  • Maintaining transparency of consumption process to ensure error free water consumption detection.

Functionalities in iOS and Android Apps

We delivered a wide collection of functionalities to the app user using our expertise in iOS and Android technologies:

  • Add Building: The user will be asked to pin location by searing for it on the map or can manually add the apartment or building location. The user must add basic details such as apartment number and name of tenant.
  • Map/List View: Apartment or building on the map can be seen in a list view.
  • Add Meter: The user can add meter number and select the water appliance from the available list.
  • Water Usage: Analytical Report (Daily/Monthly/Yearly): The user can select a particular meter and view the consumption of water (in liters) of every water appliance individually or see the overall usage of an apartment by day/month/year. Users can view graphical representation of their water usage as well.
  • Battery Life: The user can monitor the batter life of the water meter sensor; an alert will also be sent to the user if the battery life of the sensor is low.


Developers at Technostacks have comprehensive expertise and skill sets in a variety of platforms, IDEs, programming languages, and SDKs that helps them create apps that offer complex functionality that is easy to use and which delivers immense value to our clients.

  • To drive connectivity between the water meter sensors and the cloud, the device has an ESP8266 WiFi microchip; the micro controller on this chip supports WiFi connectivity and web server requests. The sensor tracks the amount of water that passes through the inlets and periodically sends this data to IBM Watson IoT.
  • In order to facilitate data communication between IBM Watson IoT, our developers used the MQTT messaging protocol. The MQTT protocol enables efficient exchange of real-time data between sensor and mobile devices; the use of this lightweight messaging protocol helps identifying water consumption for each inlet and sending this information to the cloud.
  • The list of the different water meter sensors in a particular building or apartment will be displayed with their recent events as well as sensor information which includes Name, Date & Time and Water Usage
  • The system stores historical data from the water meter to Cloudant DB using Node-RED. We used this flow-based development tool for wiring together the user’s mobile devices, meter sensor, APIs and online services offered by IBM Watson IoT cloud. The decision to send push notification to app when the water meter has low battery is decided using Node-RED.
  • Our developers used the Cloudant database to store the water meter and application data. It helped us deliver seamless user experience, both online and offline, and that too in a cost-effective manner.