Commit Graph

261 Commits

Author SHA1 Message Date
Vowstar 239008d5b9 Merge pull request #553 from nodemcu/dev096
Merge Dev096 to Dev
2015-07-14 15:02:37 +08:00
dnc40085 0020c1d167 added code to check if in softap mode before continuing event monitor
callback
2015-07-13 22:12:16 -07:00
dnc40085 be79d1d3b6 added wifi station event monitor 2015-07-13 21:13:26 -07:00
Konrad Beckmann 6538d22d1f Improved ws2812 implementation
- Fixes the "first led problem" (#534 #487).
- Adds support for 160MHz mode.
- Optimized timings. Time to write pixels is reduced by about 25%
  This is useful when having a large amount of chained LEDs (>500).
2015-07-12 13:43:33 +02:00
Vowstar 98b2bffa75 Merge pull request #545 from DiUS/rtc
RTC and advanced timekeeping
2015-07-11 12:17:51 +08:00
Johny Mattsson dd38a0a0e6 Imported reworked rtctime support. 2015-07-10 16:16:25 +10:00
Johny Mattsson 09410d55c6 Added SNTP module, for easy time sync.
Integrates with the rtctime component if it's available.
2015-07-10 15:12:31 +10:00
Johny Mattsson 67e72c45df Imported RTC FIFO component + added Lua interface.
The rtcfifo module uses RTC memory to store sensor samples across deep-sleeps,
making it possible to batch up samples for less frequent uploads. This
component uses 9 RTC memory slots for control, and a variable number of
slots for sample storage (see rtcfifo.prepare() on how to control the
size/location of the latter).

When used together with the rtctime module, it also exposes the convenience
function rtcfifo.dsleep_until_sample() which can be used to easily take
readings on a regular basis without having to manually take into account
time spent awake to get an accurate sleep time.

The format used for storing samples is quite dense, and allows for 16 bits
of data in a fixed point format (per sample).
2015-07-10 15:12:31 +10:00
Johny Mattsson 2187424928 Imported RTC+sleep timekeeping from an internal DiUS project.
Added Lua module rtctime to interface with it.

This keeps as accurate time as is possible on the ESP8266, including across
deep sleeps (provided rtctime.dsleep() is used rather than node.dsleep()).
Intended to be used together with NTP for high accuracy time keeping. The
API is via rtctime.{get,set}timeofday(), working from Unix epoch.

Note that 160MHz CPU clock is not currently supported by the rtctime code,
as it is only aware of the 52MHz boot clock and the regular 80Mhz default
clock.

See rtctime.h for detailed info on how this all works.
2015-07-10 15:12:31 +10:00
Johny Mattsson 1a613effeb Imported RTC access from a DiUS internal project.
Added Lua access module named "rtcmem" for read/write of RTC user module.
2015-07-10 15:10:15 +10:00
Johny Mattsson 6ad2666182 Declare wifi.ap.getconfig() in the right map. 2015-07-10 14:01:38 +10:00
vowstar 67d785ffec Restore default data and init data before system restore. 2015-07-04 04:27:59 +08:00
vowstar 89aaf475d0 Add node.restore().
If NodeMCU can't connect Wi-Fi, please use it.
After reboot, all will be OK.
RESTORE ITEMS:
wifi_station_set_auto_connect, wifi_set_phy_mode, wifi_softap_set_config,  wifi_station_set_config, wifi_set_opmode.
2015-07-04 03:54:22 +08:00
vowstar 2224f24dad Merge branch 'dev096' of https://github.com/nodemcu/nodemcu-firmware into dev 2015-07-04 02:31:15 +08:00
vowstar 638bf7b023 Merge branch 'dev' of https://github.com/nodemcu/nodemcu-firmware into dev 2015-07-04 02:28:31 +08:00
vowstar fb0e4722b8 Fix and support Wi-Fi smart link (esp-touch and air-kiss).
Espressif open-source android and iOs APP,
See also https://github.com/espressifapp
Note: Must use ESP-TOUCH-V021 in espressif app history.
2015-07-04 02:27:51 +08:00
Konrad Beckmann 3d3c2431b3 Added WS2801 support 2015-07-02 00:50:26 +02:00
Vowstar 125d2173d6 Merge pull request #519 from md5crypt/tmr_module
rewrote the timer module from scratch
2015-06-30 15:50:08 +08:00
Luna 2691383696 added tmr.interval 2015-06-29 23:15:30 +02:00
Luna c1d2eb413b rewrote the timer module from scratch 2015-06-29 21:19:24 +02:00
Vowstar aa710d1f53 Merge pull request #513 from NodeUSB/dev096
update 433MHz transmission comment, add static ICACHE_FLASH_ATTR flag
2015-06-28 14:55:07 +08:00
Mike Wen 66ca7f6aca update 433MHz transmission comment, add static ICACHE_FLASH_ATTR flag 2015-06-27 18:14:24 -04:00
Mike Wen cf72a3203d update 433MHz transmission doc, add static ICACHE_FLASH_ATTR flag 2015-06-27 14:42:39 -04:00
vowstar 663158e4ab added wifi.ap.getconfig() by @md5crypt https://github.com/nodemcu/nodemcu-firmware/pull/500/files#diff-81824fe90d00138d98b6e9f0d7d8c7dcL1458. 2015-06-27 12:30:36 +08:00
vowstar a32df17579 Fixed net.dns.getdnsserver() by @md5crypt. 2015-06-27 12:26:24 +08:00
Johny Mattsson 7bd10e8a17 Added node.bootreason() to inspect boot cause. 2015-06-27 12:34:03 +10:00
devsaurus 277c6d0116 move u8g progmem constants to new .rodata sections
this simplifies the overall memory handling based on the irom support by @jmattsson
2015-06-25 00:38:11 +02:00
Luna 5ca807d7a1 fixed net.dns.getdnsserver() and added wifi.ap.getconfig() 2015-06-24 22:38:37 +02:00
MarsTechHAN 04c03b00ae @jorgempy We change the API of DNS callback format back
Make the net api universe  Callback Format -> function(conn,ip)
2015-06-20 19:10:01 +08:00
Vowstar 90ca92ca6e Revert "Merge dev to dev096" 2015-06-20 01:50:29 +08:00
vowstar 3430e5f826 Add __attribute__((optimize("O2"))) to ws2812 module. 2015-06-20 01:40:45 +08:00
vowstar 87341547d7 Update DHTlib, supported DHT11 or DHTxx automatic detection.
Using @MarsTechHAN 's method.
New usage:
status, temp, humi, tempdec, humidec = dht.read( id )
print( dht.read( id ) )
= dht.read( id )
2015-06-18 20:53:52 +08:00
vowstar af56aea1e8 Update dhtlib api, support both integer and float version. 2015-06-18 17:19:55 +08:00
vowstar 899935e60b Add DHT Lua Module for interfacing with the DHTxx sensors (xx = 11-21-22-33-44). 2015-06-18 16:31:40 +08:00
Mike Wen 7df0a45b07 add 433MHz transmission 2015-06-11 18:05:27 -04:00
Mike Wen a8622795a7 add 433MHz transmission 2015-06-11 18:05:18 -04:00
Vowstar 8044014f96 Merge pull request #471 from nodemcu/dev
Merge dev into dev096
2015-06-08 14:04:28 +08:00
cal 9dc71cfec0 Trying to fix
Problem with multiple MQTT subscriptions #459
	https://github.com/nodemcu/nodemcu-firmware/issues/459

Fix possible wrong buffer pointer increment.
2015-06-07 12:45:55 +02:00
Vowstar ef4e6fa95f Merge pull request #467 from DiUS/newcrypto
Crypto module improvements
2015-06-05 13:01:38 +08:00
Johny Mattsson 7867fd083c Move crypto things to irom0.text segment.
This releases 1168 bytes back to the heap.
2015-06-05 13:03:08 +10:00
cal fdcb982351 Trying to fix
Problem with multiple MQTT subscriptions #459
	https://github.com/nodemcu/nodemcu-firmware/issues/459

Fix possible wrong buffer pointer increment.
2015-06-04 11:46:20 +02:00
HuangRui 3cd5a6a1ed Merge branch 'master' of https://github.com/bruceme/nodemcu-firmware into dev
Conflicts:
	app/modules/net.c
2015-06-04 15:04:12 +08:00
Johny Mattsson 2d1e69151e Extended Lua crypto module with hash & hmac. 2015-06-02 18:17:30 +10:00
dnc40085 353209fb4e Change comments for wifi.sta.getap 2015-05-31 22:45:43 -07:00
dnc40085 a5fe3d0146 Added option to wifi.sta.getap to allow changing output format between
new style and old style
2015-05-31 21:43:03 -07:00
Vowstar d8a8746b9e Merge pull request #447 from creationix/dev
Add crypto module.
2015-05-29 15:05:37 +08:00
= 2128c42f02 Add headers for discovered rom functions 2015-05-28 15:10:12 -05:00
= 59df376a3a Rename base64Encode to toBase64 and hexEncode to toHex 2015-05-28 09:00:13 -05:00
= c8145434c3 Add crypto.hexEncode and crypto.mask 2015-05-28 07:47:09 -05:00
= ca78b9ea2c Add crypto module initially containing sha1 and base64_encode. 2015-05-28 07:46:57 -05:00
makefu c29edf7a22 app/modules/ws2812.c: re-add ws2812.write()
Add the original ws2812.write() function which does not scramble the
buffer while preserving the 'new' ws2812.writergb.

With this everybody should be happy again
2015-05-26 23:12:38 +02:00
Vowstar f7a6183853 Merge pull request #437 from dnc40085/dev096_adc.vdd33_fix
Added fix to adc.readvdd33() to prevent crashing in station mode
2015-05-24 07:23:16 +08:00
Vowstar 2d0689142c Merge pull request #438 from dnc40085/dev096_wifi.getchannel
added wifi.getchannel
2015-05-24 07:23:07 +08:00
dnc40085 6477f5f389 added wifi.getchannel 2015-05-22 19:42:21 -07:00
dnc40085 dd00e31027 Added fix to adc.readvdd33() to prevent crashing in station mode while
connected
2015-05-22 18:01:05 -07:00
dnc40085 7244d51b38 Fixed bug in wifi_scan_done 2015-05-20 02:21:46 -07:00
HuangRui fc8fa2cc91 Fixed readvdd33 bug. 2015-05-19 20:11:15 +08:00
HuangRui 0f3ade36d8 Merge branch 'dev' of https://github.com/nodemcu/nodemcu-firmware
Conflicts:
	app/modules/net.c
2015-05-19 20:06:03 +08:00
dnc40085 546bca00c1 changed wifi_setip() to allow setting SoftAP gateway to 0.0.0.0 2015-05-17 19:29:26 -07:00
Jorge Mesquita 70580dc4ae added net.dns.setdnsserver('ip',[index]), net.dns.getdnsserver([index]), net.dns.resolve('domain.com', function cb('ip' or nil if fail) )
modified:   app/modules/net.c
2015-05-16 20:53:31 -04:00
Vowstar 61f65fb02a Merge pull request #420 from devsaurus/dev
Add missing functions for u8g
2015-05-16 20:26:50 +08:00
devsaurus 5b588b7bd3 implement getStrWidth() and setFontLineSpacingFactor() 2015-05-15 21:32:28 +02:00
devsaurus de56cb084e sort member functions 2015-05-15 21:13:59 +02:00
HuangRui 71469dd70f Merge branch 'dev' of https://github.com/nodemcu/nodemcu-firmware
Conflicts:
	app/include/user_version.h
	app/modules/node.c
	app/modules/wifi.c
2015-05-15 08:13:46 +08:00
Vowstar 43d06459a6 Merge pull request #409 from dnc40085/dev096-wifi_scan_done
Change format of table that is output by wifi_scan_done function
2015-05-15 07:54:48 +08:00
Vowstar 60e1e8ba7d Merge pull request #408 from dnc40085/dev096-wifi.ap.config
Additions and changes to wifi module
2015-05-15 07:54:42 +08:00
Vowstar 55cff23f64 Merge pull request #405 from dnc40085/dev096-wifi.setmac_fix
Fix for inability to use standard formatted MAC address with wifi.setmac()
2015-05-15 07:54:34 +08:00
Vowstar d30fea9bd0 Merge pull request #413 from dnc40085/dev096-tmr.alarm_memory_leak_fix
Fix for issue #382
2015-05-15 07:49:49 +08:00
Vowstar a5d96f4719 Merge pull request #404 from dnc40085/dev096-wifi.sta.getconfig
Add function wifi.sta.getconfig() and more parameters to wifi.sta.config()
2015-05-15 07:45:56 +08:00
dnc40085 894fcc4799 minor change 2015-05-14 04:59:55 -07:00
dnc40085 4f097cf063 Fixed memory leak in tmr.alarm() 2015-05-14 04:40:57 -07:00
dnc40085 cf32376467 Minor change to wifi.sta.getap() 2015-05-11 21:02:46 -07:00
dnc40085 e9081a81a5 Remove conflict 2015-05-11 20:03:02 -07:00
dnc40085 3941977550 Removed commented lines from previous commit 2015-05-11 18:45:27 -07:00
dnc40085 78cb215bb2 Changed output format of table that is output by wifi_scan_done 2015-05-11 18:26:16 -07:00
dnc40085 f31671044d Fixed error in wifi_station_listap 2015-05-11 17:59:51 -07:00
dnc40085 aca2b7724b Added description to wifi_station_listap 2015-05-11 05:38:23 -07:00
dnc40085 cf54f85549 Added ability to set scan configuration to wifi.sta.getap 2015-05-11 05:12:34 -07:00
dnc40085 5b375cfe50 Copied changes from dev branch, commit f13c5c6 from Wayne Bartnick
wifi.sta.config (wifi_station_config):

- range checking password length (8~64)

wifi.ap.config (wifi_ap_config):
- range checking ssid length (1~32)
- range checking pwd length (8~64)
- new params:
  - auth: wifi.OPEN, wifi.WPA_PSK, wifi.WPA2_PSK, wifi.WPA_WPA2_PSK
    - default WITH pwd: wifi.WPA_WPA2_PSK
    - default WITHOUT pwd: wifi.OPEN
  - channel: 1~13 (default: 6)
  - hidden: 0/1 (default: 0)
  - max: 1~4 (default: 4)
  - beacon: 100~60000ms (default: 100)

wifi.ap.getclient (wifi_ap_listclient):
- returns table(mac,ip) of all connected clients

wifi.ap.dhcp:
- new submodule
- config (wifi_ap_dhcp_config), returns start/end ips
  - params:
    - start (e.g., "192.168.1.100")
  - end ip calculated from wifi.ap.config.max
- start (wifi_ap_dhcp_start), returns boolean
- stop (wifi_ap_dhcp_stop), returns boolean
2015-05-11 05:06:48 -07:00
dnc40085 c6c8bd84a0 minor change to wifi.sta.config() 2015-05-11 00:05:28 -07:00
dnc40085 7533a6afba Fix for inability to use standard formatted MAC address with
wifi.setmac() also changed wifi.getmac() to use macro
2015-05-09 04:29:18 -07:00
dnc40085 f9e0e0cc61 Added examples to description of wifi.sta.config() 2015-05-09 04:17:35 -07:00
dnc40085 e667b2029d Added function wifi.sta.getconfig()
Added more parameters to wifi.sta.config()
2015-05-09 01:50:35 -07:00
trilader bc7b9f86c4 Allow connecting to unsecured WiFi networks 2015-05-07 15:12:57 +02:00
dnc40085 700ba55d26 Fix for memory leak in function wifi.sta.getap() 2015-05-07 05:02:59 -07:00
Vowstar 1923280572 Merge pull request #365 from nodemcu/master
Add ICMP ping to net module
2015-05-01 14:57:50 +08:00
dnc40085 f4a9de4886 Added comments for setphymode and getphymode functions in wifi module
Added constants PHYMODE_B, PHYMODE_G, PHYMODE_N to wifi module
2015-04-29 00:06:06 -07:00
dnc40085 900c43d520 Add setphymode and getphymode to wifi module 2015-04-26 20:03:44 -07:00
Kevin Uhlir f68d41608e Add multicastJoin and multicastLeave to net module
net.multicastJoin(if_ip, multicast_ip)
net.multicastLeave(if_ip, multicast_ip)

if_ip is a string containing the interface ip to join/leave the
multicast group.  multicast_ip is the multicast ip of the group to
join/leave. if_ip can be "" or "any" to affect all interfaces.
2015-04-15 03:41:13 -05:00
zeroday 81d9f8893a fix #353 2015-04-12 23:34:11 +08:00
Kirill f19e24c7ac Update tmr.c
According to NodeMCU team recommendations.
2015-04-10 14:56:17 +05:00
Vowstar e61ad9d7ba Merge pull request #339 from wladurner/issue_321
fixes issue #321 "ws2812.writergb scrambles buffer" reported by makefu.
2015-04-06 21:26:04 +08:00
zeroday a333d6a9b9 Merge pull request #333 from wbartnick/dev
wifi submodule enhancements, thanks to @wbartnick
2015-04-05 23:09:33 +08:00
Wolfram Ladurner ff85cf4371 fixes issue #321 "ws2812.writergb scrambles buffer" reported by makefu.
Don't modify Lua-internal lstring - use a copy instead.
2015-04-05 15:49:32 +02:00
Wayne Bartnick f13c5c61e6 wifi.sta.config (wifi_station_config):
- range checking password length (8~64)

wifi.ap.config (wifi_ap_config):
- range checking ssid length (1~32)
- range checking pwd length (8~64)
- new params:
  - auth: wifi.OPEN, wifi.WPA_PSK, wifi.WPA2_PSK, wifi.WPA_WPA2_PSK
    - default WITH pwd: wifi.WPA_WPA2_PSK
    - default WITHOUT pwd: wifi.OPEN
  - channel: 1~13 (default: 6)
  - hidden: 0/1 (default: 0)
  - max: 1~4 (default: 4)
  - beacon: 100~60000ms (default: 100)

wifi.ap.getclient (wifi_ap_listclient):
- returns table(mac,ip) of all connected clients

wifi.ap.dhcp:
- new submodule
- config (wifi_ap_dhcp_config), returns start/end ips
  - params:
    - start (e.g., "192.168.1.100")
  - end ip calculated from wifi.ap.config.max
- start (wifi_ap_dhcp_start), returns boolean
- stop (wifi_ap_dhcp_stop), returns boolean
2015-04-05 09:21:16 -04:00
funshine bcbde08bf7 fix mqtt keepalive ping, add a example for mqtt in lua_examples. 2015-04-05 02:22:51 +08:00
funshine 8558641190 add gpio.serout() api to help serialize bit out 2015-04-03 16:05:14 +08:00
funshine 1c2ee75a00 fix mqtt, do a format when wrong flash size is detected 2015-04-03 00:51:02 +08:00
funshine 32e062f523 polish mqtt module 2015-03-31 23:38:28 +08:00
funshine dcb6e53af7 add auto-reconnect option to mqtt:connect api 2015-03-31 00:36:44 +08:00