Introduction: Atlas WiFi Pool Meter
This tutorial will show you how to set up the WiFi Pool kit from Atlas Scientific. The meter measures pH, oxidation-reduction potential (ORP), and temperature. Data is uploaded to the ThingSpeak platform, where it can be monitored remotely via a mobile device or computer.
For detailed information on this kit, refer to its datasheet by clicking HERE.
Atlas Scientific does not make consumer electronics. This equipment is intended for electrical engineers. If you are not familiar with electrical engineering or embedded systems programming, this product may not be for you.
- This device was developed and tested using a Windows computer. It was not tested on Mac, Atlas Scientific does not know if these instructions are compatible with a Mac system.
- WiFi Pool Kit
- Micro USB cable
- Windows computer
Step 1: Setup a ThingSpeak Account
Because the sensor data is stored/viewed on ThingSpeak, you will need to set up a ThingSpeak account. Create your ThingSpeak account by clicking HERE.
Step 2: Create a Channel
Your data is uploaded to ThingSpeak through a 'Channel.' Select New Channel
Fill out the highlighted boxes. (Be sure to click on the checkboxes to enable field 2 and 3). For reference, this is what we entered.
Name Atlas Sensor
Field 1 pH
Field 2 ORP(mV)
Field 3 Temp(°C)
Scroll to the bottom of the page and click Save Channel
Step 3: Get ThingSpeak API Keys
After you saved your channel settings, you will be redirected to your channel page. Click on API keys
Be sure to save your Channel ID and Write API Key. We are going to need these in the next few steps.
Step 4: Make Sure Your Arduino IDE Libraries Are Up to Date
A. Make sure you have the correct path for the Esp8266 Library
In the IDE, go to File>Preference
Locate the Addition Boards Manager URLs text box.
Make sure this URL is in the textbox http://arduino.esp8266.com/stable/package_esp8266...
Step 5: Make Sure Your Arduino IDE Libraries Are Up to Date
B. Update the esp8266 board
In the IDE, go to Tools > Board > Boards Manager
In the search bar of the Boards Manager, lookup esp8266. Update to the most recent version if you don't already have it. (Version 2.6.3 is not the most recent version)
Step 6: Make Sure Your Arduino IDE Libraries Are Up to Date
Step 7: Make Sure Your Arduino IDE Libraries Are Up to Date
D. Add the EZO I2C library
To download the EZO library .ZIP file click HERE.
Don't unzip it!
Import the .ZIP file to your Arduino IDE. To import the .ZIP file go to Sketch > Include Library > Add .ZIP Library
Step 8: Flash the Pool Kit With the Correct Code
A. Select, open, and adjust the code you want to use for your Wi-Fi Kit
File> Examples> EZO_I2C_lib-master> Examples> IOT_kits>pool_kit
Step 9: Flash the Pool Kit With the Correct Code
B. Fill in your Wi-Fi / ThingSpeak credentials
Fill in your Wi-Fi name and password, along with the Channel ID and Write API Key to the code.
Step 10: Flash the Pool Kit With the Correct Code
C. Setting up your pump
If you do not have a pump attached, you can just skip this part. The code is rather self-explanatory. You set what parameters will trigger the pump to engage.
Step 11: Setting Up the HUZZAH Board
A. Set the target CPU to flash
Tools> Board> Adafruit Feather HUZZAH ESP8266
Step 12: Setting Up the HUZZAH Board
B. Adjust CPU Settings
Make sure the CPU settings on the Adafruit Feather HUZZAH ESP8266 are correct. To adjust the CPU settings, click Tools.
For reference, this is what Atlas Scientific set the CPU settings to.
(Your options may not be exactly the same, just try and match them as closely as possible)
Step 13: See the Readings
Open your Arduino serial monitor (You must have the serial monitor set to the com port of the Adafruit Feather HUZZAH). Set to carriage return and 9600 baud.
The Wi-Fi Pool Meter will always attempt to connect to ThingSpeak on bootup.
Entering the poll command will stop the Wi-Fi Pool Meter from uploading the readings to ThingSpeak, while you debug your WiFi problems.
Step 14: Sensor Calibration
Atlas Scientific created a list of calibration commands that are built into the library. Type in help in the serial monitor to see the list of commands.
A. The poll command
Send the command poll. This will let you see the readings once per second and it will stop uploading to ThingSpeak while you calibrate.
Step 15: Sensor Calibration
B. Calibrate pH
When calibrating pH, you must always calibrate to pH 7 first.
Remove the soaker bottle and rinse off the pH probe. Remove the top of the pH 7.00 calibration solution pouch. Place the pH probe inside the pouch and let the probe site in the calibration solution until the readings stabilize. This will take 1 - 2 minutes.
Once the readings have stabilized, issue the midpoint calibration command ph:cal,mid,7
Rinse off the probe and repeat this process for both pH 4.00 and pH 10.00
Step 16: Sensor Calibration
C. Calibrate ORP
Rinse off the probe and insert it directly into the 225mV calibration solution, and water the readings. Wait for the ORP readings to stabilize. This will take about 10 - 60 seconds.
When the readings stabilize, issue the command orp:cal,225
Step 17: Sensor Calibration (Part 1: Calibrate Temperature)
Calibrating the pt-1000 temperature probe is not required. However, if you want to, a simple method is to place the pt-1000 probe into boiling water. Then issue command rtd:cal,t where t = temperature value.
Step 18: Almost Done
Once you have finished with calibration, issue the datalog command to resume taking a reading every 15 seconds and uploading it to ThingSpeak.
To see the data on your phone, download the ThingSpeak app.