ESP8266 Developer Zone The Official ESP8266 Forum 2023-02-17T23:54:38+08:00 https://bbs.espressif.com:443/feed.php?mode=news 2023-02-17T23:54:38+08:00 2023-02-17T23:54:38+08:00 https://bbs.espressif.com:443/viewtopic.php?t=78132&p=108390#p108390 <![CDATA[ESP32-C5 with 802.11AC 5Ghz]]> Thank you

Statistics: Posted by jkoperwas — Fri Feb 17, 2023 11:54 pm — Replies 0 — Views 62196


]]>
2023-02-09T15:15:22+08:00 2023-02-09T15:15:22+08:00 https://bbs.espressif.com:443/viewtopic.php?t=78100&p=108044#p108044 <![CDATA[ESP8266-01S: Strange behaviour]]>
I noticed a strange behaviour using the AT+CIPSTA_CUR command and I would like to ask if there is something known about it or
maybe I'm doing a mistake.

The problem is, if I use IP address like 192.168.1.41 everything works, but if I use 192.168.001.041, I can not connect to
my network . The command AT+CIPSTA_CUR however is accepted and the default IP is used instead.

With other words is there a problem with leading '0' within the IP string?

Thank you for an answer.

Statistics: Posted by Rob — Thu Feb 09, 2023 3:15 pm — Replies 0 — Views 56994


]]>
2023-01-01T23:07:51+08:00 2023-01-01T23:07:51+08:00 https://bbs.espressif.com:443/viewtopic.php?t=77267&p=105613#p105613 <![CDATA[Linker error]]>
msys_msg.png

Statistics: Posted by s56ffb — Sun Jan 01, 2023 11:07 pm — Replies 0 — Views 12060


]]>
2022-12-29T21:30:52+08:00 2022-12-29T21:30:52+08:00 https://bbs.espressif.com:443/viewtopic.php?t=77244&p=105476#p105476 <![CDATA[Wireless sensor network with ESP8266 and ESP NOW]]> I present to you my project: it is a wireless sensor network.
Each node is based on ESP8266 and communicates with other nodes on the network using the ESPNOW protocol-
This is the web page of the project:
https://hackaday.io/project/186064-green-detect
This is the video presentation:
https://www.youtube.com/watch?v=CE9HRHpV6fQ&t=4s
This is the video of a working prototype:
https://www.youtube.com/watch?v=n3xGoN8Y8NA

Statistics: Posted by Green BMS — Thu Dec 29, 2022 9:30 pm — Replies 0 — Views 52547


]]>
2022-12-21T15:51:13+08:00 2022-12-21T15:51:13+08:00 https://bbs.espressif.com:443/viewtopic.php?t=77094&p=105165#p105165 <![CDATA[Q:How to set NONOS system on Windows (Msys)?]]>
I noticed an interesting project on the Github that uses ESP8266 and Non-os code.The project
documentation states:


qz]Install ESP8266 gcc. See
https://docs.espressif.com/projects/esp ... setup.html
Fetch ESP8266_NONOS_SDK from https://github.com/espressif/ESP8266_NONOS_SDK
Point environment variable ESP_SDK to the SDK directory.
Install esptool.


Since I already have a MSYS system that compile gcc code for AVR devices
(http://siz.hu/en/content/sd2iec-develop ... nt-windows), I tried to add support also
for xtensa-lx106-elf and ESP8266 NONOS SDK by next 7 steps:

1. Download the toolchain 8.4.0 from
https://docs.espressif.com/projects/esp ... setup.html

2. Extract zip on C: ,result is new folder C:\xtensa-lx106-elf

3. DoWnload zip from https://github.com/espressif/ESP8266_NONOS_SDK

4. Extract zip on C: ,result is new folder C:\ESP8266_NONOS_SDK

5. In the .bat file that start Msys, I add next 3 lines:
set Xtensa_PATH=%CD:~0,2%\xtensa-lx106-elf
set PATH=%PATH%;%Xtensa_PATH%\bin
set ESP_SDK=%CD:~0,2%\ESP8266_NONOS_SDK

6. Run the Msys and test:
xtensa-lx106-esp-gcc -- version -> print version 8.4.0 and other stuff
printenv ESP_SDK -> C:\ESP8266_NONOS_SDK

7, run sh script in /C/ESP8266_NONOS_SDK/driver_lib
./make_lib.sh driver
--------
But this not work...

When I start the make command in the project folder, compiler did not find ets_sys.h. I solved
this by simply add the missing .h files from SDK into the project folder.

Now compiling started successfully and produce object code (.o files), but then the linker
reported cannot find -lhal and few other missing parts.

It seems that the xtensa-lx106-elf does not know where the SDK is located. What did I do wrong?

Statistics: Posted by s56ffb — Wed Dec 21, 2022 3:51 pm — Replies 0 — Views 12029


]]>
2022-12-18T19:10:02+08:00 2022-12-18T19:10:02+08:00 https://bbs.espressif.com:443/viewtopic.php?t=77046&p=104961#p104961 <![CDATA[Q:How to set NONOS system on Windows (Msys)?]]>
I noticed an interesting project on the Github that uses ESP8266 and Non-os code.The project documentation states:

Install ESP8266 gcc. See https://docs.espressif.com/projects/esp ... setup.html
Fetch ESP8266_NONOS_SDK from https://github.com/espressif/ESP8266_NONOS_SDK
Point environment variable ESP_SDK to the SDK directory.
Install esptool.


Since I already have a MSYS system that compile gcc code for AVR devices (http://siz.hu/en/content/sd2iec-develop ... nt-windows), I tried to add support also for xtensa-lx106-elf and ESP8266 NONOS SDK by next 7 steps:

1. Download the toolchain 8.4.0 from https://docs.espressif.com/projects/esp ... setup.html

2. Extract zip on C: ,result is new folder C:\xtensa-lx106-elf

3. DoWnload zip from https://github.com/espressif/ESP8266_NONOS_SDK

4. Extract zip on C: ,result is new folder C:\ESP8266_NONOS_SDK

5. In the .bat file that start Msys, I add next 3 lines:
set Xtensa_PATH=%CD:~0,2%\xtensa-lx106-elf
set PATH=%PATH%;%Xtensa_PATH%\bin
set ESP_SDK=%CD:~0,2%\ESP8266_NONOS_SDK

6. Run the Msys and test:
xtensa-lx106-esp-gcc -- version -> print version 8.4.0 and other stuff
printenv ESP_SDK -> C:\ESP8266_NONOS_SDK

7, run sh script in /C/ESP8266_NONOS_SDK/driver_lib
./make_lib.sh driver
--------

But this not work...

When I start the make command in the project folder, compiler did not find ets_sys.h. I solved this by simply add the missing .h files from SDK into the project folder.

Now compiling started successfully and produce object code (.o files), but then the linker reported cannot find -lhal and few other missing files or folders (picture below).

It seems that the xtensa-lx106-elf does not know where the SDK is located. What did I do wrong?
msys_msg.png

Statistics: Posted by s56ffb — Sun Dec 18, 2022 7:10 pm — Replies 0 — Views 12223


]]>
2022-12-18T17:58:32+08:00 2022-12-18T17:58:32+08:00 https://bbs.espressif.com:443/viewtopic.php?t=77044&p=104959#p104959 <![CDATA[How to set NONOS system on Windows (Msys)?]]>
I noticed an interesting project on the Github that uses ESP8266 and Non-os code.The project documentation states:


qz]Install ESP8266 gcc. See https://docs.espressif.com/projects/esp ... setup.html
Fetch ESP8266_NONOS_SDK from https://github.com/espressif/ESP8266_NONOS_SDK
Point environment variable ESP_SDK to the SDK directory.
Install esptool.


Since I already have a MSYS system that compile gcc code for AVR devices (http://siz.hu/en/content/sd2iec-develop ... nt-windows), I tried to add support also for xtensa-lx106-elf and ESP8266 NONOS SDK by next 7 steps:

1. Download the toolchain 8.4.0 from https://docs.espressif.com/projects/esp ... setup.html

2. Extract zip on C: ,result is new folder C:\xtensa-lx106-elf

3. DoWnload zip from https://github.com/espressif/ESP8266_NONOS_SDK

4. Extract zip on C: ,result is new folder C:\ESP8266_NONOS_SDK

5. In the .bat file that start Msys, I add next 3 lines:
set Xtensa_PATH=%CD:~0,2%\xtensa-lx106-elf
set PATH=%PATH%;%Xtensa_PATH%\bin
set ESP_SDK=%CD:~0,2%\ESP8266_NONOS_SDK

6. Run the Msys and test:
xtensa-lx106-esp-gcc -- version -> print version 8.4.0 and other stuff
printenv ESP_SDK -> C:\ESP8266_NONOS_SDK

7, run sh script in /C/ESP8266_NONOS_SDK/driver_lib
./make_lib.sh driver
--------

But this not work...

When I start the make command in the project folder, compiler did not find ets_sys.h. I solved this by simply add the missing .h files from SDK into the project folder.

Now compiling started successfully and produce object code (.o files), but then the linker reported cannot find -lhal and few other missing files or folders (picture below).

It seems that the xtensa-lx106-elf does not know where the SDK is located. What did I do wrong?
msys_msg.png

Statistics: Posted by s56ffb — Sun Dec 18, 2022 5:58 pm — Replies 0 — Views 12018


]]>
2022-12-17T10:18:59+08:00 2022-12-17T10:18:59+08:00 https://bbs.espressif.com:443/viewtopic.php?t=77042&p=104947#p104947 <![CDATA[I keep getting Error message when trying to use AT+CIPSTART]]> I connected my setup and used Serial communication with AT commands to try and send data to a remote server through Wi-Fi
However, no matter what i do, I cannot get the TCP protocol to initiate reliably, it sometimes fails and gives an error message, and these happen to be completely random, i could not figure out a cause whatsoever.

05:10:24.242 -> AT
05:10:24.242 ->
05:10:24.242 -> OK
05:10:32.677 -> AT+CWMODE=3
05:10:32.677 ->
05:10:32.677 -> OK
05:10:40.028 -> AT+CWLAP
05:10:41.683 -> +CWLAP:(3,"FiBiM-MMB",-56,"a8:bf:3c:1f:d9:7c",1,32767,0,4,4,7,0)
05:10:41.729 -> +CWLAP:(4,"SUPERONLINE_WiFi_5354",-65,"64:6d:6c:a5:f8:af",5,13,0,5,3,7,1)
05:10:41.775 -> +CWLAP:(4,"FIBIM-GPON",-84,"e8:65:d4:01:8b:c9",1,10,0,4,4,7,0)
05:10:41.868 -> +CWLAP:(4,"KARAKARTAL",-72,"f8:d1:11:9a:77:d0",6,1,0,5,3,7,1)
05:10:41.915 -> +CWLAP:(3,"TP-LINK_2EB4",-85,"f4:f2:6d:55:2e:b4",10,21,0,4,4,7,1)
05:10:42.010 ->
05:10:42.010 -> OK
05:11:03.487 -> AT+CWJAP="FiBiM-MMB","mmb123000"
05:11:03.533 -> WIFI DISCONNECT
05:11:05.702 -> WIFI CONNECTED
05:11:07.254 -> WIFI GOT IP
05:11:07.487 ->
05:11:07.487 -> OK
05:11:23.029 -> AT+CWDHCP=1,1
05:11:23.029 ->
05:11:23.029 -> OK
05:11:46.638 -> AT+CIPSTART="TCP","www.google.com",80
05:11:49.799 ->
05:11:49.799 -> ERROR
05:11:49.799 -> CLOSED

05:11:52.469 -> AT+CIPSTART="TCP","www.google.com",80
05:11:52.516 -> CONNECT
05:11:52.516 ->
05:11:52.516 -> OK
05:12:03.060 -> AT+CIPCLOSE
05:12:03.060 -> CLOSED
05:12:03.060 ->
05:12:03.060 -> OK
05:12:06.141 -> AT+CIPSTART="TCP","www.google.com",80
05:12:06.188 -> CONNECT
05:12:06.188 ->
05:12:06.188 -> OK
05:12:08.719 -> AT+CIPCLOSE
05:12:08.719 -> CLOSED
05:12:08.719 ->
05:12:08.719 -> OK
05:12:10.261 -> AT+CIPSTART="TCP","www.google.com",80
05:12:13.497 ->
05:12:13.497 -> ERROR
05:12:13.497 -> CLOSED

05:12:14.722 -> AT+CIPSTART="TCP","www.google.com",80
05:12:14.769 -> CONNECT
05:12:14.769 ->
05:12:14.769 -> OK
05:12:16.276 -> AT+CIPCLOSE
05:12:16.276 -> CLOSED
05:12:16.276 ->
05:12:16.276 -> OK

AT version:1.7.4.0(May 11 2020 19:13:04)
SDK version:3.0.4(9532ceb)
compile time:May 27 2020 10:12:17
Bin version(Wroom 02):1.7.4


I need this to work, as my entire project depends on it functioning properly, I hope you can help me. thank you.

Statistics: Posted by mhh.2000 — Sat Dec 17, 2022 10:18 am — Replies 0 — Views 9698


]]>
2022-12-02T15:06:55+08:00 2022-12-02T15:06:55+08:00 https://bbs.espressif.com:443/viewtopic.php?t=76556&p=103941#p103941 <![CDATA[ESP8266 : NonOS SDK API system_phy_set_tpw_via_vdd33]]> I need more description about this api. I tested tx power with this function param 1900 to 3300 and result make me surprised. Param 1900 make esp has more tx power in dbm than param 3300. Can anyone explain ? Thanks.

Statistics: Posted by DonP — Fri Dec 02, 2022 3:06 pm — Replies 0 — Views 12193


]]>
2022-11-30T11:29:48+08:00 2022-11-30T11:29:48+08:00 https://bbs.espressif.com:443/viewtopic.php?t=76497&p=103824#p103824 <![CDATA[about New AT firmware download]]> Firmware which is called "factory_WROOM-02.bin" has been downloaded to address-0x0 successfully.
However, it is no response when I send AT commands to the module after the module has been restarted.

Statistics: Posted by xjxlui — Wed Nov 30, 2022 11:29 am — Replies 0 — Views 9735


]]>
2022-11-15T21:10:44+08:00 2022-11-15T21:10:44+08:00 https://bbs.espressif.com:443/viewtopic.php?t=76220&p=103271#p103271 <![CDATA[AT+CWJAP:3 FAIL]]> We have a design working properly with an ESP-01S, its current mission is to capture the current date and time.
We intend to replace the ESP-01S with an ESP-12F for future features, however, in testing with a pair of ESP-12Fs, we get this:

ATE0
0K
AT
OK
AT+CWMODE=1
OK
AT+CWQAP
OK
WIFI DISCONNECT
AT+CWJAP="ssid","password"
FAIL
+CWJAP:3

The expected response should be:
WIFI CONNECTED
WIFI GOT IP


The version of both ESP-12F is:

AT version:1.3.0.0(Jul 14 2016 18:54:01)
SDK version:2.0.0(5a875ba)
v1.0.0.3
Tue 13 2018 09:37:06

Please, any suggestions?

Statistics: Posted by Breixo — Tue Nov 15, 2022 9:10 pm — Replies 0 — Views 9897


]]>
2022-11-14T18:08:08+08:00 2022-11-14T18:08:08+08:00 https://bbs.espressif.com:443/viewtopic.php?t=76210&p=103240#p103240 <![CDATA[How to implement MQTT in PlatformIO IDE ESP8266 RTOS SDK 1.5]]>
Here Development board i am using is NodeMcu ESP8266 V3 Lua CH340 Wifi Dev. Board
Development Environment -> Platform IO IDE in Visual Studio Code.
Platform IO IDE SDK version support -> 1.5
Framework -> ESP8266 RTOS SDK
ESP8266 RTOS SDK download from expressif site -> Latest Version 3.4 (this version is not supported by PlatformIO IDE in Visual Studio Code)

Now here my ESP8266 is connected to the mobile hotspot as a station mode successfully. But now i have to connect this ESP8266 device to mqtt broker. But PlatformIO IDE inbuilt RTOS SDK version 1.5 do not have support of mqtt. This SDK do not have mqtt examples. So can u please let me know how can i do mqtt implementation here.

Waiting for your reply as early as possible.

Regards,
RRJ

Statistics: Posted by Ronak Jain — Mon Nov 14, 2022 6:08 pm — Replies 0 — Views 12275


]]>
2022-11-13T08:19:38+08:00 2022-11-13T08:19:38+08:00 https://bbs.espressif.com:443/viewtopic.php?t=76200&p=103222#p103222 <![CDATA[is possible Esp8266ex boot from HSPI ?]]> in my project i need sdio interface and i want to config esp8266 boot from HSPI connect flash.
i search alot but i don't find anythings about how do it,
is possible config esp8266ex to boot from HSPI interface?
thanks

Statistics: Posted by MehdiSoheili — Sun Nov 13, 2022 8:19 am — Replies 0 — Views 12125


]]>
2022-10-19T00:54:59+08:00 2022-10-19T00:54:59+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75770&p=102498#p102498 <![CDATA[ESP8266 cause reboot randomly - nonOS SDK - please help]]>
The following 2 line message are shown from serial port right before rebooting, then it will reboot immediately:
"tx rts error 0x16"
"mac 1370"

I am using arduino IDE with ESP8266 sdk v2.7.4, nonosdk, I have spent so much time to identify the issue, however I have no clue so far.

I suspect it has something to do with Nonos_sdk, and but there is no source code to let me tracking down where and how the issue occurs.

NOTES: I must use ESP8266 SDK v2.74 (or lower), but cannot use greater than v2.7.4, since I need to use lwip v1.4 compile from source option, and high version sdk doesn't have this option but only lwip v2.0, which is not suitable for our project.

Please help to resolve this issue.
Thanks in advance.

Statistics: Posted by johnxue — Wed Oct 19, 2022 12:54 am — Replies 0 — Views 12030


]]>
2022-09-16T09:20:44+08:00 2022-09-16T09:20:44+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75639&p=102150#p102150 <![CDATA[as station reconnect ap no ip]]>
when boot,the device connect the ap success,and dhcp client received the ip address.
then i close the ap,device report disconnected,then i reopen the ap,device show connected,but no ip get event trigged.
for this issue,i must reboot the device,does it has another method to resolve this issue

Statistics: Posted by Just — Fri Sep 16, 2022 9:20 am — Replies 0 — Views 12382


]]>
2022-07-01T15:36:53+08:00 2022-07-01T15:36:53+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75562&p=101891#p101891 <![CDATA[ESP12-F怎么把温湿度上传到天气预报网站?]]> ESP-12F
espc3.png

C3
esp12-f.png

ESP12F固件
8266固件.png

Statistics: Posted by 315002181huang — Fri Jul 01, 2022 3:36 pm — Replies 0 — Views 9835


]]>
2022-07-01T15:31:20+08:00 2022-07-01T15:31:20+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75561&p=101890#p101890 <![CDATA[ESP12-F怎么把温湿度上传到天气预报网站?]]>
esp12-f.png


c3:
espc3.png


esp-12f固件:
8266固件.png

Statistics: Posted by 315002181huang — Fri Jul 01, 2022 3:31 pm — Replies 0 — Views 9811


]]>
2022-07-01T15:16:22+08:00 2022-07-01T15:16:22+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75560&p=101889#p101889 <![CDATA[ESP12-F怎么把温湿度上传到天气预报网站?]]> ESP-12F
esp12-f.png


C3:
espc3.png
espc3.png

esp12-f.png

Statistics: Posted by 315002181huang — Fri Jul 01, 2022 3:16 pm — Replies 0 — Views 9760


]]>
2022-05-27T12:13:30+08:00 2022-05-27T12:13:30+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75388&p=101300#p101300 <![CDATA[TCP client and Server at the same time ESP8266 Non OS SDK 2.2.1]]>
We are long time user of esp8266 and running thousands of live devices in home automation category on this chip. However a small limitation is holding us to develop some more interesting and innovative products.

Requirement: We have a requirement to run both TCP client (connected to our cloud server) and TCP server (on which some TCP clients can connect to ESP) at the same time.

Limitation: While we do not get any error when setting up TCP client and TCP Server at same time however we receive data only on connected client. Other TCP clients can not connect to TCP server. If do not connect TCP client from ESP to cloud server, TCP server on ESP very well accepts TCP client connections.

TCP client + UDP server also works perfectly.

Is there any work around to this limitation of TCP client and TCP server running on ESP8266 at the same time?

[Removing this limitation will certainly help to increase footprint of esp8266. With this limitation we are getting forced to look for alternatives]

Statistics: Posted by gailu — Fri May 27, 2022 12:13 pm — Replies 1 — Views 5623


]]>
2022-04-29T22:48:12+08:00 2022-04-29T22:48:12+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75335&p=101099#p101099 <![CDATA[Update firmware/SDK via flash tool 3.9.2]]> The Flash Tool SPIAUTOset and Flash size are not shown and there are only 2 tabs at the top. It is completely different to that shown in the Document. Have tried on different computer, using Windows 7.
Flash tool.png

Statistics: Posted by David-OLW — Fri Apr 29, 2022 10:48 pm — Replies 0 — Views 12240


]]>
2022-04-13T10:46:15+08:00 2022-04-13T10:46:15+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75325&p=100895#p100895 <![CDATA[More than 10 ESP-01 modile couldn't work in AT mode]]> Statistics: Posted by MianQi — Wed Apr 13, 2022 10:46 am — Replies 0 — Views 9791


]]>
2022-03-29T01:34:52+08:00 2022-03-29T01:34:52+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75317&p=100834#p100834 <![CDATA[ESP32 PCB design for Blind Stick Project]]>
I have designed a prototype titled Smart Blind stick for disabled people. The project is working fine and now I am thinking of designing it as a product. Right now I have designed it on wero board but now I want to design its PCB design.

I am new to PCB designing and thinking of hiring a freelancer to design the PCB board.

So, my questions are:

1) Can I get the PCB design of ESP32 boards and can I select the features to add. i.e. I don't want multiple capacitive touch pins, I just want a single touch pin. So, can I remove the other pins?

2) Should I go for flexible PCB design, as the space where I am going to place it is too small. So, I am thinking of using flex PCB, but I have heard that its expensive. Can someone please guide me here? Need some PCB vendors to get an idea about PCB designing?

Thanks.

Statistics: Posted by andrea05256 — Tue Mar 29, 2022 1:34 am — Replies 0 — Views 9530


]]>
2022-03-04T18:11:31+08:00 2022-03-04T18:11:31+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75303&p=100731#p100731 <![CDATA[Encrypted ESP01 ESP32]]> I have an installation working very good but now I would like "to play" with security.
I have multiple master sending information to one slave.
My masters are ESP01 and my slave is ESP32.
I am having problem when try to use key to encrypt the message.
The main part of the code:

Code:

esp_now_add_peer(mac,role,channel,key,size)
--> when KEY is NULL, everything is OK. when KEY has value, the receiver (esp32) doesn't receive anything.
is it possible? Does somebody proof this feature?
Thanks in advance.

Statistics: Posted by dvpe — Fri Mar 04, 2022 6:11 pm — Replies 0 — Views 12092


]]>
2022-02-21T10:54:05+08:00 2022-02-21T10:54:05+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75299&p=100680#p100680 <![CDATA[smart config]]> Statistics: Posted by sxy369 — Mon Feb 21, 2022 10:54 am — Replies 0 — Views 12076


]]>
2022-02-16T14:45:33+08:00 2022-02-16T14:45:33+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75295&p=100667#p100667 <![CDATA[Reset Cause 0 (unknown reset) after deep sleep]]> Environment
Development Kit: ESP12-F (ESP8266 Mod 4MB Flash)
IDF version: e9516e4 (release/v3.4)
Development Env: Make
Operating System: Ubuntu
Power Supply: Battery
Problem Description
can not boot
log-terminal shows: unknown reset

Expected Behavior
boot without any exception

Actual Behavior
CAN NOT boot, logs shows as below:

Code:

ets Jan  8 2013,rst cause:0, boot mode:(3,0)

unknown reset
ets_main.c


Steps to repropduce
    power on or wake up from deep sleep
    run code, connect wifi ... etc , about 5s
    run esp_deep_sleep(30000000) // 30s
    repeat step 1 - 3 about 2000-8000 cycle

Code to reproduce this issue
in function app_main()

Code:

vTaskDelay(5000 / portTICK_PERIOD_MS);
esp_deep_sleep(30000000);


Debug Logs

Code:

ets Jan  8 2013,rst cause:0, boot mode:(3,0)

unknown reset
ets_main.c

Statistics: Posted by cubic — Wed Feb 16, 2022 2:45 pm — Replies 0 — Views 11995


]]>
2022-02-15T16:43:55+08:00 2022-02-15T16:43:55+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75294&p=100664#p100664 <![CDATA[Build Error with ESP8266_RTOS_SDK-v3.4]]> I tried to import SDK3.4 into Aithinker windows IDE program and then build it. Unfortunately i got the following error:

LD /d/8266/ESP8266_RTOS_SDK-v3.4/examples/get-started/hello_world/build/hello-world.elf
d:/program files (x86)/aithinkeride_v1.5.2/msys32/opt/esp8266/v5.2.0_for_3.0/bin/../lib/gcc/xtensa-lx106-elf/5.2.0/../../../../xtensa-lx106-elf/bin/ld.exe: cannot find -lc_nano
collect2.exe: error: ld returned 1 exit status
make: *** [D:\8266\ESP8266_RTOS_SDK-v3.4/make/project.mk:510: /d/8266/ESP8266_RTOS_SDK-v3.4/examples/get-started/hello_world/build/hello-world.elf] Error 1

15:56:16 Build Finished (took 2m:36s.724ms)

can you help me with this error? how can i fix it?

Statistics: Posted by yingzezigai — Tue Feb 15, 2022 4:43 pm — Replies 0 — Views 12232


]]>
2022-01-16T01:18:22+08:00 2022-01-16T01:18:22+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75282&p=100559#p100559 <![CDATA[Add components to a component]]>
I am pretty new to the ESP8266 IDF and I have some questions.

I have created a project with different components, but for example I would like to import FreeRTOS in the #include section of my component source files.
I know I have to write it in the "component.mk", but I cannot make it work!
The make list-components shows everything correctly, but I cannot build correctly because the compiler cannot find the header files outside the "main" directory.

Please can you help me!

Thank you in advice.

Statistics: Posted by banach87 — Sun Jan 16, 2022 1:18 am — Replies 0 — Views 12109


]]>
2022-01-11T07:45:01+08:00 2022-01-11T07:45:01+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75279&p=100545#p100545 <![CDATA[Failed to connect to Espressif device: Timed out waiting for packet header]]>
For whatever reason I can't flash anything to them neither using Arduino IDE nor using esptool.py. No matter what I do - I always receive "Failed to connect to Espressif device: Timed out waiting for packet header". For all 5 chips - same behavior.

I can connect to the device using minicom, and on "reset" it greets me with cryptic message

Code:

brlrl
ready

So at least the chips and the board itself are operable.

I tried to connect UART pins of the burner to CH340 adapter I have and then flash it - basically the same result.

I tried to press "flash + reset" and then release "flash" during that "Connecting..." prompt - no luck.

The same USB cable works just fine to flash NodeMCU boards, but I wonder if I am missing something with this one.

Statistics: Posted by stark2k — Tue Jan 11, 2022 7:45 am — Replies 0 — Views 12112


]]>
2021-12-13T19:59:07+08:00 2021-12-13T19:59:07+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75271&p=100446#p100446 <![CDATA[Cjson print problem]]> ISSUE : using cJSON_AddNumberToObject crashes the ESP8266 during cJSON_Print command. The same piece of code executed correctly on ESP32.

void json_task(void *para)
{
int stackmem = uxTaskGetStackHighWaterMark(NULL);
ESP_LOGI("TAG", "stack space = %d", stackmem);

cJSON *root = cJSON_CreateObject();
bool res=cJSON_AddNumberToObject(root,"meta",212);
//cJSON_AddStringToObject(root,"meta","stringval");
char *out=cJSON_Print(root);
//cJSON_PrintPreallocated(root,resp,1500,true);
ESP_LOGI("TAG","\n%s\n",out);
while(1){vTaskDelay(100);}
}


the issue seems to be only with AddNumeberToObject, cJSON_AddStringToObject works fine.

Please help me debug the issue.
thanks

Statistics: Posted by toxicjv — Mon Dec 13, 2021 7:59 pm — Replies 1 — Views 10315


]]>
2021-12-03T14:52:59+08:00 2021-12-03T14:52:59+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75267&p=100418#p100418 <![CDATA[Programs such as TCP connection will pause briefly]]> Statistics: Posted by qq1411881729 — Fri Dec 03, 2021 2:52 pm — Replies 1 — Views 8377


]]>
2021-11-29T00:52:35+08:00 2021-11-29T00:52:35+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75264&p=100404#p100404 <![CDATA[Broken Code with SDK 2.2 and newer]]> Can someone tell me what modifications I need to make to allow it to work with SDK > 2.2 and newer?

It is a simple Testing Web Server (only 230 lines). In old SDK (and current manual) espconn_regist_disconcb gets called and all works great. In 2.2 and newer it never gets called and fails after the 5th browser refresh.

Thanks.

Code:

#include "user_interface.h"
#include "espconn.h"
#include "osapi.h"
#include "driver/uart.h"
#include "mem.h"

#define SSID "<your SSID>"
#define PW "<your Password>"
#define HOST "ws"
#define dbg(f, ...) os_printf(f, ## __VA_ARGS__)

static os_timer_t ptimer;

// This PAGE only sends a one time page.
const char* PAGE = "<!DOCTYPE html><html><head><title>Native Server Test</title> <meta name='viewport' content='width=device-width, initial-scale=1'></head><body>  <h1>Welcome to my Native Server Test</h1></body></html>";
// This PAGE sends back a page that keeps reloading, so we can check for errors and/or memory leaks.
// const char* PAGE = "<!DOCTYPE html><html><head><title>Native Server Test</title> <meta name='viewport' content='width=device-width, initial-scale=1'><script>window.addEventListener('load',()=>{ setTimeout(()=>{location.reload();},500);},false);</script></head><body>  <h1>Welcome to my Native Server Test</h1></body></html>";

ICACHE_FLASH_ATTR void printIfErr(s8 esp, const char* msg)
{
    if (esp)
        os_printf("ERR - %s = %d\n", msg, esp);
}

ICACHE_FLASH_ATTR void hack(const char* msg)
{
    static u32 last = 0;
    u32 now = system_get_time();
    if (msg)
        os_printf("%s=%uus ", msg, now - last);
    last = now;
}

ICACHE_FLASH_ATTR void onDisconnect(void* c)
{
    hack("onDisconnect");
}

ICACHE_FLASH_ATTR void doDisconnect(void* c)
{
    hack("doDisconnect");

    struct espconn* conn = (struct espconn*)c;
   
    // ******** THIS IS WHERE I THINK THE PROBLEM IS ******************
    // In SDK <= 2.1.0 espconn_disconnect
    //        * does disconnect
    //        * does call espconn_regist_disconcb callback
    //        * does allow new connection after the first 5
    // In SDK > 2.1.0 espconn_disconnect
    //        * does NOT disconnect
    //        * does NOT call espconn_regist_disconcb callback
    //        * does NOT allow new connection after the first 5
   
    printIfErr(espconn_disconnect(conn), "disconnect");
}

ICACHE_FLASH_ATTR void onSent(void* c)
{
    hack("onSent");

    struct espconn* conn = (struct espconn*)c;

    os_timer_disarm(&ptimer);
    os_timer_setfn(&ptimer, (os_timer_func_t *)doDisconnect, conn);
    os_timer_arm(&ptimer, 5, 0);
}

ICACHE_FLASH_ATTR void onReceive(void* c, char* buf, u16 length)
{
    hack("onReceive");

    struct espconn* conn = (struct espconn*)c;

    // Print out the request just to make sure its what we think it is.
    static char buffer[1024];
    os_memcpy(buffer, buf, length);
    *(buffer + length) = 0;
    // os_printf(buffer);
    os_sprintf(buffer, "HTTP/1.1 200 OK\r\n"
        "Server: InqPortal/5.0\r\n"
        "Content-Length: %d\r\n"
        "Content-type: text/html\r\n"
        "Pragma: no-cache\r\n\r\n%s", strlen(PAGE), PAGE);
    printIfErr(espconn_send(conn, (u8*)buffer, strlen(buffer)), "send");   
}

ICACHE_FLASH_ATTR void onConnection(void* c)
{
    hack(NULL);

    static u32 cnt = 0;
    os_printf("\n%3u ", ++cnt);   
   
    struct espconn* conn = (struct espconn*)c;
    espconn_regist_recvcb(conn, onReceive);
    espconn_regist_sentcb(conn, onSent);
    espconn_regist_disconcb(conn, onDisconnect);   
}

ICACHE_FLASH_ATTR void startServer()
{
    // Setup and start web server listener
    LOCAL struct espconn listen;
    LOCAL esp_tcp tcp;
    os_memset(&listen, 0, sizeof(struct espconn));
    listen.type = ESPCONN_TCP;
    listen.state = ESPCONN_NONE;   
    listen.proto.tcp = &tcp;
    listen.proto.tcp->local_port = 80;
   
    espconn_regist_connectcb(&listen, onConnection); 
       
    printIfErr(espconn_accept(&listen), "listen");   
}

ICACHE_FLASH_ATTR void chkAP(void* arg)
{
    if (wifi_station_get_connect_status() != STATION_GOT_IP)
    {
        os_printf(".");
        return;
    }
    os_timer_disarm(&ptimer);

    struct ip_info info;
    wifi_get_ip_info(STATION_IF, &info);
    // This is just cook-book Station connection stuff.
    dbg("\n\nSDK version: %s\n", system_get_sdk_version());

    os_printf("\nBrowse to (http://%s/index.html) or (http://" IPSTR
        "/index.html)\n",
        HOST, IP2STR(&(info.ip)));
}

ICACHE_FLASH_ATTR void startStation()
{
    os_printf("\nConnecting to your router");

    struct station_config sc;
    os_memset(&sc, 0, sizeof(struct station_config));
    sc.bssid_set = 0;
    os_memcpy(&sc.ssid, SSID, 32);
    os_memcpy(&sc.password, PW, 64);   
    wifi_station_set_config_current(&sc);

    wifi_station_set_hostname(HOST);

    wifi_station_connect();

    os_timer_disarm(&ptimer);
    os_timer_setfn(&ptimer, (os_timer_func_t *)chkAP, NULL);
    os_timer_arm(&ptimer, 1000, 1);
}

ICACHE_FLASH_ATTR void startSoftAP()
{   
    // Start up the communications Host/Station and Client/Soft
    // ssid - Not NULL terminated in code - Can be 32 characters coming in! 
    // Password length must be blank OR >= 8!  Truncated if >= 64 characters.

    // Address
    wifi_softap_dhcps_stop();

    struct ip_info info;
    os_memset(&info, 0, sizeof(struct ip_info));
    // Don't set Gateway since we can't offer Internet / DNS
    // We're hardcoding our InqPortal server to always be 10.10.10.10.
    IP4_ADDR(&info.ip, 10, 10, 10, 10);   
    IP4_ADDR(&info.gw, 10, 10, 10, 10);   
    IP4_ADDR(&info.netmask, 255, 255, 255, 0);
   
    wifi_set_ip_info(SOFTAP_IF, &info);
   
    // Start up the DHCP server.
    wifi_softap_dhcps_start();
   
    struct softap_config cfg;
    os_memset((u8*)&cfg, 0, sizeof(struct softap_config));
   
    os_sprintf((char*)cfg.ssid, "%s-%X",
        "ESP8266", system_get_chip_id());
    cfg.ssid_len = strlen((char*)cfg.ssid);   
    // Password is null terminated (no length) specified.  Use this filling.
    os_sprintf((char*)cfg.password, "");
    cfg.channel = 1;
    cfg.authmode = AUTH_OPEN;
    cfg.ssid_hidden = 0;
    cfg.max_connection = 4;    // Note: default 4, max 4
    cfg.beacon_interval = 100; // Note: support 100 ~ 60000 ms, default 100   
   
    wifi_softap_set_config(&cfg);

    wifi_set_sleep_type(NONE_SLEEP_T);
}

ICACHE_FLASH_ATTR void user_init(void)
{
    uart_init(BIT_RATE_115200, BIT_RATE_115200);

    wifi_set_opmode(STATIONAP_MODE);

    startSoftAP();
    startStation();

    startServer();
   
   os_printf("Ready\n");
}

ICACHE_FLASH_ATTR uint32 user_rf_cal_sector_set(void)
{
    enum flash_size_map size_map = system_get_flash_size_map();
    uint32 rf_cal_sec = 0;

    switch (size_map) {
        case FLASH_SIZE_4M_MAP_256_256:
            rf_cal_sec = 128 - 5;
            break;

        case FLASH_SIZE_8M_MAP_512_512:
            rf_cal_sec = 256 - 5;
            break;

        case FLASH_SIZE_16M_MAP_512_512:
        case FLASH_SIZE_16M_MAP_1024_1024:
            rf_cal_sec = 512 - 5;
            break;

        case FLASH_SIZE_32M_MAP_512_512:
        case FLASH_SIZE_32M_MAP_1024_1024:
            rf_cal_sec = 1024 - 5;
            break;

        case FLASH_SIZE_64M_MAP_1024_1024:
            rf_cal_sec = 2048 - 5;
            break;
        case FLASH_SIZE_128M_MAP_1024_1024:
            rf_cal_sec = 4096 - 5;
            break;
        default:
            rf_cal_sec = 0;
            break;
    }
    return rf_cal_sec;
}

Statistics: Posted by Inquisitor — Mon Nov 29, 2021 12:52 am — Replies 13 — Views 36512


]]>
2021-11-26T19:10:45+08:00 2021-11-26T19:10:45+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75263&p=100400#p100400 <![CDATA[ESP8266_NONOS_SDK-2.2.0,How to achieve sleep and button wake up]]> Wifi_fpm_do_sleep (0xFFFFFFF);wifi_enable_gpio_wakeup(GPIO_ID_PIN(4), GPIO_PIN_INTR_LOLEVEL);", you can go to sleep.When the button is pressed, the current changes from 0.92mA to 67mA, indicating that it has been awakened, but no action can be performed.
Therefore, after sending data to the cloud platform, how to wake up the chip after pressing four buttons and continue to send data to the cloud platform after connecting WiFi?

Statistics: Posted by 315002181huang — Fri Nov 26, 2021 7:10 pm — Replies 2 — Views 10551


]]>
2021-11-25T09:10:38+08:00 2021-11-25T09:10:38+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75259&p=100392#p100392 <![CDATA[ESP8266 Android配网在特定路由器(水星)配网失败]]> 从官网下的APP 也是配网失败
IOS可以配网。

Statistics: Posted by 18665955254 — Thu Nov 25, 2021 9:10 am — Replies 1 — Views 105431


]]>
2021-11-14T02:05:45+08:00 2021-11-14T02:05:45+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75254&p=100364#p100364 <![CDATA[user_rf_cal_sector_set and Espressif reserved flash sectors]]> (1) The 0 sector
(2) The last 4 sectors - on a 4MB board, this will be sectors 1020-1023.

When using a native, NonOS we need to expose something like this

Code:

uint32 ICACHE_FLASH_ATTR user_rf_cal_sector_set(void)
{
    enum flash_size_map size_map = system_get_flash_size_map();
    uint32 rf_cal_sec = 0;

    switch (size_map) {
        case FLASH_SIZE_4M_MAP_256_256:
            rf_cal_sec = 128 - 5;
            break;

        case FLASH_SIZE_8M_MAP_512_512:
            rf_cal_sec = 256 - 5;
            break;

        case FLASH_SIZE_16M_MAP_512_512:
        case FLASH_SIZE_16M_MAP_1024_1024:
            rf_cal_sec = 512 - 5;
            break;

        case FLASH_SIZE_32M_MAP_512_512:
        case FLASH_SIZE_32M_MAP_1024_1024:
            rf_cal_sec = 1024 - 5;
            break;

        case FLASH_SIZE_64M_MAP_1024_1024:
            rf_cal_sec = 2048 - 5;
            break;
        case FLASH_SIZE_128M_MAP_1024_1024:
            rf_cal_sec = 4096 - 5;
            break;
        default:
            rf_cal_sec = 0;
            break;
    }
    return rf_cal_sec;
}


Where it clearly puts rf cal stuff in sector -5 (the 5th sector from the end). Looking into the Arduino code base, Arduino appears to put it in sector -4 and use sector -5 for simulating the EEPROM.

Code:

uint32_t user_rf_cal_sector_set(void)
{
    spoof_init_data = true;
    return flashchip->chip_size/SPI_FLASH_SEC_SIZE - 4;
}


When I tried to use sector -4 in NonOS, I get continuous reboots. My questions are...

  1. What is user_rf_cal_sector_set() sector contain / used for?
  2. Why is it variable for us developers to place in the flash?
  3. Since its required why is it not just part of the 4 end sectors already reserved? They are sparsely used and seem like they could easily hold the data placed in this user_rf_cal_sector_set sector.
  4. Arduino seems to use this, but puts it in a place where it is reserved by Espressif.
  5. Where is the Arduino version putting it so it can use sector -5 for EEPROM?

Thanks.

Statistics: Posted by Inquisitor — Sun Nov 14, 2021 2:05 am — Replies 0 — Views 38015


]]>
2021-11-02T14:29:51+08:00 2021-11-02T14:29:51+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75245&p=100328#p100328 <![CDATA[How get the Custom Data of esptouch v2 apk]]> In the sdk, the function of smartconfig_done is the callback of smartconfig. The function of smartconfig_done include SC_STATUS_FIND_CHANNEL, SC_STATUS_GETTING_SSID_PSWD, SC_STATUS_LINK, and SC_STATUS_LINK_OVER. My quesion is how I can get the Custom Data of esptouch v2 apk by function of SDK?
Thanks very much!

Statistics: Posted by Tsingtao — Tue Nov 02, 2021 2:29 pm — Replies 0 — Views 47222


]]>
2021-11-01T22:12:44+08:00 2021-11-01T22:12:44+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75244&p=100327#p100327 <![CDATA[Web Server - Can't connect more than five times]]>

  1. receiving the request
  2. responding with a simple 404
  3. see the browser display the 404
  4. waiting for the espconn_sent_callback()
  5. doing a espconn_disconnect() outside of the callback,
  6. doing a espconn_delete()
This all works fine the first 5 requests... but none after. Doing an lwIP version web server, there are methods to tell the low level that to hold/send more connections... tcp_backlog_delayed() / tcp_backlog_accepted(). There doesn't seem to be an equivalent in the native methods. Here is a rudimentary, single request at a time, test web server that illustrates the problem. It's written for the Arduino IDE, but is easily ported the other way if needed.

Code:

#include <user_interface.h>
#include <espconn.h>

#define SSID "InqMakers-Guest"
#define PW "Inquisitive"
#define HOST "wp"

void setup()
{
   Serial.begin(115200);
   while(!Serial) { Serial.print("."); delay(100); }
   delay(2000);
   
    // This is just cook-book Station connection stuff.
    setupWiFi();
   
    // Setup and start web server listener
    static espconn listen;
    os_memset(&listen, 0, sizeof(espconn));
    listen.type = ESPCONN_TCP;
    listen.state = ESPCONN_NONE;   
    listen.proto.tcp = new esp_tcp();   
    listen.proto.tcp->local_port = 80;
   
    espconn_regist_connectcb(&listen, onConnection); 
    // This appears to be an error handler.  Haven't seen it hit yet.
    espconn_regist_reconcb(&listen, onError);
       
    printIfErr(espconn_accept(&listen), "listen");
   
   Serial.println("Ready");
}

espconn* dis = NULL;
u32 last;

void loop()
{
    // The only thing we do in the loop is do the final disconnect since
    // we can't do it in the onSent() callback.
    if (dis)
    {
        u32 now = micros();
        Serial.printf("disconnect = %u us\n", now - last);
        last = now;
       
        s8 rtn;
        if ((rtn = espconn_disconnect(dis)))
        {
            Serial.printf("ERR - disconnect = %d\n", rtn);
            if ((rtn = espconn_abort(dis)))
                Serial.printf("ERR - abort = %d\n", rtn);
        }
        if ((rtn = espconn_delete(dis)))
            Serial.printf("ERR - delete = %d\n", rtn);
        dis = NULL;
    }
}

void onConnection(void* c)
{
    espconn* conn = reinterpret_cast<espconn*>(c);
       
    // Incoming connection
    last = micros();
    Serial.printf("\nonConnection\n");   
    espconn_regist_recvcb(conn, onReceive);
    espconn_regist_sentcb(conn, onSent);
    espconn_regist_disconcb(conn, onDisconnect);   

    espconn_set_opt(conn, ESPCONN_REUSEADDR | ESPCONN_NODELAY);
    // We'll use our own buffer instead of their 2920 buffer
    espconn_clear_opt(conn, ESPCONN_COPY);
}

void onError(void* conn, s8 err)
{
    Serial.printf("ERR=%d\n", err);
}

void onReceive(void* c, char* buf, u16 length)
{
    espconn* conn = reinterpret_cast<espconn*>(c);

    u32 now = micros();
    Serial.printf("onReceive = %u us\n", now - last);
    last = now;
   
    static char buffer[536];

    // Print out the request just to make sure its what we think it is.
    memcpy(buffer, buf, length);
    *(buffer + length) = 0;
    // Serial.print(buffer);
   
    // We don't care what's in there since we'll send back a 404 anyway.
    sprintf(buffer, "HTTP/1.1 404 Not Found\r\nServer: InqPortal/5.0\r\n",
        "Content-type: text/html\r\nPragma: no-cache\r\n\r\n");

    printIfErr(espconn_send(conn, (u8*)buffer, strlen(buffer)), "send");
   
    now = micros();
    Serial.printf("sent = %u us\n", now - last);
    last = now;
}

void onSent(void* c)
{
    u32 now = micros();
    Serial.printf("onSent = %u us\n", now - last);
    last = now;
    // Manual says we can't call disconnect in callback.  We'll use
    // cheap way of just letting the loop() do it.
    dis = reinterpret_cast<espconn*>(c);
;
}

void onDisconnect(void* c)
{
    Serial.printf("onDisconnect \n");
}

void printIfErr(s8 esp, const char* msg)
{
    if (esp)
        Serial.printf("ERR - %s = %d\n", msg, esp);
}

void setupWiFi()
{
    Serial.print("Connecting to your router");

    wifi_set_opmode(STATION_MODE);
   
    station_config sc;
    os_memset(&sc, 0, sizeof(station_config));
    sc.bssid_set = 0;
    os_memcpy(&sc.ssid, SSID, 32);
    os_memcpy(&sc.password, PW, 64);   
    wifi_station_set_config_current(&sc);

    wifi_station_set_hostname(HOST);

    wifi_station_connect();
    while (wifi_station_get_connect_status() != STATION_GOT_IP)
    {
        Serial.print(".");
        delay(1000);
    }
    ip_info   info;
    wifi_get_ip_info(STATION_IF, &info);
    Serial.printf("\nBrowse to (http://%s/index.html) or (http://" IPSTR
        "/index.html)\n",
        HOST, IP2STR(&(info.ip)));
}

Statistics: Posted by Inquisitor — Mon Nov 01, 2021 10:12 pm — Replies 2 — Views 7901


]]>
2021-10-19T14:52:18+08:00 2021-10-19T14:52:18+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75242&p=100294#p100294 <![CDATA[NONOS 和freeRTOS 版的区别?]]> Statistics: Posted by steveszhang2021 — Tue Oct 19, 2021 2:52 pm — Replies 3 — Views 8521


]]>
2021-10-15T11:51:11+08:00 2021-10-15T11:51:11+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75241&p=100290#p100290 <![CDATA[ESP8266 cant join AP]]>
I am using ESP8266 latest SDK ver 3.4. I have written a code that will join an AP. The code runs on ESP8266 Devkit but not on the ESP01 module. On both modules, the code can scan all the wifi access point but ESP01 cant seem to connect to the AP. On the ESP8266 Devkit, it manage to join the AP. Any one experience this before and what could be the possbile issues?

Statistics: Posted by howchee — Fri Oct 15, 2021 11:51 am — Replies 1 — Views 27273


]]>
2021-10-13T21:17:54+08:00 2021-10-13T21:17:54+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75240&p=100285#p100285 <![CDATA[8266 gpio input mode electrical characteristics]]> I'm looking for 8266 gpio input mode electrical characteristics, can you tell me where to find it
Thks

Statistics: Posted by jozles — Wed Oct 13, 2021 9:17 pm — Replies 3 — Views 11750


]]>
2021-10-06T04:06:59+08:00 2021-10-06T04:06:59+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75239&p=100264#p100264 <![CDATA[How to configure SoftAP with WPA2-PSK(AES) in non os sdk]]>
Apple iOS is complaining about low security for my SoftAP which is using WPA2-PSK (TKIP), I believe it is because it is still using TKIP and I am trying to configure it with AES, the non-os-sdk documentation says that for the SoftAP AES is supported as well but I can't find any API to set it:

"ESP8266 softAP supports OPEN, WPAPSK, WPA2PSK; and encryption AUTO, TKIP, AES
are supported. But for the group key, only TKIP is supported."
Source:
https://www.espressif.com/sites/default ... nce_en.pdf

How can I configure it?

Ps. Migrating SDK is not an option for us right now.

Statistics: Posted by maverickchongo — Wed Oct 06, 2021 4:06 am — Replies 4 — Views 15382


]]>
2021-09-28T15:03:18+08:00 2021-09-28T15:03:18+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75234&p=100241#p100241 <![CDATA[spi_flash_read() behavior when flash is going bad.]]> spi_flash_read() and spi_flash_write() return errors SpiFlashOpResult for error and timeout. I am also considering writing the class to not write to areas with bad memory regions. Can someone describe...

  1. What causes SPI_FLASH_RESULT_ERR?
  2. What causes SPI_FLASH_RESULT_TIMEOUT?
  3. When flash is getting worn out, what happens when some region is faulty? Does it cause one of the above errors or does it reboot the ESP8266?

Thanks.

Statistics: Posted by Inquisitor — Tue Sep 28, 2021 3:03 pm — Replies 2 — Views 8134


]]>
2021-09-27T22:10:22+08:00 2021-09-27T22:10:22+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75233&p=100240#p100240 <![CDATA[Forgetting an AP]]> how to forget a stored AP like any computer/table/phone can. Surely, there is a way using the APIs that I just haven't figured out. I've been trying to use the wifi_station_set_config() methods and then studying the five stored using wifi_station_get_ap_info(). Some things I've figured out...
  • If multiples of the same AP are entered using wifi_station_set_config(), they do not overwrite the existing one of the same SSID.
  • When using different APs and adding more than 5, it is not clear which one gets overwritten. It is not oldest slot or first slot or last slot. It seems the newest can be placed in any of the 5 slots and it appears to be random... or at least I haven't discovered the logic empirically.

BUT MAINLY, I can't remove an item. I've tried...
  1. Looking for any API for this.
  2. Collect using wifi_station_get_ap_info() and delete all of them, then write those I want. But there is no delete all and writing multiple without connecting doesn't seem to work.
  3. Collect using wifi_station_get_ap_info() and just writing ones I want to keep, but the one I want to delete seems to keep lingering around in the list even if I write 5 of the others.

I'm at a loss... any suggestions?
Thanks

Statistics: Posted by Inquisitor — Mon Sep 27, 2021 10:10 pm — Replies 2 — Views 10174


]]>
2021-08-28T03:48:42+08:00 2021-08-28T03:48:42+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75212&p=100156#p100156 <![CDATA[Reduce number of components on my build]]>
I use an ESP8266 module with 1Mbyte flash, I would like for my project to ass FOTA feature, in this case I have approx 450ko for each binary app. When I use the sample code "native_ota\1MB_flash\new_to_new_no_old" the binary have 440ko flash size then work on my my module. But I just Add smatConfig and MQTT (very simple code for now) but the size go to 456ko. Then this binary is too large to enter in my module.
Because some of components is not needed for my application, I would like to know how I can reduce the number of component linked in my projet.

Thanks a lot for your help

Thierry

PS : I'm using last SDK from https://github.com/espressif/ESP8266_RT ... ree/master (ver 3.x)

Statistics: Posted by thierryc49 — Sat Aug 28, 2021 3:48 am — Replies 0 — Views 36384


]]>
2021-08-09T17:03:54+08:00 2021-08-09T17:03:54+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75196&p=100119#p100119 <![CDATA[ESP-WROOM-02 Hardware/Firmware Release Information]]>
Recent batch purchases have revealed a new style module package (well at least the printing on the can is quite different) and also what we believe to be new Firmware revision being reported.

The Firmware version on the earlier modules is reporting as: 1.5.3.0
On the newer purchased modules we are seeing a version of 1.6.2.0 being reported.

We have some connection issues with the newer style WiFi module, specifically with the "AT+CWLIF" command where on the newer module the IP address of the connected equipment on the WiFi network (e.g. my Laptop) is not returned when we send this command, the response from the WiFi module is just returns OK every time.
Any thoughts on this please?

Where can I find details of the Firmware release notes detailing the Firmware changes made. ?

Also I would like to be able to confirm if there have been any Hardware changes to the module ?


Attached: I have attached 2 photos, for the older style and newer style module packages.


Kind Regards,
Phil.
New_WiFi_Module.jpg

Old_WiFi_Module.jpg

Statistics: Posted by lucyelectric — Mon Aug 09, 2021 5:03 pm — Replies 1 — Views 5440


]]>
2021-08-09T06:52:27+08:00 2021-08-09T06:52:27+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75195&p=100117#p100117 <![CDATA[AT+CIPSEND fails to send complete string]]>
Here is the function that is in question.

void sendStringWUnderground(float windSpeedMPH, float gustWindSpeedMPH){
String cmd1 = "AT+CIPSTART=\"TCP\",\"";
cmd1 += "rtupdate.wunderground.com"; // wunderground
cmd1 += "\",80";
Serial.println(cmd1);
esp8266Module.println(cmd1);

if (esp8266Module.find("Error")) {
Serial.println("AT+CIPSTART error");
return;
}
String cmd = "GET /weatherstation/updateweatherstation.php?;
cmd += ID;
cmd += "&PASSWORD=";
cmd += PASSWORD;
cmd += "&dateutc=now";
cmd += "&winddir=";
cmd += getCalulatedDirection();
cmd += "&windspeedmph=";
cmd += windSpeedMPH;
cmd += "&windgustmph=";
cmd += gustWindSpeedMPH;
cmd += "&tempf=";
cmd += getTemperatureValue();
cmd += "&dewptf=";
cmd += getDewPointValue();
cmd += "&humidity=";
cmd += getHumidityValue();
cmd += "&softwaretype=Arduino-ESP8266&action=updateraw&realtime=1&rtfreq=30"; // &softwaretype=Arduino%20UNO%20version1
cmd += "/ HTTP/1.1\r\nHost: rtupdate.wunderground.com:80\r\nConnection: close\r\n\r\n";

cmd1 = "AT+CIPSEND=";
cmd1 += String(cmd.length());
Serial.println(cmd1);
esp8266Module.println(cmd1);
if (esp8266Module.find(">")) {
Serial.println(cmd);
esp8266Module.print(cmd);
Serial.println("Data send OK");
}
else {
esp8266Module.println("AT+CIPCLOSE");
Serial.println("Connection closed");
Serial.println(" ");
}
}

Statistics: Posted by miklstel — Mon Aug 09, 2021 6:52 am — Replies 1 — Views 6567


]]>
2021-08-03T17:22:36+08:00 2021-08-03T17:22:36+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75181&p=100098#p100098 <![CDATA[ESP8285, OTA binary file is to big]]>
When I traing to flash:

Code:

LD build/main.elf
/opt/xtensa-lx106-elf-gcc/bin/../lib/gcc/xtensa-lx106-elf/8.4.0/../../../../xtensa-lx106-elf/bin/ld: address 0x4028b92c of /home/dlut/GIT/esp8266_rtos_tamplate/build/main.elf section `.flash.rodata' is not within region `iram0_2_seg'
/opt/xtensa-lx106-elf-gcc/bin/../lib/gcc/xtensa-lx106-elf/8.4.0/../../../../xtensa-lx106-elf/bin/ld: address 0x4028b92c of /home/dlut/GIT/esp8266_rtos_tamplate/build/main.elf section `.flash.rodata' is not within region `iram0_2_seg'
collect2: error: ld returned 1 exit status
make: *** [/home/dlut/esp/ESP8266_RTOS_SDK/make/project.mk:510: /home/dlut/GIT/esp8266_rtos_tamplate/build/main.elf] Error 1



My partition table is:

Code:

nvs,      data, nvs,     0x9000,   0x4000
otadata,  data, ota,     0xd000,   0x2000
phy_init, data, phy,     0xf000,   0x1000
ota_0,    0,    ota_0,   0x10000,  0x78000
ota_1,    0,    ota_1,   0x88000, 0x78000


Size of binary file:

Code:

❯ ls -la  build/main.bin
-rw-r--r-- 1 dlut users 457120 Aug  3 10:26 build/main.bin



It is posible to use OTA on esp8285?

Statistics: Posted by dlut — Tue Aug 03, 2021 5:22 pm — Replies 1 — Views 5433


]]>
2021-07-27T10:54:50+08:00 2021-07-27T10:54:50+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75177&p=100088#p100088 <![CDATA[如何关闭phy_version: 1163.0, 665d56c, Jun 24 2020, 10:00:08, RTOS new的发送]]> Statistics: Posted by 人中狼 — Tue Jul 27, 2021 10:54 am — Replies 0 — Views 37991


]]>
2021-06-29T19:25:49+08:00 2021-06-29T19:25:49+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75161&p=100028#p100028 <![CDATA[UDP socket connection problem]]>
ESP-01 module got - 172.16.1.153, PC got -172.16.1.128.

PC to ESP-01 - ping OK.
ESP-01 to PC - ping OK.

Code:

AT+PING="172.16.1.128"
+119
OK


From PC side in Hercules open UDP - Module IP - 172.16.1.153, Port 1112, Local Port 8000 - Listen - UDP socket created.

ESP-01 module

AT+CIPSTART="UDP", "172.16.1.128", 8000, 1112, 2

IP ERROR

Why do I get an error?

Statistics: Posted by jenya7 — Tue Jun 29, 2021 7:25 pm — Replies 1 — Views 11027


]]>
2021-06-29T14:28:08+08:00 2021-06-29T14:28:08+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75160&p=100027#p100027 <![CDATA[AT commands return ERROR.]]>
ATE0
OK

AT+GMR
AT version:0.21.0.0
SDK version:0.9.5
OK

But most of the commands return ERROR. For example

AT+CWMODE_CUR=?
ERROR

What can be a problem?


It seems like I have an old version (AT version:0.21.0.0). Where I can download the newest version?

Statistics: Posted by jenya7 — Tue Jun 29, 2021 2:28 pm — Replies 1 — Views 5982


]]>
2021-06-09T16:27:40+08:00 2021-06-09T16:27:40+08:00 https://bbs.espressif.com:443/viewtopic.php?t=75148&p=99978#p99978 <![CDATA[ESP8266开发板使用问题:UART0接口不能发送;WIFI如何连接有认证的页面]]> usb-ttl一个
电脑
杜邦线若干。
连接: 用usb-ttl的rx,tx,gnd分别连接esp8266的uart0的tx ,rx和gnd.
usb-ttl和esp8266都通过usb连接到同一电脑的usb口。用sscom测试
两边的波特率115200
AT固件:安信可的出厂固件,mqtt固件都试过了.测试AT指令正常。
实验目的:验证esp8266的uart0串口能和usb-ttl做正常的串口数据收发。
问题:目前是esp8266能够通过sscom发送数据到usb-ttl接口。但是esp8266无法收到usb-ttl发过来的串口数据。
请问如何解决?谢谢~

二、我这里连接的wifi 是通过web认证页面登陆用户名和密码才能连接上网的,请问esp8266如何能实现认证联网。

Statistics: Posted by zrover — Wed Jun 09, 2021 4:27 pm — Replies 1 — Views 7525


]]>