meta data for this page
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
esp8266:nodemcu [2015/09/22 16:26] – niziak | home_automation:esp8266:nodemcu [2016/12/29 20:35] – niziak | ||
---|---|---|---|
Line 28: | Line 28: | ||
* Current API: [[https:// | * Current API: [[https:// | ||
+ | |||
+ | ===== Saving memory ===== | ||
+ | * Avoid upvalues for context passed between event callbacks, as its very difficulat to get a handle on memory leaks created by these. Only use globals for this usecase. | ||
+ | * Nil globals once they are no longer needed so that they can be properly GCed. | ||
+ | * Allocate resources and create closures on a just-in-time basis. | ||
+ | * The cost of require or dofile is relatively small, so break your program into overlays one per event and use a small stub function as a callback to load each. | ||
+ | * Use compiled .lc files and load using dofile(). | ||
===== Scan WiFi ===== | ===== Scan WiFi ===== | ||
Line 51: | Line 58: | ||
print (ow.reset(1)) -- print 1 if device found | print (ow.reset(1)) -- print 1 if device found | ||
</ | </ | ||
+ | |||
+ | ===== Resolving DNS ===== | ||
+ | It is not so easy. It need socket instance which will be used only for one DNS request, then socket will be destroyed. Response is performed by callback. | ||
+ | There is sth about easier API: [[https:// | ||
===== Compile to byte code ===== | ===== Compile to byte code ===== | ||
Line 62: | Line 73: | ||
* [[http:// | * [[http:// | ||
* Control 2 GPIO from Web [[http:// | * Control 2 GPIO from Web [[http:// | ||
- | * | + | * Http server [[https:// |
+ | * Remote update [[http:// | ||
- | ==== Free Cloud/ | + | ===== Free Cloud/ |
* Thingspeak: [[http:// | * Thingspeak: [[http:// | ||
* Telit: [[http:// | * Telit: [[http:// | ||
Line 72: | Line 84: | ||
todo | todo | ||
* https:// | * https:// | ||
+ | |||