Using a compatible Intel-based platform, this project lets you create a storage unit flood detector that:
- continuously checks the moisture sensor.
- sounds an audible warning in case of a possible flooding.
- stores a record of each time water is detected, using cloud-based data storage.
For all the samples in this repository, see the for required boards and libraries. You need either Grove or DFRobot sensors but not both.
You need to have a Grove* Shield connected to an Arduino* compatible breakout board to plug all the Grove* devices into the Grove* Shield. Make sure you have the tiny VCC switch on the Grove* Shield set to 5V.
| Sensor | Pin |
|---|---|
| Grove* Moisture Sensor | A0 |
| Grove* Speaker | D5 |
You need to have a I/O Expansion Shield connected to an Arduino* compatible breakout board to plug all the DFRobot* devices into the I/O Expansion Shield.
| Sensor | Pin |
|---|---|
| Moisture Sensor | A3 |
| Buzzer | A1 |
More details on the hardware requirements can be found in the
and
- Node.js
- MRAA and UPM Node.js bindings
- Packages as listed in the package.json file in this example
- Microsoft Azure*, IBM Bluemix*, AT&T M2X*, AWS*, Predix*, or SAP* account (optional)
To configure the example for the Grove* kit, just leave the kit key in the config.json set to grove. To configure the example for the DFRobot* kit, change the kit key in the config.json to dfrobot as follows:
{
"kit": "dfrobot"
}
To configure the example for the Arduino 101, add a platform key with the value firmata to the config.json, as follows:
{
"kit": "grove",
"platform": "firmata"
}
To configure the example for the optional Microsoft Azure*, IBM Bluemix*, or AWS data store, change the SERVER and AUTH_TOKEN keys in the config.json file as follows:
{
"kit": "grove",
"SERVER": "http://intel-examples.azurewebsites.net/logger/flood-detect",
"AUTH_TOKEN": "s3cr3t"
}
For information on how to configure the example for an optional Microsoft Azure*, IBM Bluemix*, AT&T M2X*, AWS*, Predix*, or SAP* IoT cloud server, go to:
https://github.com/intel-iot-devkit/iot-samples-cloud-setup
To run this example on the board, simply enter
$ npm install
$ npm run
$ ./storage-unit-flood-detector
You will see output similar to below when the program is running.
UPLOADING: Uploading project bundle to IoT device.
[Upload Complete] Moisture alarm
Connecting to MQTT server...
MQTT message published: { d: { value: '2016-04-22705:08:41.682Z' } }
Refer to for details on the functionality.
You can optionally store the data generated by this sample program using cloud-based IoT platforms from Microsoft Azure*, IBM Bluemix*, AT&T M2X*, AWS*, Predix*, or SAP*.
For information on how to connect to your own cloud server, go to:
https://github.com/intel-iot-devkit/iot-samples-cloud-setup
Optionally, you can store the data generated by this sample program in a back-end database deployed using Microsoft Azure*, IBM Bluemix*, or AWS, along with Node.js*, and a Redis* data store.
For information on how to set up your own cloud data server, go to:
https://github.com/intel-iot-devkit/intel-iot-examples-datastore
IMPORTANT NOTICE: This software is sample software. It is not designed or intended for use in any medical, life-saving or life-sustaining systems, transportation systems, nuclear systems, or for any other mission-critical application in which the failure of the system could lead to critical injury or death. The software may not be fully tested and may contain bugs or errors; it may not be intended or suitable for commercial release. No regulatory approvals for the software have been obtained, and therefore software may not be certified for use in certain countries or environments.