diff --git a/README-old.md b/README-old.md deleted file mode 100644 index 321fa9b..0000000 --- a/README-old.md +++ /dev/null @@ -1,21 +0,0 @@ -# GARAGE - -This project uses an [ESP2866](http://www.esp8266.com) with [nodeMCU](http://nodemcu.com/index_cn.html) firmware to control a garage door. - -Controlling a garage door from a microcontroller is easy. All you need to do is emulate a push button with a relay and wire it in parallel with the real push button on your garage door motor. - -# Hardware - -I bought a [kit from eBay](http://www.ebay.com/itm/281519483801?_trksid=p2059210.m2749.l2649) that came with most of what I needed: -* A cheap CH430 USB to Serial TTL adapter with 3.3V logic -* A bunch of female to female jumper wires and jumpers -* A somewhat useful carrying board that makes access to GPIO pins impossible as soldered. -* AM1117 5V to 3.3V power supply with 800 mA capacity. -* Female USB cable -* ESP-01 board, which gives access to 2 GPIO pins. - -Separately, I bought [2 relays](http://www.ebay.com/itm/2pcs-3V-Relay-High-Level-Driver-Module-optocouple-Relay-Moduele-for-Arduino-/141523155660?) that can handle way more voltage and current than I need, but are handy because I can drive them with 3.3V logic of the ESP2866. - -# Open issues - -* When the ESP2866 powers up, both GPIO pins are in input mode, which the relay reads as logic high. That's not good, as it would trigger a garage door opening! I need to invert the logic. What's the easiest and cheapest way to do this? diff --git a/http/file_list.lua b/http/file_list.lua new file mode 100644 index 0000000..ddc3edf --- /dev/null +++ b/http/file_list.lua @@ -0,0 +1,21 @@ +local function sendHeader(connection) + connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\Cache-Control: private, no-store\r\n\r\n") +end + +local function sendFileList(connection) + connection:send("\n") +end + +return function (connection, args) + sendHeader(connection) + connection:send('A Lua script sample') + connection:send('') + connection:send('

File Listing

') + sendFileList(connection) + connection:send('') +end diff --git a/http/memory.lua b/http/memory.lua new file mode 100644 index 0000000..f2f805b --- /dev/null +++ b/http/memory.lua @@ -0,0 +1,13 @@ +local function sendHeader(connection) + connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\Cache-Control: private, no-store\r\n\r\n") +end + +return function (connection, args) + sendHeader(connection) + connection:send('A Lua script sample') + connection:send('') + connection:send('

Memory Statistics

') + connection:send('Heap: ' .. node.heap() .. ' bytes') + connection:send('Garbage collector use: ' .. collectgarbage("count") .. ' kilobytes') + connection:send('') +end diff --git a/http/node_info.lua b/http/node_info.lua new file mode 100644 index 0000000..a563692 --- /dev/null +++ b/http/node_info.lua @@ -0,0 +1,27 @@ +local function sendHeader(connection) + connection:send("HTTP/1.0 200 OK\r\nContent-Type: text/html\r\Cache-Control: private, no-store\r\n\r\n") +end + +local function sendAttr(connection, attr, val) + connection:send("
  • ".. attr .. ": " .. val .. "
  • \n") +end + +return function (connection, args) + collectgarbage() + sendHeader(connection) + connection:send('A Lua script sample') + connection:send('') + connection:send('

    Node info

    ') + majorVer, minorVer, devVer, chipid, flashid, flashsize, flashmode, flashspeed = node.info(); + connection:send('') + connection:send('') +end diff --git a/http/redirect.html b/http/redirect.html new file mode 100644 index 0000000..c43f154 --- /dev/null +++ b/http/redirect.html @@ -0,0 +1,5 @@ +