Using a ESP8266 Wifi Module: Difference between revisions
Line 27: | Line 27: | ||
In the following steps you will flash the ESP8266 module with the dedicated firmware, upload some data files to the ESP8266 module, and connect the ESP8266 module to the STorM32 controller. | In the following steps you will flash the ESP8266 module with the dedicated firmware, upload some data files to the ESP8266 module, and connect the ESP8266 module to the STorM32 controller. | ||
# '''''Connecting the ESP8266 to the USB-TTL Adapter''''': | # '''''Connecting the ESP8266 to the USB-TTL Adapter:''''' For flashing, the USB-TTL adapter needs to be connected to the ESP, the GPIO0 pin connected with Gnd, and the ESP module be reset. These steps are explained in countless posts on the web, so please choose the one of your liking ([https://www.google.de/search?q=ESP8266+ESP-01+flashing&ie=utf-8&oe=utf-8&client=firefox-b&gfe_rd=cr&ei=wkhwWcq6GafVXqrsm1A google]). | ||
# '''''Flashing the ESP8266''''' | # '''''Flashing the ESP8266:''''' | ||
# '''''Uploading of Data Files to the ESP8266''''' | # '''''Uploading of Data Files to the ESP8266:''''' | ||
# '''''Connecting the ESP8266 to the STorM32''''' | # '''''Connecting the ESP8266 to the STorM32:''''' | ||
=== v3.x STorM32 Boards === | === v3.x STorM32 Boards === |
Revision as of 07:08, 20 July 2017
The information on this page refers to firmware v2.29e and higher.
Since firmware version v2.28e, communication via Wifi using the popular ESP8266 Wifi module is supported.
Ordering Information
Things to have at minimum:
- ESP8266 Wifi Module with 1MB (8Mb) flash
- USB-to-serial adapter (or a v3.x STorM32 board)
The ESP8266 Wifi module in the list is obvious. If you are using a v1.x STorM32 board, when you need in addition a USB-to-serial adapter. It is required for flashing the ESP8266 module with a dedicated firmware and upload other files to the ESP8266. However, you probably have one anyhow. For STorM32 v3.x boards this is not needed.
It is important to get the correct ESP8266 module. Quite many different versions are available, see e.g. [1]. You need a module with 1 MB (8 Mb) flash, since the STorM32's ESP firmware is made for that flash size.
In principle, any ESP8266 module with said flash size can be used. The STorM32 v3.x boards are however prepared for hosting a ESP-01 module. The original ESP-01 module has only 512 KB (4 Mb) flash and is thus not suitable. You need a "new" ESP-01 module, which nowadays are in fact mostly sold. These are typically black instead of blue, and come with a label "AI-Cloud inside", or as ESP-01s "s series". However, as always with this Asian stuff, one can't be absolutely sure, so buy with care.
Installation
Before the ESP8266 module can be used together with the STorM32, it needs to be flashed with a dedicated firmware, and some data files need to be uploaded. The procedure differs for the v1.x and v3.x STorM32 boards. Lastly, the ESP support needs to be enabled in the GUI (this step is identical for all boards).
v1.x STorM32 Boards
In the following steps you will flash the ESP8266 module with the dedicated firmware, upload some data files to the ESP8266 module, and connect the ESP8266 module to the STorM32 controller.
- Connecting the ESP8266 to the USB-TTL Adapter: For flashing, the USB-TTL adapter needs to be connected to the ESP, the GPIO0 pin connected with Gnd, and the ESP module be reset. These steps are explained in countless posts on the web, so please choose the one of your liking (google).
- Flashing the ESP8266:
- Uploading of Data Files to the ESP8266:
- Connecting the ESP8266 to the STorM32:
v3.x STorM32 Boards
GUI Configuration
Connect the STorM32 board via one of the serial ports to your PC, select the correct port in the [Port] field, and hit [Connect]. At this point in time, do not use the Wifi connection, but the standard serial connection.
Then browse to the [GUI:Setup] tab, and set the parameter Esp Configuration to the correct uart. For v1.x STorM32 boards choose “uart”, and for v3.x STorM32 boards choose “uart2”.
Write+Store the settings into the board, and repower. You must repower both the STorM32 and ESP boards, resetting the STorM32 board is not sufficient.
ESP8266 Operation Modes
The ESP can be run in different operation modes. You can set and configure the mode by corresponding entries in the storm32web.cfg file, which is located in the data file folder, and which you just uploaded together with some other files in that folder. In the following, we will use the default configuration, which is the AP Bridge mode. The ESP provides then an access point, with these credentials:
- SSID = STorM32 ESP
- password = thisisgreat
- url = 192.168.4.1
- port = 80
When powered up, you should find an entry 'STorM32 ESP' in the wlan list. For using it you will of course have to connect to it.
The AP Bridge mode allows us to access the STorM32 via both the GUI or the STorM32 Web App, but not both at the same time. Also, once the STorM32 Web App has been called, a connection to the GUI is not possible anymore (using first the GUI, and then the STorM32 Web App works fine, but not vice versa). In order to get access again via the GUI, you have to reset the STorM32 controller (or enter '192.168.4.1/bridge' in the browser).
Comment: This is so because for connecting with the GUI the ESP is switched internally to work as a bridge while for running the STorM32 Web App the ESP is switched internally to act as a web server. It is possible to switch from bridge to web server operation, but not back.
GUI
Using the Wifi connection with the GUI is trivial. When your wlan is connected to the access point 'STorM32 ESP', an entry 'ESP (STorM32 ESP)' should show up in the drop down list of the [Port] field. Select it, that's it. All GUI functions should work as normal.
Comment: It may happen that the connection slightly hangs at the first connection. This is because Windows has enumerated the access point, which lets the 'ESP (STorM32 ESP)' entry appear in the list, but is not yet really ready, as also indicated by the mouse cursor.