Water Quality Monitoring Using MKR1000 and ARTIK Cloud
Water quality data monitoring for swimming pools, fish aquarium and more!
Things used in this project
The primary objective of this project is to use Samsung ARTIK Cloud to monitor the pH and temperature levels of swimming pools.
II. ARTIK Cloud Setup
Step 1. Creating your new device
Sign up with ARTIK Cloud. Go to developer site and create new “device type”.
Enter your desired display and unique name.
Create new Manifest
Enter field name and other description
Click Save and then navigate to Activate Manifest Tab
Click the ACTIVE MANIFEST Button to finish and you will be redirected here
Done creating device type!
Now lets create your application that will use that device.
Step 2. Creating your application
Navigate to ARTIK Cloud Applications.
Click new application
Enter your desired application name and authentication redirect url.
Note that the authentication redirect url is required. It is used to authenticate the users of this application hence will redirect to this url if in need of login.
We used http://localhost/index/ for sample.
Now set your application permission to read and write, navigate to your device then save.
Congratulation you now have your application!
Now lets connect that application.
Step 3. Connect your device
Navigate to my devices and click connect another device.
Click your new device type created earlier then click connect device.
Click your connected device settings.
Take note of these info as you will needed it on the program.
Now navigate to your connected device
III. Hardware Sensor Setup
Step 1. Connect the Temp and pH Sensors to MKR1000.
Here’s the diagram:
- Temp GND to MRK1000 GND
- Temp OUT to MKR1000 Digital pin 1
- Temp VCC to MKR1000 5V
- Connect a 4.7K resistor to Temp VCC and Temp OUT
- pH GND to MRK1000 GND
- pH OUT to MKR1000 Analog pin 1
- pH VCC to MKR1000 5V
Here’s my sample wiring
If you noticed we added an Audio Jack for easy detaching of temperature sensor. But this is optional.
Here’s the connection of temperature sensor to the jack.
Step 2. Setup required software
Go to Arduino IDE and add the MKR1000 board.
Search mkr1000 and click install
Add required library
Search for libraries to install:
- ArduinoJson – we’ll be using this to send JSON data to ARTIK Cloud
- ArduinoHttpClient – host for connecting to API
- OneWire – needed to read digital input from Temperature sensor
- DallasTemperature – Dallas Temperature sensor required library
Finish adding required software!
Step 3. Upload the program
Now plug the MKR1000 to your PC/Laptop
Download the software on GitHub here
Change the following info:
Then Upload the Software Code to MKR1000 and start monitoring.
Note: Your WiFi must have internet connection.
IV. Field Test
We have tested the hardware sensor to Private, Public and School Swimming Pool. Collecting the data from these respondents’ pool enabled us to analyze the capability of the hardware.
You can place the MKR1000 and sensor on a box and put it on your swimming pool away from water contamination. By doing this, you can monitor the quality of your water and normalize them by placing the desired chemicals.
Soon we will upload the tutorial on how to put all the circuits inside this box and the actual footage of testing.
Hope this tutorial helps people to build their own DIY swimming pool water quality monitoring device. May there will be an increased awareness regarding the continuous degradation of the swimming pool water quality as people tend to focus more on the amenities that are offered instead of checking how safe they are. They also intend to contribute to the community by being able to provide a means to make water quality testing more efficient and effective without the unnecessary sacrifice of resources.
Happy building! 🙂