introduction_to_the_internet_of_things
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
introduction_to_the_internet_of_things [2018/07/11 20:02] – sdh7 | introduction_to_the_internet_of_things [2018/08/01 00:35] – sdh7 | ||
---|---|---|---|
Line 6: | Line 6: | ||
Install Arduino IDE if you don't already have it, and upgrade to something recent if you're below version 1.7 - http:// | Install Arduino IDE if you don't already have it, and upgrade to something recent if you're below version 1.7 - http:// | ||
+ | *Go to Preferences in the Arduino app, and enter http:// | ||
* In Boards Manager, add ESP8266 Board support | * In Boards Manager, add ESP8266 Board support | ||
Set up a Cayenne account - https:// | Set up a Cayenne account - https:// | ||
+ | * Click on "Add new..." | ||
+ | * In the page that comes up, click "Bring Your Own Thing" The page that brings up will have your MQTT username/ | ||
Install the following libraries: | Install the following libraries: | ||
* Cayenne MQTT Library - https:// | * Cayenne MQTT Library - https:// | ||
- | * Adafruit Sensor Library | + | * Adafruit Sensor Library |
- | * Adafruit BME280 library | + | * Adafruit BME280 library |
* Arduino SimpleTimer library https:// | * Arduino SimpleTimer library https:// | ||
- | Modify BME280 library | + | For each of these four libraries, click on the "Clone or download" |
+ | |||
+ | Modify BME280 library: | ||
* on OS X, navigate using the finder or otherwise cd ~/ | * on OS X, navigate using the finder or otherwise cd ~/ | ||
- | * On Windows & Linux the files will be somewhere similar. | + | * On Windows & Linux the files will be somewhere similar |
- | * edit Adafruit_BME280.h using your favorite editor- change #define BME280_ADDRESS from 0x77 to 0x76 | + | * edit Adafruit_BME280.h using your favorite editor, and change #define BME280_ADDRESS from 0x77 to 0x76- it should be around line 34 or so. |
- | * more advanced C programmers may do something like: | + | |
- | < | + | |
- | #define BME280_ADDRESS 0x77 | + | |
- | #ifdef CLASS_BME280 | + | |
- | #define BME280_ADDRESS 0x76 | + | |
- | #endif | + | |
- | </ | + | |
- | and then add #define CLASS_BME280 at the beginning of your program, so that way if you get an Adafruit BME280 board in the future, | + | ===If Using Your Phone to Tether=== |
+ | I have not tested phone tethering- | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
====THINGS WE WILL DO AT THE CLASS==== | ====THINGS WE WILL DO AT THE CLASS==== | ||
Line 34: | Line 35: | ||
* ESP8266 Wifi-enabled microcontroller | * ESP8266 Wifi-enabled microcontroller | ||
* BME280 sensor array | * BME280 sensor array | ||
- | * AD1117 | + | * AMS1117 |
* CH34x-based programmer for the ESP8266 | * CH34x-based programmer for the ESP8266 | ||
==Hardware Construction== | ==Hardware Construction== | ||
* On the programming board, wire an SPST or SPDT switch between GPIO and GND | * On the programming board, wire an SPST or SPDT switch between GPIO and GND | ||
- | * If you plan on re-using the boards for something else in the future, solder in header pins on the other boards. If you're building this as a | + | * If you plan on re-using the boards for something else in the future, solder in header pins on the other boards. If you're building this as a fixed-in-place design, |
- | + | * wiring: | |
- | If you want to re-use | + | * ESP8266-> |
+ | * AMS1117-> | ||
+ | * Note that the 3.3V & GND connections are going to multiple places. | ||
+ | ==Software Programming== | ||
+ | This is the stock program for the class, with some minor edits to account for our BME280 header hack above. | ||
- | ==Software Programming== | ||
< | < | ||
#define CAYENNE_PRINT Serial | #define CAYENNE_PRINT Serial | ||
- | #define CLASS_BME280 1 //enable BME280 board hack | ||
#include < | #include < | ||
Line 115: | Line 118: | ||
**Power considerations** | **Power considerations** | ||
- | The kit does not come with a power source. The regulator board requires at least 4.5V (and at most 15V!) to adequately supply 3.3V to the ESP8266 and BME280 boards. A 9V battery or 6V AA case should work. You should be able to power via USB with the serial board as well- just run wires from 3.3v & ground to the appropriate ESP8266 pins. | + | The kit does not come with a power source. The regulator board requires at least 4.5V (and at most 15V!) to adequately supply 3.3V to the ESP8266 and BME280 boards. A 9V battery or 6V AA case should work. You should be able to power via USB with the serial board as well- just run wires from 3.3v & ground to the appropriate ESP8266 pins and leave out the AMS1117. |
introduction_to_the_internet_of_things.txt · Last modified: 2018/08/22 11:09 by sdh7