-
Notifications
You must be signed in to change notification settings - Fork 50
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #34 from devicehive/develop
v0.7
- Loading branch information
Showing
238 changed files
with
10,363 additions
and
5,813 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,3 +9,5 @@ release/build | |
release/*.zip | ||
release/*.tar.gz | ||
firmware-src/pages/debug.log | ||
.DS_Store | ||
|
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,80 +1,82 @@ | ||
# DeviceHive ESP8266 Firmware | ||
Special firmware for usage ESP8266 as local web server with RESTful API and as DeviceHive clouds client. | ||
This repo consist of few parts of this project which can be used with | ||
Special firmware to use ESP8266 as a local web server with RESTful API and as a client of DeviceHive cloud. | ||
This repo consists of a few parts which can be used with | ||
other projects. Each project has dedicated readme file. | ||
|
||
![](images/demo-device.jpg?raw=true) | ||
Photo above is a real photo of the demo device contructed with esp8266. See | ||
http://youtu.be/hzi4djt-wdg | ||
[YouTube video](http://youtu.be/hzi4djt-wdg). | ||
|
||
# [DeviceHiveESP8266.md](DeviceHiveESP8266.md) | ||
This is the main documentation file for this firmware. Document contains | ||
commands specification, describes all features and firmware usage. | ||
[Click here to open it.](DeviceHiveESP8266.md) | ||
commands specification, describes all features and firmware usage. | ||
[Click here to open it](DeviceHiveESP8266.md). | ||
|
||
# Demo videos | ||
Zero wireless configuring with Android http://youtu.be/2J98YDpbJKo | ||
DeviceHive clouds demos: | ||
BH1750 Ambient light http://youtu.be/AkSFdO0soyo | ||
DS18B20 + iButton + DHT11 http://youtu.be/IuvxwCPNZCc | ||
Muscle connected to the cloud http://youtu.be/8L96nBNHE14 | ||
SSD1306 OLED display http://youtu.be/gKgU6RzaxFU | ||
Multple sensor connection http://youtu.be/hzi4djt-wdg | ||
Smart socket http://youtu.be/hCdzcCjYYMw | ||
Wireless Configuring with Mac and Linux http://youtu.be/sFD2TTZNNvo | ||
BMP180 Atmospheric pressure http://youtu.be/P2rxnVjRPyc | ||
MPU6050 Accelerometer + Gyroscope http://youtu.be/IRj4tOfLTAM | ||
MFRC522 RFID Reader http://youtu.be/VMT3v49d57g | ||
Simple relay http://youtu.be/ZLq2X2n_wR0 | ||
- [Zero wireless configuring with Android](http://youtu.be/2J98YDpbJKo) | ||
- [BH1750 Ambient light](http://youtu.be/AkSFdO0soyo) | ||
- [DS18B20 + iButton + DHT11](http://youtu.be/IuvxwCPNZCc) | ||
- [Muscle connected to the cloud](http://youtu.be/8L96nBNHE14) | ||
- [SSD1306 OLED display](http://youtu.be/gKgU6RzaxFU) | ||
- [Multple sensor connection](http://youtu.be/hzi4djt-wdg) | ||
- [Smart socket](http://youtu.be/hCdzcCjYYMw) | ||
- [Wireless Configuring with Mac and Linux](http://youtu.be/sFD2TTZNNvo) | ||
- [BMP180 Atmospheric pressure](http://youtu.be/P2rxnVjRPyc) | ||
- [MPU6050 Accelerometer + Gyroscope](http://youtu.be/IRj4tOfLTAM) | ||
- [MFRC522 RFID Reader](http://youtu.be/VMT3v49d57g) | ||
- [Simple relay](http://youtu.be/ZLq2X2n_wR0) | ||
|
||
# custom firmwares | ||
# Custom firmwares | ||
There is a possibility to build custom firmware on top of this which sends some | ||
notifications to DeviceHive server periodically. In pauses firmware goes to deep | ||
sleep mode. Reimplement `custom_firmware_request()` method in | ||
`custom_firmware.c` file with reading of some sensors data. There are | ||
implementation for some sensors in `sources/devices` dir. Also, it is possible | ||
to create interaction with any sensor using interface implementation modules | ||
(dhi2c, dhspi, dhonewire etc). See `climate` branch as an example. | ||
(`dh/i2c`, `dh/spi`, `dh/onewire` etc). See `climate` branch as an example. | ||
|
||
# esp-utils | ||
# Directory content | ||
|
||
## esp-utils | ||
Simple utils for flashing and connecting to ESP8266. | ||
|
||
# examples-cloud | ||
Simple web pages with JavaScript sample of sendind recieving command | ||
from device via cloud. Onewire DS18B20 examples use 0x33[SKIP ROM] command | ||
## examples-cloud | ||
Simple web pages with JavaScript sample of sendind and receiving commands | ||
from device via cloud. Onewire DS18B20 examples use `0x33[SKIP ROM]` command | ||
which means that examples work only with one currently connected device. Some | ||
browsers(for example Firefox) block cross domen requests even for local file. | ||
browsers (for example Firefox) block cross domen requests even for local file. | ||
Allow temporary cross domain requests in setting or use another browser to run | ||
examples. | ||
|
||
Local RESTful API samples are embedded to firmware. Sources of them can be found | ||
at firmware-src/pages directory. | ||
|
||
# firmware-src | ||
## firmware-src | ||
Sources of DeviceHive ESP8266 firmware. | ||
|
||
# firmware-src/genbin.sh | ||
## firmware-src/genbin.sh | ||
Small utils which is written on bash and can be used on any OS. This util | ||
creates binary firmware files files from crosstool-NG binary file output. | ||
creates binary firmware files from crosstool-NG binary file output. | ||
|
||
# firmware-tests | ||
Tests for firmware. Youcan find sample of command in file requests.html. Each | ||
addtest() instance have boolean third parameter. If this parameters is true it | ||
## firmware-tests | ||
Tests for firmware. You can find command samples in file requests.html. Each | ||
`addtest()` instance have boolean third parameter. If this parameters is `true` it | ||
means that command and parameters is written correctly and you can use it as | ||
a sample. | ||
|
||
# release | ||
## release | ||
Scripts for generating binary releases. | ||
|
||
# sdk | ||
## sdk | ||
SDK from chip manufactor. Included in this repo to make sure that we are | ||
using the same version of this SDK to avoid any surprises from changing APIs | ||
|
||
# License | ||
The MIT License. See LICENSE file. Except sdk directory, it has ESPRSSIF MIT | ||
License, see sdk/License file for details. | ||
## License | ||
The MIT License. See [LICENSE](./LICENSE) file. Except sdk directory, it has ESPRSSIF MIT | ||
License, see [sdk/License](./sdk/License) file for details. | ||
|
||
# Authors | ||
Nikolay Khabarov | ||
Igor Malovitsa | ||
Maksim Kleshchevnikov | ||
- Nikolay Khabarov | ||
- Sergey Polichnoy | ||
- Igor Malovitsa | ||
- Maksim Kleshchevnikov |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,37 +1,39 @@ | ||
# DeviceHive ESP8266 Simple utils | ||
esp-terminal: | ||
Simple tool for easy access to DeviceHive ESP8266 firmware terminal in production | ||
`esp-terminal`: | ||
Simple tool for easy access DeviceHive ESP8266 firmware terminal in production | ||
release with simple support of ansi escape codes | ||
esp-flasher: | ||
|
||
`esp-flasher`: | ||
Simple tool for flashing DeviceHive firmware in ESP8266 | ||
|
||
# How To Build | ||
run 'make' | ||
all binary files will be generated in 'build' directory. | ||
Run `make`. | ||
All binary files will be generated in `build` directory. | ||
|
||
# esp-terminal usage | ||
Run application and it will try to detect device automatically. You also can | ||
specify device manually by passing port name in command line. | ||
To quit from terminal press Ctrl+Q | ||
To quit from terminal press `Ctrl+Q`. | ||
|
||
# esp-flasher usage | ||
Run application and it will try to detect device automatically. If no parameters | ||
were specified it also will try to open files devicehive.bin in current directory | ||
were specified it also will try to open files `devicehive.bin` in current directory | ||
and directory with its binary and flash them to corresponding addresses. | ||
You can specify port name in first argument if you want to specify it manually. | ||
You also can specify which files have to be written in devices in arguments by | ||
pairs hex address <space> file name. For exmaple: | ||
pairs `hex address <space> file name`. For exmaple: | ||
|
||
``` | ||
esp-flasher COM2 0x00000 boot.img 0x40000 spi.img | ||
esp-flasher 0x40000 myimagefile.bin | ||
``` | ||
|
||
There also `--developer` and `--reboot` arguments which supposed to be used by | ||
developers only. First enables incremental flash mode, it compares previosuly | ||
flashed file (should be saved as `devicehive.bin.prev`) and if differences are | ||
minimal it will flash only them to save time on flashing. `--reboot` argument | ||
simply reboot chip (serial adapter RTS should connected to GPIO0, DTR to RTS | ||
simply reboot chip (serial adapter `RTS` should be connected to `GPIO0`, `DTR` to `RTS` | ||
pin). | ||
|
||
# License | ||
see LICENSE file | ||
|
||
# Authors | ||
Nikolay Khabarov | ||
See [LICENSE](./LICENSE) file. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.