This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
esp8266_firmware_update [2014/11/08 16:36] g4wnc-mike |
esp8266_firmware_update [2020/06/27 23:02] (current) |
||
---|---|---|---|
Line 2: | Line 2: | ||
- | The instructions below are based on my experiences whilst upgrading my ESP8266 | + | Before using the ESP8266 module, the firmware needs to be updated to provide wider router support. |
===== Preparation ===== | ===== Preparation ===== | ||
Line 18: | Line 18: | ||
The firmware tool is called XTCOM UTIL.zip | The firmware tool is called XTCOM UTIL.zip | ||
- | Before you start the update, make sure your ESP8266 is working normally. Connect as above but leave GPIO0 floating | + | Before you start the update, make sure your ESP8266 is working normally |
+ | - Connect-up as above but leave GPIO0 floating. | ||
+ | - Access | ||
+ | - Set the terminal s/w baud rate to either 57600 or 115200 | ||
+ | - Power-up the ESP8266 | ||
+ | - If all is well, try some AT commands. | ||
+ | - Try AT+RST which should re-start the module. | ||
+ | - Try AT+GMR | ||
+ | -** NB:** When entering AT commands there are no spaces and you cannot use backspace | ||
- | ===== Firmware Update ===== | + | If all is well, you can move on to the firmware |
- | Her are the steps required | + | |
+ | ===== Firmware Update ===== | ||
+ | ==== Windows ==== | ||
+ | Here are the steps required to update the firmware: | ||
+ | {{ : | ||
+ | {{ : | ||
- Put the ESP8266 into firmware update mode by grounding GPIO0 and re-cycling the power. | - Put the ESP8266 into firmware update mode by grounding GPIO0 and re-cycling the power. | ||
- Launch XTCOM_UTIL. | - Launch XTCOM_UTIL. | ||
- | - In the Tools menu choose Config Device and set the Com port and set the baud rate to the value you used during testing (57600 or 115200). Click Open but **don' | + | - In the Tools menu choose Config Device and set the Com port and set the baud rate to the value you used during testing (57600 or 115200). Click Open then Connect |
- From the API TEST(A) menu choose Flash Image Download and browse to the downloaded firmware .bin file | - From the API TEST(A) menu choose Flash Image Download and browse to the downloaded firmware .bin file | ||
- Click DownLoad to start the update - the progress bar will confirm it's under way. | - Click DownLoad to start the update - the progress bar will confirm it's under way. | ||
- That's it! | - That's it! | ||
+ | ==== Linux or OS X ==== | ||
+ | |||
+ | - Ensure that you have python and the pyserial module installed | ||
+ | - Put the ESP8266 into firmware update mode by grounding GPIO0 and re-cycling the power. | ||
+ | - Get the esptool from [[https:// | ||
+ | - In esptool.py change the device from ttyUSB0 to what ever your usb-serial is | ||
+ | - Run ./ | ||
+ | - The script will write the firmware to the device. | ||
===== Testing ===== | ===== Testing ===== | ||
On completion of the update, disconnect GPIO0 from ground and re-cycle the power. | On completion of the update, disconnect GPIO0 from ground and re-cycle the power. | ||
- | You can now use the serial connection to try a few AT commands. NB: Following the update the default serial baud rate changes to 9600 and AT commands require a CR/LF combination to enter commands. | + | You can now use the serial connection to try a few AT commands. |
+ | |||
+ | **NB:** Following the update, the default serial baud rate changes to 9600 and AT commands require a CR+LF combination to signal completion. Some terminal programs (PuTTY) refuse to send the CR+LF combination so you need to press Enter followed by CTRL-j. An alternative terminal that does handle CR+LF is Termite: [[http:// | ||
+ | |||
+ | **NB:** When entering AT commands | ||
+ | |||
+ | To connect to your local WiFi network use the following commands: | ||
+ | * To set the correct mode: AT+CWMODE=1 | ||
+ | * To connect to your network: AT+CWJAP=" | ||
+ | * To get the IP address: AT+CIFSR | ||
+ | * To get the ssid of the connected router: AT+CWJAP? | ||
+ | |||
+ | ===== Setup an ESP8266 Based Gateway ===== | ||
+ | |||
+ | Chris Stubbs has done the pioneering work and produced software to control the ESP8266 from an Arduino based board. The details can be found [[ideas: | ||
+ | |||
+ | **NB:** When connecting the Moteino or other Arduino board to the ESP8266 the Tx and Rx lines need to be reversed, i.e.Tx on Arduino goes to Rx on Moteino and vice-versa. | ||
+ | |||
+ | ===== Next Steps ===== | ||
+ | It should be possible to use the SoC processor in the ESP8266 to control the RFM69 directly thereby eliminating the need for the Arduino but that code hasn't been written yet. | ||