Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.1.0 master drop #1980

Merged
merged 74 commits into from
May 21, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
2c8961d
Add TTL support to net module (#1756)
djphoenix Feb 6, 2017
416d53e
Add string support for spi.set_mosi() and spi.get_miso() (#1753)
devsaurus Feb 6, 2017
b9d9f58
Fix cloud builder link
marcelstoer Feb 6, 2017
2ab28df
Support clearing WiFi config (#1761)
jfollas Feb 8, 2017
a21c3d3
Fix markdown syntax
marcelstoer Feb 9, 2017
00bc940
Fix the adjusting of the time when there is a rollover (#1788)
pjsg Feb 9, 2017
4dbf979
Document HSPI pin functions (#1790)
devsaurus Feb 10, 2017
4dfa5cd
Correct BME280 IIR filter setting (#1787)
FrankX0 Feb 11, 2017
b26ed97
Improve MQTT client example, fixes #1792
marcelstoer Feb 12, 2017
0349c1e
Improve BME280 code samples for negative values (#1794)
vsky279 Feb 12, 2017
b382a42
Fix debug message for wifi.sta.getrssi() (#1814)
dnc40085 Feb 22, 2017
8931f09
Fix missing return code for ws2812_init() (#1816)
devsaurus Feb 24, 2017
5feae3f
Re-write DS18B20 asynchronous example (#1820)
vsky279 Feb 25, 2017
2168e51
Apply power selection at the end of the write slot while IRQs are mas…
devsaurus Mar 1, 2017
f577c2c
Sync uart configuration to Tx FIFO level (#1806)
devsaurus Mar 1, 2017
a26969b
Add generic function to print deprecation notes (#1538)
marcelstoer Mar 1, 2017
f565218
use flash size byte to determine the location of the init data for by…
devsaurus Mar 2, 2017
d0622c3
Overhaul the tools section, fixes #1779 (#1831)
marcelstoer Mar 5, 2017
be2a9df
Add modulo and power hints (#1832)
thirschbuechler Mar 6, 2017
fcc9196
Improve wifi documentation - prefer constants to hardcoded values (#1…
Mar 7, 2017
4acabab
Change address printing to Hex from Base64. (#1840)
karrots Mar 7, 2017
466c03d
Deprecation messages for convenient net.create(Server/Connection) cal…
djphoenix Mar 7, 2017
b4319bd
Add driver for XPT2046 touch controller (#1848)
FrankX0 Mar 9, 2017
e8d5a05
Document that the socket receive event is fired for every frame, fixe…
marcelstoer Mar 9, 2017
f562ef8
Grammar and spelling fixes (#1852)
karrots Mar 10, 2017
c0848ec
Sample code for timezone handling (#1853)
pjsg Mar 10, 2017
725fead
Update DS18b20 examples (#1851)
karrots Mar 10, 2017
07341e9
Transfer build options from README to docs (#1860)
marcelstoer Mar 12, 2017
45ae795
Extend node.dsleep() to support instant sleep. (#1859)
jmattsson Mar 14, 2017
25f433a
typo fixes
devsaurus Mar 15, 2017
46f651c
Fix self.pin when specifying lpin for readTemp() (#1865)
devsaurus Mar 16, 2017
9259917
Fix float version, auto-detect int/float, OO tmr (#1866)
devsaurus Mar 16, 2017
2f00c1d
TIME_WAIT sockets fixes (#1838)
djphoenix Mar 17, 2017
d9b3db0
Show IP address after enduser_setup (#1867)
FrankX0 Mar 18, 2017
b6ef1ff
Add 7bit address info (#1834)
thirschbuechler Mar 20, 2017
b09cac0
Add support for streaming JSON encoder/decoder (#1755)
pjsg Mar 22, 2017
92cfbb4
Cron fixes (#1884)
djphoenix Mar 27, 2017
fc887e9
Fix memory leak in file_stat(). (#1871)
devsaurus Mar 29, 2017
50a5c02
Deprecate wifi.sta.eventMonReg (#1889)
dnc40085 Mar 31, 2017
9c71c64
ds3231: require bit module, doc formatting (#1891)
devsaurus Mar 31, 2017
176443c
Admonition style fix
marcelstoer Apr 4, 2017
41a5736
Add wifi.suspend() and node.sleep() (#1231)
dnc40085 Apr 4, 2017
66ffa6c
Fix the error callback from not being called sometimes (#1683)
pjsg Apr 4, 2017
b645100
Add autoconnect deprecation warning to MQTT code
marcelstoer Apr 4, 2017
b2cbf52
Fix error in documentation added with merge of PR#1231 (#1901)
dnc40085 Apr 5, 2017
b1dcb70
File doc fix (#1905)
devsaurus Apr 10, 2017
dba73cf
Fix HTML anchors in ToC generator
marcelstoer Apr 13, 2017
0390269
Update wifi suspend documentation (#1910)
dnc40085 Apr 16, 2017
2f8b353
Prevent determineSelectedLanguageCode() from failing for offline site
marcelstoer Apr 16, 2017
971627f
Fix admonition formatting error in wifi module docs added with #1910 …
dnc40085 Apr 17, 2017
84c5275
Moved the documentation for wifi.nullmodesleep to the correct spot (#…
dnc40085 Apr 17, 2017
3f787ac
Update telnet link (#1918)
flip111 Apr 18, 2017
d777fdc
Add module for TCS34725 colour sensor. (#1895)
tjhowse Apr 19, 2017
332bcb3
mqtt: fix several buffer length checks (#1906)
nwf Apr 19, 2017
1fcb325
Update module count
marcelstoer Apr 20, 2017
9d11543
Hdc1080 Module Add (#1880)
saucompeng Apr 20, 2017
ef1654f
Add 'connection: close' note
marcelstoer Apr 21, 2017
572e423
Unwind bit.ly link
marcelstoer Apr 22, 2017
f5fac7a
Updated documentation and example for wps.start() (#1933)
dnc40085 Apr 24, 2017
9dbae1c
Expose UART 1 (#1934)
dnc40085 Apr 24, 2017
3e24b1c
Added deprecation message to wifi.sta.config() for argument style cfg…
dnc40085 Apr 26, 2017
8668239
add si7021 module (#1921)
fetchbot Apr 27, 2017
f1bc858
remove si7021 from lua_modules tree
devsaurus Apr 27, 2017
3fbb84c
Add missing .md
marcelstoer Apr 30, 2017
201ba9c
Put functions in alphabetical order
marcelstoer Apr 30, 2017
e491f4b
Update init.lua example to use new wifi.sta.config() implementation (…
dnc40085 May 5, 2017
cceb770
Add a few tiny corrections
marcelstoer May 5, 2017
cba4021
Update AP_PROBEREQRECVED example message (#1956)
dnc40085 May 6, 2017
faefc09
add ads1115 module (#1942)
fetchbot May 7, 2017
3aef438
Documenting creating integer build (#1961)
FrankX0 May 8, 2017
c4516f1
Upgrade to SDK 2.1.0. (#1962)
devsaurus May 11, 2017
447fcd3
Exposed wifi event OPMODE_CHANGED. (#1967)
dnc40085 May 15, 2017
4e4dfc1
Align 8 MB & 16 MB flash sizes with SDK 2.1.0. (#1968)
devsaurus May 16, 2017
787379f
Merge branch 'master' into dev
devsaurus May 21, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ Make sure all boxes are checked (add x inside the brackets) when you submit your
- [ ] I have thoroughly tested my contribution.
- [ ] The code changes are reflected in the documentation at `docs/en/*`.

\<Description of and rational behind this PR\>
\<Description of and rationale behind this PR\>
30 changes: 15 additions & 15 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

The following is a set of guidelines for contributing to NodeMCU on GitHub. These are just guidelines, not rules, use your best judgment and feel free to propose changes to this document in a pull request.

It is appreciated if you raise an issue _before_ you start changing NodeMCU, discussing the proposed change; emphasing that the you are proposing to develop the patch yourself, and outlining the strategy for implementation. This type of discussion is what we should be doing on the issues list and it is better to do this before or in parallel to developing the patch rather than having "you should have done it this way" type of feedback on the PR itself.
It is appreciated if you raise an issue _before_ you start changing NodeMCU, discussing the proposed change; emphasizing that you are proposing to develop the patch yourself, and outlining the strategy for implementation. This type of discussion is what we should be doing on the issues list and it is better to do this before or in parallel to developing the patch rather than having "you should have done it this way" type of feedback on the PR itself.

### Table Of Contents
* [General remarks](#general-remarks)
Expand All @@ -16,20 +16,20 @@ It is appreciated if you raise an issue _before_ you start changing NodeMCU, dis
* [Commit messages](#commit-messages)
* [For collaborators](#for-collaborators)
* [Handling releases](#handling-releases)

## General remarks
We are a friendly and welcoming community and look forward to your contributions. Once your contribution is integrated into this repository we feel responsible for it. Therefore, be prepared for constructive feedback. Before we merge anything we need to ensure that it fits in and is consistent with the rest of NodeMCU.
If you made something really cool but won't spend time to integrate it into this upstream project please still share it in your fork on GitHub. If you mention it in an issues we'll take a look at it anyway.
If you made something really cool but won't spend the time to integrate it into this upstream project please still share it in your fork on GitHub. If you mention it in an issue we'll take a look at it anyway.

## Development environment setup
Use the platform and tools you feel most comfortable with. There are no constraints imposed by this project. You have (at least) two options to set up the toolchain to build the NodeMCU firmware:
Use the platform and tools you feel most comfortable with. There are no constraints imposed by this project. You have (at least) two options to set up the toolchain to build the NodeMCU firmware:
- [Full-fledged Linux environment](http://www.esp8266.com/wiki/doku.php?id=toolchain#how_to_setup_a_vm_to_host_your_toolchain), either physical or virtual.
- [Docker image](https://hub.docker.com/r/marcelstoer/nodemcu-build/) which allows to run the build inside the container as if you were running a build script on your local machine.
- [Docker image](https://hub.docker.com/r/marcelstoer/nodemcu-build/) which allows running the build inside the container as if you were running a build script on your local machine.

## Writing Documentation
The NodeMCU documentation is maintained within the same repository as the code. The primary reason is to keep the two in sync more easily. It's thus trivial for the NodeMCU team to verify that a PR includes the necessary documentation. Furthermore, the documentation is merged automatically with the code if it moves from branch X to Y.

The documentation consists of a collection of Markdown files (see note on Markdown syntax at end of chapter) stored in the [`/docs`](docs) directory. With every commit a human readable and browsable version is automatically built with [Read the Docs](https://readthedocs.io/) (RTD). The public NodeMCU documentation can be found at [nodemcu.readthedocs.io](http://nodemcu.readthedocs.io/).
The documentation consists of a collection of Markdown files (see note on Markdown syntax at end of chapter) stored in the [`/docs`](docs) directory. With every commit, a human readable and browsable version is automatically built with [Read the Docs](https://readthedocs.io/) (RTD). The public NodeMCU documentation can be found at [nodemcu.readthedocs.io](http://nodemcu.readthedocs.io/).

There are essentially only two things to keep in mind if you're contributing a PR:

Expand Down Expand Up @@ -61,7 +61,7 @@ Avoid intermediate merge commits. [Rebase](https://www.atlassian.com/git/tutoria
1. Think about [squashing (some of) your commits](http://www.andrewconnell.com/blog/squash-multiple-git-commits-into-one). There are [several ways](http://stackoverflow.com/a/5201642/131929) to do this. There's no need to squash everything into a single commit as GitHub offers to do this when we merge your changes. However, you might want to trim your commit history to relevant chunks.
1. Bring your fork up-to-date with the NodeMCU upstream repo ([see below](#keeping-your-fork-in-sync)). Then rebase your branch on `dev` running `git rebase dev`.
1. `git push`
1. [Create a pull request](https://help.github.com/articles/creating-a-pull-request/) (PR) on GitHub.
1. [Create a pull request](https://help.github.com/articles/creating-a-pull-request/) (PR) on GitHub.

This is just one way of doing things. If you're proficient in Git matters you're free to choose your own. If you want to read more then the [GitHub chapter in the Git book](http://git-scm.com/book/en/v2/GitHub-Contributing-to-a-Project#The-GitHub-Flow) is a way to start. [GitHub's own documentation](https://help.github.com/categories/collaborating/) contains a wealth of information as well.

Expand Down Expand Up @@ -100,13 +100,13 @@ Don't forget to [reference affected issues](https://help.github.com/articles/clo
## For collaborators

### Handling releases
- Create a [milestone](https://github.com/nodemcu/nodemcu-firmware/milestones) right after you cut a new release. Give it a meaningful name if you already have an idea what the scope of the upcoming release is going to be. Also set the due date to ~2 months in the future.
- Add this milestone to every PR before you merge it. Also add the milestone to PRs you want to see land in this milestone.
- Create a [milestone](https://github.com/nodemcu/nodemcu-firmware/milestones) right after you cut a new release. Give it a meaningful name if you already have an idea what the scope of the upcoming release is going to be. Set the due date to ~2 months in the future.
- Add this milestone to every PR before you merge it. Also, add the milestone to PRs you want to see land in this milestone.
- Add notes to the description of the milestone in the course of the ~2 months it lives.
- Be careful and reluctant to merge PRs once we're past the 6-weeks mark of a milestone. Ideally we don't merge anything in the last 2 weeks.
- Be careful and reluctant to merge PRs once we're past the 6-weeks mark of a milestone. Ideally, we don't merge anything in the last 2 weeks.
- Cutting a release
- Create a PR for the `master` branch for collaborators to approve.
- Once approved merge it. :exclamation::boom::exclamation: Make sure you do NOT "squash and merge" but make a regular merge commit!
- Fetch the changes into your local clone and create an annotated tag like so: `git tag -a <SDK-version>-master_<yyyyMMdd> -m ""`, `git push --tags`
- Create a new [release](https://github.com/nodemcu/nodemcu-firmware/releases) based on the tag you just pushed. The version name is the same as the tag name.
- Write release notes. Mention breaking changes explicitly. Since every PR that went into this release is linked to from the milestone it should be fairly easy to include important changes in the release notes.
- Create a PR for the `master` branch for collaborators to approve.
- Once approved merge it. :exclamation::boom::exclamation: Make sure you do NOT "squash and merge" but make a regular merge commit!
- Fetch the changes into your local clone and create an annotated tag like so: `git tag -a <SDK-version>-master_<yyyyMMdd> -m ""`, `git push --tags`
- Create a new [release](https://github.com/nodemcu/nodemcu-firmware/releases) based on the tag you just pushed. The version name is the same as the tag name.
- Write release notes. Mention breaking changes explicitly. Since every PR that went into this release is linked to from the milestone it should be fairly easy to include important changes in the release notes.
16 changes: 8 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
.NOTPARALLEL:

# SDK version NodeMCU is locked to
SDK_VER:=2.0.0
SDK_VER:=2.1.0

# no patch: SDK_BASE_VER equals SDK_VER and sdk dir depends on sdk_extracted
SDK_BASE_VER:=$(SDK_VER)
Expand All @@ -12,8 +12,8 @@ SDK_DIR_DEPENDS:=sdk_extracted
#SDK_BASE_VER:=1.5.4
#SDK_DIR_DEPENDS:=sdk_patched

SDK_FILE_VER:=$(SDK_BASE_VER)_16_08_10
SDK_FILE_SHA1:=b0127a99b45b3778be4a752387ab8dc0f6dd7810
SDK_FILE_VER:=$(SDK_BASE_VER)
SDK_FILE_SHA1:=66a4272894dc1bcec19f5f8bf79fee80f60a021b
#SDK_PATCH_VER:=$(SDK_VER)_patch_20160704
#SDK_PATCH_SHA1:=388d9e91df74e3b49fca126da482cf822cf1ebf1
# Ensure we search "our" SDK before the tool-chain's SDK (if any)
Expand Down Expand Up @@ -203,10 +203,10 @@ all: $(SDK_DIR_DEPENDS) pre_build .subdirs $(OBJS) $(OLIBS) $(OIMAGES) $(OBINS)
sdk_extracted: $(TOP_DIR)/sdk/.extracted-$(SDK_BASE_VER)
sdk_patched: sdk_extracted $(TOP_DIR)/sdk/.patched-$(SDK_VER)

$(TOP_DIR)/sdk/.extracted-$(SDK_BASE_VER): $(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_FILE_VER).zip
$(TOP_DIR)/sdk/.extracted-$(SDK_BASE_VER): $(TOP_DIR)/cache/v$(SDK_FILE_VER).zip
mkdir -p "$(dir $@)"
(cd "$(dir $@)" && rm -fr esp_iot_sdk_v$(SDK_VER) ESP8266_NONOS_SDK && unzip $(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_FILE_VER).zip ESP8266_NONOS_SDK/lib/* ESP8266_NONOS_SDK/ld/eagle.rom.addr.v6.ld ESP8266_NONOS_SDK/include/* ESP8266_NONOS_SDK/bin/esp_init_data_default.bin)
mv $(dir $@)/ESP8266_NONOS_SDK $(dir $@)/esp_iot_sdk_v$(SDK_VER)
(cd "$(dir $@)" && rm -fr esp_iot_sdk_v$(SDK_VER) ESP8266_NONOS_SDK-$(SDK_VER) && unzip $(TOP_DIR)/cache/v$(SDK_FILE_VER).zip ESP8266_NONOS_SDK-$(SDK_VER)/lib/* ESP8266_NONOS_SDK-$(SDK_VER)/ld/eagle.rom.addr.v6.ld ESP8266_NONOS_SDK-$(SDK_VER)/include/* ESP8266_NONOS_SDK-$(SDK_VER)/bin/esp_init_data_default.bin)
mv $(dir $@)/ESP8266_NONOS_SDK-$(SDK_VER) $(dir $@)/esp_iot_sdk_v$(SDK_VER)
rm -f $(SDK_DIR)/lib/liblwip.a
touch $@

Expand All @@ -217,9 +217,9 @@ $(TOP_DIR)/sdk/.patched-$(SDK_VER): $(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_PATCH_VE
rm -f $(SDK_DIR)/lib/liblwip.a
touch $@

$(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_FILE_VER).zip:
$(TOP_DIR)/cache/v$(SDK_FILE_VER).zip:
mkdir -p "$(dir $@)"
wget --tries=10 --timeout=15 --waitretry=30 --read-timeout=20 --retry-connrefused http://espressif.com/sites/default/files/sdks/esp8266_nonos_sdk_v$(SDK_FILE_VER).zip -O $@ || { rm -f "$@"; exit 1; }
wget --tries=10 --timeout=15 --waitretry=30 --read-timeout=20 --retry-connrefused https://github.com/espressif/ESP8266_NONOS_SDK/archive/v$(SDK_FILE_VER).zip -O $@ || { rm -f "$@"; exit 1; }
(echo "$(SDK_FILE_SHA1) $@" | sha1sum -c -) || { rm -f "$@"; exit 1; }

$(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_PATCH_VER).zip:
Expand Down
58 changes: 4 additions & 54 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# **NodeMCU 2.0.0** #
# **NodeMCU 2.1.0** #

[![Join the chat at https://gitter.im/nodemcu/nodemcu-firmware](https://img.shields.io/gitter/room/badges/shields.svg)](https://gitter.im/nodemcu/nodemcu-firmware?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Build Status](https://travis-ci.org/nodemcu/nodemcu-firmware.svg)](https://travis-ci.org/nodemcu/nodemcu-firmware)
Expand All @@ -7,7 +7,7 @@

### A Lua based firmware for ESP8266 WiFi SOC

NodeMCU is an [eLua](http://www.eluaproject.net/) based firmware for the [ESP8266 WiFi SOC from Espressif](http://espressif.com/en/products/esp8266/). The firmware is based on the [Espressif NON-OS SDK 2.0.0](https://espressif.com/sites/default/files/sdks/esp8266_nonos_sdk_v2.0.0_16_08_10.zip) and uses a file system based on [spiffs](https://github.com/pellepl/spiffs). The code repository consists of 98.1% C-code that glues the thin Lua veneer to the SDK.
NodeMCU is an [eLua](http://www.eluaproject.net/) based firmware for the [ESP8266 WiFi SOC from Espressif](http://espressif.com/en/products/esp8266/). The firmware is based on the [Espressif NON-OS SDK 2.1.0](https://github.com/espressif/ESP8266_NONOS_SDK/releases/tag/v2.1.0) and uses a file system based on [spiffs](https://github.com/pellepl/spiffs). The code repository consists of 98.1% C-code that glues the thin Lua veneer to the SDK.

The NodeMCU *firmware* is a companion project to the popular [NodeMCU dev kits](https://github.com/nodemcu/nodemcu-devkit-v1.0), ready-made open source development boards with ESP8266-12E chips.

Expand All @@ -16,7 +16,7 @@ The NodeMCU *firmware* is a companion project to the popular [NodeMCU dev kits](
- Easy to program wireless node and/or access point
- Based on Lua 5.1.4 (without *debug, os* modules)
- Asynchronous event-driven programming model
- 40+ built-in modules
- 55+ built-in modules
- Firmware available with or without floating point support (integer-only uses less memory)
- Up-to-date documentation at [https://nodemcu.readthedocs.io](https://nodemcu.readthedocs.io)

Expand All @@ -43,10 +43,9 @@ wifi.sta.config("SSID", "password")

# Documentation

The entire [NodeMCU documentation](https://nodemcu.readthedocs.io) is maintained right in this repository at [/docs](docs). The fact that the API documentation is mainted in the same repository as the code that *provides* the API ensures consistency between the two. With every commit the documentation is rebuilt by Read the Docs and thus transformed from terse Markdown into a nicely browsable HTML site at [https://nodemcu.readthedocs.io](https://nodemcu.readthedocs.io).
The entire [NodeMCU documentation](https://nodemcu.readthedocs.io) is maintained right in this repository at [/docs](docs). The fact that the API documentation is maintained in the same repository as the code that *provides* the API ensures consistency between the two. With every commit the documentation is rebuilt by Read the Docs and thus transformed from terse Markdown into a nicely browsable HTML site at [https://nodemcu.readthedocs.io](https://nodemcu.readthedocs.io).

- How to [build the firmware](https://nodemcu.readthedocs.io/en/master/en/build/)
- How to [build the filesystem](https://nodemcu.readthedocs.io/en/master/en/spiffs/)
- How to [flash the firmware](https://nodemcu.readthedocs.io/en/master/en/flash/)
- How to [upload code and NodeMCU IDEs](https://nodemcu.readthedocs.io/en/master/en/upload/)
- API documentation for every module
Expand All @@ -66,52 +65,3 @@ See [https://nodemcu.readthedocs.io/en/master/en/support/](https://nodemcu.readt
# License

[MIT](https://github.com/nodemcu/nodemcu-firmware/blob/master/LICENSE) © [zeroday](https://github.com/NodeMCU)/[nodemcu.com](http://nodemcu.com/index_en.html)

# Build Options

The following sections explain some of the options you have if you want to [build your own NodeMCU firmware](http://nodemcu.readthedocs.io/en/master/en/build/).

### Select Modules

Disable modules you won't be using to reduce firmware size and free up some RAM. The ESP8266 is quite limited in available RAM and running out of memory can cause a system panic. The default configuration is designed to run on all ESP modules including the 512 KB modules like ESP-01 and only includes general purpose interface modules which require at most two GPIO pins.

Edit `app/include/user_modules.h` and comment-out the `#define` statement for modules you don't need. Example:

```c
...
#define LUA_USE_MODULES_MQTT
// #define LUA_USE_MODULES_COAP
// #define LUA_USE_MODULES_U8G
...
```

### Tag Your Build

Identify your firmware builds by editing `app/include/user_version.h`

```c
#define NODE_VERSION "NodeMCU 2.0.0+myname"
#ifndef BUILD_DATE
#define BUILD_DATE "YYYYMMDD"
#endif
```

### Set UART Bit Rate

The initial baud rate at boot time is 115200bps. You can change this by
editing `BIT_RATE_DEFAULT` in `app/include/user_config.h`:

```c
#define BIT_RATE_DEFAULT BIT_RATE_115200
```

Note that, by default, the firmware runs an auto-baudrate detection algorithm so that typing a few characters at boot time will cause
the firmware to lock onto that baud rate (between 1200 and 230400).

### Debugging

To enable runtime debug messages to serial console edit `app/include/user_config.h`

```c
#define DEVELOP_VERSION
```
12 changes: 9 additions & 3 deletions app/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -38,15 +38,18 @@ SUBDIRS= \
smart \
modules \
spiffs \
cjson \
crypto \
dhtlib \
tsl2561 \
net \
http \
fatfs \
esp-gdbstub \
websocket
websocket \
swTimer \
misc \
pm \


endif # } PDIR

Expand Down Expand Up @@ -87,16 +90,19 @@ COMPONENTS_eagle.app.v6 = \
smart/smart.a \
spiffs/spiffs.a \
fatfs/libfatfs.a \
cjson/libcjson.a \
crypto/libcrypto.a \
dhtlib/libdhtlib.a \
tsl2561/tsl2561lib.a \
http/libhttp.a \
pm/libpm.a \
websocket/libwebsocket.a \
esp-gdbstub/libgdbstub.a \
net/libnodemcu_net.a \
mbedtls/libmbedtls.a \
modules/libmodules.a \
swTimer/libswtimer.a \
misc/libmisc.a \


# Inspect the modules library and work out which modules need to be linked.
# For each enabled module, a symbol name of the form XYZ_module_selected is
Expand Down
76 changes: 0 additions & 76 deletions app/cjson/CMakeLists.txt

This file was deleted.

Loading