General and Mesh Demo-related questions

Brandon Brown
Posts: 1
Joined: Thu Feb 04, 2016 3:05 pm

General and Mesh Demo-related questions

Postby Brandon Brown » Thu Feb 04, 2016 3:12 pm

Hello,

My team is working on an ESP8266-based project and we have been working around the clock to understand the platform and become comfortable with it. Our goal is to develop a hardware component that utilizes mesh networking. We first began experimenting with ESP-01 units and then moved to ESP-12E units when the memory limitations of the ESP-01 became clear. Our development environment is a little funky, essentially Linux running on a Raspberry Pi with direct serial connection to the device on the Pi's GPIO pins. We looked at the AT firmware and the mesh example demo provided by Espressif, compiling with the Non-OS SDK and loading it onto the device with esptool. After a lot of experimentation, we have developed a substantial list of questions that we cannot answer. We have read a lot of Espressif-provided documentation and many, many developer anecdotes and experiences, so we apologize if any of these questions were already answered in official sources and we missed them.

1. Are the (512+512) and (1024+1024) spi sizes an attribute of the flash chip? Does a 32Mbit flash chip support both?
2. The functionality of the mesh demo that we've managed to confirm is that a root node (our working ESP-12) sends packets to the server, recieves the echoed packet back and then prints it to serial. Since we only observed network behavior of the root node sending packets to the server, what does the demo do on the mesh networking side, once the nodes connect to the mesh network presumably broadcast by the root node?
4. We've also noticed another node (our working ESP-01, which we managed to load the mesh demo onto using the no boot\eagle bin compilation style) will attempt to connect to a mesh SSID broadcast by the root node. Our ESP-01 seemed unable to connect to the mesh network or the Wi-Fi network, no matter how many times it tried. Could that be because of the small memory space available to it?
5. The mesh demo was sending data to the serial at a strange baud rate. We tried connecting at 9600, 74880, 115200 and other baud rates, but it appeared to be garbage. Then we added a line of code to the program initialization that configured the baud rate to a specific rate and suddenly serial communication worked. Why did we have to do this?
6. We have noted that the mesh demo periodically reboots itself. Our two theories is that the constant use of MESH_DEMO_PRINT is causing a stack overflow, or that somehow the demo is causing an issue with the watchdog timer. Do you have any information about this issue?
7. We attempted to load the latest AT firmware onto the ESP-12, and found that oit was just constantly spitting out garbage on the serial output. No baud rate made this appear correctly, and the transmission light was always active, like it was doing nothing but spitting out garbage. We evn tried compiling AT from scratch and used the memory locations for the upload as provided by the readme in the SDK (including the blank files and the deffault data file), but every time it was the same result of unusability. We even tried the baud rate fix we used for the mesh demo, and it failed. We then tried loading the last firmware that fit on the ESP-01 (version 0.22), using the memory locations that worked for the ESP-01, onto the ESP-12. It worked fine. What could explain this?
8. What are the benefits\drawbacks of using the bootloader over the non-boot (eagle.flash.bin) option?
9. What exactly is "eagle"?
10. What, exactly, is the user2.bin? Why is it optional?
11. The bootloader appears to be reporting that our chip is a 4Mbit chip, even though we have an ESP-12 with a 32Mbit chip. Are we misreading the bootloader screen or s there something else at play? (flash_id reports manufacturer e0 and chip 4016)
12. Is the Non-OS SDK open source?

Thank you for your time. We look forward to continuing to discover and explore intricacies of this promising platform.

ESP_Faye
Posts: 1646
Joined: Mon Oct 27, 2014 11:08 am

Re: General and Mesh Demo-related questions

Postby ESP_Faye » Wed Mar 02, 2016 10:06 am

Hi,
1. Yes, 32Mbit > 512KB+512KB, and 32Mbit > 1024KB+1024KB, so it supports both.
7. Do you mean that the latest AT firmware can only ouput garbage, but the AT_V0.22 can work fine on your module? The latest AT firmware needs 8Mbit or larger Flash, please try it with a larger Flash and select the right Flash size while downloading.
8. boot.bin+user.bin can upgrade the firmware through WiFi, the non-boot (eagle.flash.bin) option can not do that.
9. It is just a name we gave it.
10. boot.bin+user.bin can upgrade the firmware through WiFi, run user1.bin to download a new user2.bin as upgrade, more details in documentation "99C-ESP8266__OTA_Upgrade.pdf"
11. Please use ESP Flash Download Tool to download bin files into your Flash, select the corresponding Flash size on the tool.
12. Sorry that it is not open source.

We will answer the other questions later, thanks for your interest in ESP8266 !

ESP_Alen

Re: General and Mesh Demo-related questions

Postby ESP_Alen » Thu Mar 03, 2016 9:54 pm

2. all the nodes which joined mesh network sent one packet per 5 seconds to server using unicast. mesh supports bcast/mcast/unicast/P2P communication among nodes. the packet used in demo is unicast. when root device receive packet from local server, it will forward the packet to device using unicast, not bcast.

4. We have no demo board using ESP-01, and we never run mesh on ESP-01. maybe free heap is limited for mesh.

5. We have provided the API to set baud rate for serial port, please refer to API document.
viewtopic.php?f=67&t=225

6. We can’t reproduce the issue you described.
We have released new version of mesh demo, please clone the current mesh demo code from github.
https://github.com/espressif/ESP8266_MESH_DEMO

I'm R&D of esp-mesh, any problem about esp-mesh, please feel free to sent mail to xiaoyuezhen@espressif.com, i will reply you as soon as possible.

Who is online

Users browsing this forum: No registered users and 1 guest