Commit Graph

68 Commits

Author SHA1 Message Date
dnc40085 b382a42057 Fix debug message for wifi.sta.getrssi() (#1814) 2017-02-22 20:59:04 +01:00
Jason Follas 2ab28df92a Support clearing WiFi config (#1761)
* Add wifi.sta.clearconfig(). Adjust password validation to match 2.0.0 SDK rules (no min length enforced, i.e. for WEP)
* Updat comments about WEP key not having a minimum
* Documentation: add note about node.restore() to wifi.sta.clearconfig() docs, and add SDK verbiage to describe what node.restore() impacts.
* Normaliz if statements
* Convert leading tabs to leading spaces for consistency
2017-02-08 21:42:29 +01:00
FrankX a18826ec54 Accept 64 byte length WiFi passwords (#1730) 2017-01-17 21:55:30 +01:00
dnc40085 73773fd8a5 Update to the wifi module (#1497)
* Removed inline documentation for several functions and update comments
Since documentation is now part of the repository, the inline
documentation just adds to the already huge wifi.c

* Wifi module: add new functionality, update documentation

Functions Added:
wifi.getdefaultmode(): returns default wifi opmode
wifi.sta.apchange(): select alternate cached AP
wifi.sta.apinfo(): get cached AP list 
wifi.sta.aplimit(): set cached AP limit
wifi.sta.getapindex(): get index of currently configured AP
wifi.sta.getdefaultconfig(): get default station configuration
wifi.ap.getdefaultconfig(): get default AP configuration

functions modified:
wifi.setmode: saving mode to flash is now optional
wifi.sta.config: now accepts table as an argument and save config to
flash is now optional
wifi.sta.getconfig: added option to return table
wifi.ap.config: save config to flash is now optional
wifi.ap.getconfig: added option to return table

Documentation changes:
- Modified documentation to reflect above changes
- Removed unnecessary inline documentation from `wifi.c` 
- Updated documentation for `wifi.sta.disconnect`to address issue #1480 
- Fixed inaccurate documentation for function `wifi.sleeptype`
- Added more details to `wifi.nullmodesleep()`

* Move function `wifi.sleeptype()` to `wifi.sta.sleeptype()`

* Fixed problem where wifi.x.getconfig() returned invalid strings when
ssid or password were set to maximum length.

* fix error in documentation for `wifi.sta.getapindex`

* Renamed some wifi functions
wifi.sta.apinfo -> getapinfo
wifi.sta.aplimit -> setaplimit 
wifi.sta.apchange -> changeap

also organized the wifi_station_map array
2016-11-06 20:51:01 +01:00
dnc40085 3328c66f2c Add function `wifi.nullmodesleep()` (#1475)
Enable auto sleep in NULL_MODE by default.
2016-08-27 11:46:24 +02:00
dnc40085 4a1775c2e8 Fixed bug where default hostname is not set on boot when in SoftAP mode (#1341) 2016-06-05 13:38:12 +02:00
dnc40085 2fdaa9b171 Moved call to set default wifi hostname (#1317)
Moved call from `luaopen_wifi (wifi.c)` to `user_rf_pre_init
(user_main.c)`
Note: This change adds ~440 us to boot time
2016-05-27 13:25:42 +02:00
dnc40085 5e9ab01523 Modified wifi module
Implement SDK event monitor
Move wifi status event monitor code into seperate file
(app/modules/wifi_eventmon.c)
Modify wifi lua callback registration code.
Add Functions wifi.ap.deauth and wifi.sta.getrssi
Rework wifi event monitor to use tasking interface
fix for Lua coroutine compatibility issue
Made changes Suggested by TerryE

Also, moved code that sets the default host name out of
luaopen_wifi_init and into a separate function and added a post_task_low
entry in it's place.

Replaced some if test then return error lines with
luaL_argcheck
Add check for malloc null return in wifi.eventmon 
to catch out of memory errors
2016-03-31 19:01:41 -07:00
dnc40085 7def6ec7cf fix for #1065
Also changed wifi.sta.eventMonStop("unreg all") to
wifi.sta.eventMonStop(1) and wifi.sta.eventMonReg(wifi.status, "unreg")
to wifi.sta.eventMonReg(wifi.status)
2016-03-13 09:51:48 -07:00
TerryE 46ea2aa42e Make the wifi.smart functions options and remove wofs and upgrade
AFAIK no one uses the wifi.startsmart() and wifi.stopsmart().  Removing
them frees up an extra 20-25K of Flash to use as filesystem.  So I have
added a new config define WIFI_SMART_ENABLE which is enabled by default
so the default functionality is the same, but if this is commented out
then this code is omitted.

I have also removed wofs and upgrade from this build as we no longer
support these.
2016-02-26 17:23:38 +00:00
Johny Mattsson 182d45f928 Enable -std=gnu11 for modules dir.
Plus boat-load of fixes to actually make that build.
2016-01-20 19:40:47 +11:00
Terry Ellison 7e8c54890f Merge pull request #878 from dnc40085/dev_wifi_sta_Xethostname
Add functions: wifi.sta.sethostname and wifi.sta.gethostname
2016-01-15 08:56:37 +00:00
dnc40085 c2f2bbd92a Fix problem in wifi.sta.getap where invidual result is lost. 2016-01-03 20:02:50 -08:00
dnc40085 fcbf58cf0d Rewrote wifi_sta_gethostname in wifi module. 2016-01-02 19:43:40 -08:00
dnc40085 b2190e4d7b Added functions: wifi.sta.sethostname and wifi.sta.gethostname and
option to set hostname in user.config.h
2016-01-02 18:34:40 -08:00
Johny Mattsson 4e8ef87d03 Reworked module registration, removed modules.h
Module creation & registration now made a lot simpler. In essence,
each module file is now self-contained and only needs a

  NODEMCU_MODULE(MYNAME, "myname", myname_map, luaopen_myname);

line to both be automatically recognised by the Lua initialization
as well as honor the LUA_USE_MODULES_MYNAME #define.
2015-12-16 16:09:16 +11:00
TerryE b773290b8c Major cleanup of module registration pass 2.
carrying on Johny's edits as per my comments on #810
2015-12-16 11:21:40 +11:00
Johny Mattsson 6b6456be47 Major cleanup of module registration.
As per #810 & #796, only LUA_OPTIMIZE_MEMORY=2 & MIN_OPT_LEVEL=2 are
supported when building. This commit effects that limitation.

With this change modules/auxmods.h no longer needs to be updated for
every new module, nor do module writers need to cater for a hypothetical
LUA_OPTIMIZE_MEMORY < 2 scenario.
2015-12-12 15:03:40 +11:00
dnc40085 51046fd78b Minor change to wifi.sleep
Remove unnecessary code
2015-11-06 05:10:24 -08:00
dnc40085 5e95f48a55 Update function wifi.sleep to return any error codes to user 2015-11-05 13:51:42 -08:00
dnc40085 91ba22a49d Minor change
Added static keyword to a variable
2015-11-04 06:37:57 -08:00
dnc40085 d6cc6d3e68 added wifi table entry for NULLMODE 2015-11-03 18:06:41 -08:00
dnc40085 4387f90339 Added function wifi.sleep 2015-11-03 17:23:43 -08:00
Johny Mattsson 91ee5c088c Wifi module update to new smartconfig API.
Needs testing.
2015-10-12 13:26:04 +11:00
Jakub 52ef3c9102 Fixed bug WIFI AUTH_OPEN #623
Fixed a bug which prevented from setting unprotected AP
2015-08-31 17:53:38 +02:00
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
Johny Mattsson 6ad2666182 Declare wifi.ap.getconfig() in the right map. 2015-07-10 14:01:38 +10: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
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
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 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 7244d51b38 Fixed bug in wifi_scan_done 2015-05-20 02:21:46 -07:00
dnc40085 546bca00c1 changed wifi_setip() to allow setting SoftAP gateway to 0.0.0.0 2015-05-17 19:29:26 -07: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 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 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