Nodemcu 4m bytes lua wifi internet

Что за модуль ESP8266?

Добрый день!
Попал в руки вот такой модуль — 1pcs D1 mini Mini NodeMcu 4M bytes Lua WIFI Internet of Things development board based ESP8266 by WeMos купить на AliExpress
Подскажите, пожалуйста, что это и с чем его едят?)))
Что можно реализовать на нем?
Спасибо.

Сергей_Ф

Moderator

nikolz

Well-known member

zlolik

New member
PORT OPEN 115200 Communication with MCU..Got answer! Communication with MCU established. AutoDetect firmware. Can't autodetect firmware, because proper answer not received (may be unknown firmware). Please, reset module or continue. 29 2016 15:10:17) SDK version:1.5.2(7eee54f4) Ai-Thinker Technology Co. Ltd. May 5 2016 17:30:30 OK AT+RST OK WIFI DISCONNECT ets Jan 8 2013,rst cause:2, boot mode:(3,0) load 0x40100000, len 1856, room 16 tail 0 chksum 0x63 load 0x3ffe8000, len 776, room 8 tail 0 chksum 0x02 load 0x3ffe8310, len 552, room 8 tail 0 chksum 0x79 csum 0x79 2nd boot version : 1.5 SPI Speed : 40MHz SPI Mode : DIO SPI Flash Size & Map: 8Mbit(512KB+512KB) jump to run user1 @ 1000 don't use rtc mem data rl��s� Ai-Thinker Technology Co. Ltd. ready WIFI CONNECTED WIFI GOT IP

nikolz

Well-known member
PORT OPEN 115200 Communication with MCU..Got answer! Communication with MCU established. AutoDetect firmware. Can't autodetect firmware, because proper answer not received (may be unknown firmware). Please, reset module or continue. 29 2016 15:10:17) SDK version:1.5.2(7eee54f4) Ai-Thinker Technology Co. Ltd. May 5 2016 17:30:30 OK AT+RST OK WIFI DISCONNECT ets Jan 8 2013,rst cause:2, boot mode:(3,0) load 0x40100000, len 1856, room 16 tail 0 chksum 0x63 load 0x3ffe8000, len 776, room 8 tail 0 chksum 0x02 load 0x3ffe8310, len 552, room 8 tail 0 chksum 0x79 csum 0x79 2nd boot version : 1.5 SPI Speed : 40MHz SPI Mode : DIO SPI Flash Size & Map: 8Mbit(512KB+512KB) jump to run user1 @ 1000 don't use rtc mem data rl��s� Ai-Thinker Technology Co. Ltd. ready WIFI CONNECTED WIFI GOT IP

Я получил два -все нормально. Но я брал по 168 р.
Еще заказал.
Попробуйте записать nodemcu и отформатировать файловую систему. потом посмотреть ее размер.

Источник

WiFi Module¶

The NodeMCU WiFi control is spread across several tables:

  • wifi for overall WiFi configuration
  • wifi.sta for station mode functions
  • wifi.ap for access point (AP) functions

wifi.getchannel()¶

Gets the current WiFi channel.

Syntax¶

Parameters¶

Returns¶

  • current WiFi channel (primary channel)
  • HT20/HT40 information (secondary channel). One of the constants:
    • wifi.HT20
    • wifi.HT40_ABOVE
    • wifi.HT40_BELOW

    wifi.getmode()¶

    Syntax¶

    Parameters¶

    Returns¶

    The WiFi mode, as one of the wifi.STATION , wifi.SOFTAP , wifi.STATIONAP or wifi.NULLMODE constants.

    See also¶

    wifi.mode()¶

    Configures the WiFi mode to use. NodeMCU can run in one of four WiFi modes:

    • Station mode, where the NodeMCU device joins an existing network
    • Access point (AP) mode, where it creates its own network that others can join
    • Station + AP mode, where it both creates its own network while at the same time being joined to another existing network
    • WiFi off

    When using the combined Station + AP mode, the same channel will be used for both networks as the radio can only listen on a single channel.

    Syntax¶

    Parameters¶

    • mode value should be one of
      • wifi.STATION for when the device is connected to a WiFi router. This is often done to give the device access to the Internet.
      • wifi.SOFTAP for when the device is acting only as an access point. This will allow you to see the device in the list of WiFi networks (unless you hide the SSID, of course). In this mode your computer can connect to the device, creating a local area network. Unless you change the value, the NodeMCU device will be given a local IP address of 192.168.4.1 and assign your computer the next available IP address, such as 192.168.4.2.
      • wifi.STATIONAP is the combination of wifi.STATION and wifi.SOFTAP . It allows you to create a local WiFi connection and connect to another WiFi router.
      • wifi.NULLMODE disables the WiFi interface(s). Use wifi.stop() to fully shut down the WiFi interface.
      • true WiFi mode configuration will be retained through power cycle. (Default)
      • false WiFi mode configuration will not be retained through power cycle.

      Returns¶

      Example¶

      See also¶

      wifi.start()¶

      Starts the WiFi interface(s). On system startup the WiFi interface(s) are not running. This is to enable users to choose whether to expend the power necessary for radio comms. A sensor device running on battery might only want to enable WiFi every 10th boot for example.

      Syntax¶

      Parameters¶

      Returns¶

      See also¶

      wifi.stop()¶

      Shuts down the WiFi interface(s).

      Syntax¶

      Parameters¶

      Returns¶

      See also¶

      wifi.sta Module¶

      wifi.sta.config()¶

      Sets the WiFi station configuration.

      The WiFi mode must be set to wifi.STATION or wifi.STATIONAP before this function can be used.

      Note that the earlier auto-connect feature is no longer available due to being removed in the SDK/IDF. After start-up it is necessary to call wifi.stat.connect() manually.

      Syntax¶

      Parameters¶

      • station_config table containing configuration data for station
        • ssid string which is less than 32 bytes.
        • pwd string which is 8-64 or 0 bytes. Empty string indicates an open WiFi access point.
        • bssid string that contains the MAC address of the access point (optional)
          • You can set BSSID if you have multiple access points with the same SSID.
          • Note: if you set BSSID for a specific SSID and would like to configure station to connect to the same SSID only without the BSSID requirement, you MUST first configure to station to a different SSID first, then connect to the desired SSID
          • The following formats are valid:
            • «DE:C1:A5:51:F1:ED»
            • «AC-1D-1C-B1-0B-22»
            • «DE AD BE EF 7A C0»
            • wifi.sta.PMF_OFF
            • wifi.sta.PMF_AVAILABLE
            • wifi.sta.PMF_REQUIRED . Defaults to wifi.sta.PMF_AVAILABLE . PMF is required when joining to WPA3-Personal access points.
            • true configuration will be retained through power cycle.
            • false configuration will not be retained through power cycle. (Default)

            Returns¶

            Example¶

            --connect to Access Point (DO NOT save config to flash) station_cfg=<> station_cfg.ssid="NODE-AABBCC" station_cfg.pwd="password" wifi.sta.config(station_cfg) --connect to Access Point (DO save config to flash) station_cfg=<> station_cfg.ssid="NODE-AABBCC" station_cfg.pwd="password" wifi.sta.config(station_cfg, true) --connect to Access Point with specific MAC address station_cfg=<> station_cfg.ssid="NODE-AABBCC" station_cfg.pwd="password" station_cfg.bssid="AA:BB:CC:DD:EE:FF" wifi.sta.config(station_cfg) 

            See also¶

            wifi.sta.connect()¶

            Connects to the configured AP in station mode. You will want to call this on start-up after wifi.start() , and quite possibly also in response to disconnected events.

            Syntax¶

            Parameters¶

            Returns¶

            See also¶

            wifi.sta.disconnect()¶

            Disconnects from AP in station mode.

            Please note that disconnecting from Access Point does not reduce power consumption much. If power saving is your goal, please use wifi.stop() .

            Syntax¶

            Parameters¶

            Returns¶

            See also¶

            wifi.sta.settxpower¶

            Allows adjusting the maximum TX power for the WiFi. This is (unfortunately) needed for some boards which have a badly matched antenna.

            Syntax¶

            Parameters¶

            • power The maximum transmit power in dBm. This must have the range 2dBm — 20dBm. This value is a float.

            Returns¶

            A boolean where true is OK.

            Example¶

            # Needed for the WEMOS C3 Mini wifi.sta.settxpower(8.5) 

            wifi.sta.on()¶

            Registers callbacks for WiFi station status events.

            Syntax¶

            Parameters¶

            • event WiFi station event you would like to set a callback for:
              • «start»
              • «stop»
              • «connected»
              • «disconnected»
              • «authmode_changed»
              • «got_ip»

              Event information provided for each event is as follows:

              • start : no additional info
              • stop : no additional info
              • connected : information about network/AP that was connected to:
                • ssid : the SSID of the network
                • bssid : the BSSID of the AP
                • channel : the primary channel of the network
                • auth authentication method, one of wifi.AUTH_OPEN , wifi.AUTH_WPA_PSK , wifi.AUTH_WPA2_PSK , wifi.WPA_WPA2_PSK , wifi.AUTH_WPA3_PSK , wifi.AUTH_WAPI_PSK
                • ssid : the SSID of the network
                • bssid : the BSSID of the AP
                • reason : an integer code for the reason (see table below for mapping)
                • old_mode : the previous auth mode used
                • new_mode : the new auth mode used
                • ip : the IP address assigned
                • netmask : the IP netmask
                • gw : the gateway («0.0.0.0» if no gateway)

                Table containing disconnect reasons.

                Disconnect reason value
                UNSPECIFIED 1
                AUTH_EXPIRE 2
                AUTH_LEAVE 3
                ASSOC_EXPIRE 4
                ASSOC_TOOMANY 5
                NOT_AUTHED 6
                NOT_ASSOCED 7
                ASSOC_LEAVE 8
                ASSOC_NOT_AUTHED 9
                DISASSOC_PWRCAP_BAD 10
                DISASSOC_SUPCHAN_BAD 11
                IE_INVALID 13
                MIC_FAILURE 14
                4WAY_HANDSHAKE_TIMEOUT 15
                GROUP_KEY_UPDATE_TIMEOUT 16
                IE_IN_4WAY_DIFFERS 17
                GROUP_CIPHER_INVALID 18
                PAIRWISE_CIPHER_INVALID 19
                AKMP_INVALID 20
                UNSUPP_RSN_IE_VERSION 21
                INVALID_RSN_IE_CAP 22
                802_1X_AUTH_FAILED 23
                CIPHER_SUITE_REJECTED 24
                BEACON_TIMEOUT 200
                NO_AP_FOUND 201
                AUTH_FAIL 202
                ASSOC_FAIL 203
                HANDSHAKE_TIMEOUT 204

                Returns¶

                Example¶

                --register callback wifi.sta.on("got_ip", function(ev, info) print("NodeMCU IP config:", info.ip, "netmask", info.netmask, "gw", info.gw) end) --unregister callback wifi.sta.on("got_ip", nil) 

                wifi.sta.getmac()¶

                Gets MAC address in station mode.

                Источник

                NodeMCU (Lua) — Wi-Fi

                Начиная свое знакомство с микроконтроллером ESP8266, первым делом захочется подключиться к Wi-Fi и попробовать сетевые возможности данного микроконтроллера. Для работы с Wi-Fi в NodeMCU существует специальный модуль, который так и называется WiFi module. Данный модуль позволяет устанавливать различные режимы работы и настраивать подключения к Wi-Fi сети.

                Существует три режима работы Wi-Fi в ESP8266

                1. Клиент. (STA)
                2. Точка доступа. (AP)
                3. Совмещенный режим. (STA + AP)
                4. Wi-Fi выключен.

                Клиент

                1

                Один из самых часто используемый режимов работы это режим клиента. Для того чтобы подключиться достаточно несколько строк кода, где нужно указать SSID и пароль вашей Wi-Fi сети.

                cfg = > cfg.ssid = "MY-NET" -- SSID cfg.pwd = "myPassword" -- пароль cfg.save = false -- не сохранять настройки (по умолчанию true) wifi.setmode(wifi.STATION) -- выбор режима wifi.sta.config(cfg) -- установка настроек и подключения к Wi-Fi 

                Точка доступа

                2

                В режиме точки доступа, ESP8266 создает свою собственную сеть, к которой могут присоединиться другие устройства (телефон, ПК и т.д). Максимальное количество устройств, которые могут быть одновременно подключены — пять. Данный режим часто используется как промежуточный этап перед подключением ESP8266 к WiFi в режиме клиента. Например, для первоначальной настройки.

                cfg= ssid="NODE-XXXXXX", pwd="password" > wifi.setmode(wifi.SOFTAP) wifi.ap.config(cfg) 

                Если пароль не указывать, то будет создана открытая точка. При подключении, ESP8266 по умолчании выдается ip адрес 192.168.4.1, а клиенту 192.168.4.2

                Совмещенный режим

                12121

                Совмешенный режим Station + AP, когда ESP8266 создает свою собственную сеть и одновременно подключается к другой сети.

                . Имейте ввиду что при использовании совмещенного режима используется один и тот же канал для обеих сетей, поскольку ESP8266 может прослушивать только один канал.

                cfg_ap= ssid="NODE-XXXXXX", pwd="password" > cfg_sta= ssid="NET", pwd="password" > wifi.setmode(wifi.STATIONAP) wifi.ap.config(cfg_ap) wifi.sta.config(cfg_sta) 

                События

                Для отслеживания различных событий существую функция callback на которую можно подписаться.

                wifi.eventmon.register(wifi.eventmon.STA_CONNECTED, function(T) print("STA_CONNECTED") -- вызовется при подключении к сети dofile('my_script.lua') end) wifi.eventmon.register(wifi.eventmon.STA_DISCONNECTED, function(T) print("STA_DISCONNECTED") -- вызовется при отключении от сети end 

                Например, если ваш скрипт передает данные на сервер, то пока подключение с сетью не будет установлено, нет смысла запускать ваш скрипт раньше.

                Событие вызывается каждый раз при подключении или отключении от сети (в зависимости на какое событие вы подписались), это нужно учитывать в вашем коде.

                Поиск сетей

                Чтобы иметь возможность сканировать доступные сети, в модули существует функция wifi.sta.getap(), но доступ к этой функция есть только в режиме клиента или совмещенный. При попытки запустить ее из режима точки доступа, выдаст ошибку с предупреждением.

                function listap(t) -- callback функция for k,v in pairs(t) do -- разбираем таблицу print(k.." : "..v) -- выводим значения в консоль end end wifi.sta.getap(1, listap) -- 1 это формат данных возвращаемой таблицы 

                Сегодня я постарался написать об основных функциях которые потребуются для работы ESP8266 с Wi-Fi сетями, о других возможностях Wi-Fi модуля можно узнать если внимательно изучить документацию.

                Источник

                Читайте также:  Точка доступа wi fi от компании
Оцените статью
Adblock
detector