esp8266 wifi-serial bridge, outbound TCP, and arduino/AVR/LPC/NXP programmer
I have been unable to reproduce the problem so far, all my modules work fine. The symptoms are that after flashing the esp8266 doesn't boot into the firmware and only one line is printed on the uart. I'm trying to find a solution but without being able to reproduce the problem it's a bit difficult.
For a stable release, please use Release 3.0.14
Version v3.2 includes some improvements and bug fixes over v3.0.14, notably support for programming Arduino Mega with an ATmega2560 chip. The first alpha for v3.2 was released June 17th 2017 as v3.1.85. (v3.1 was never released further because I messed-up the numbering, so I moved on to v3.2.x.)
Download: http://s3.voneicken.com/esp-link/esp-link-v3.2.47-g9c6530d.tgz
For flashing and upgrade instructions see FLASHING.md
Version v3.0 includes many bug fixes and several improvements over v2.2.3. v3.0.14 was released as an alpha Dec 16, 2016 and promoted to stable Jun 17, 2017.
Download: http://s3.voneicken.com/esp-link/esp-link-v3.0.14-g963ffbb.tgz
For flashing and upgrade instructions see FLASHING.md
Known issues:
For a stable release, please use https://github.com/jeelabs/esp-link/releases/tag/v2.2.3
Version 3.0 includes many bug fixes and minor improvements over 2.2.3 and in addition, it includes a custom web pages features and rudimentary support for outgoing UDP and TCP connections initiated by the attached uC.
Download: http://s3.voneicken.com/esp-link/esp-link-v3.0.alpha0-d0377bd.tgz
For flashing and upgrade instructions see FLASHING.md
Version 2.2.3 is close to 2.2.beta2, which has been stable, but includes a number of bug fixes. If you have trouble with 2.2.3 please try 2.2.beta2.
The short version for the serial install is:
boot_v1.5.bin
from the official esp_iot_sdk_v1.5.1
and included in the release tgz to 0x00000
blank.bin
from the official SDK and also included in the tgz to 0x3FE000
user1.bin
to 0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MByte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.3/esp-link-v2.2.3.tgz | \
tar xzf -
cd esp-link-v2.2.3
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 32m -ff 80m \
0x00000 boot_v1.5.bin 0x1000 user1.bin 0x3FE000 blank.bin
I use a high baud rate as shown above because I'm impatient, but that's not required.
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.3/esp-link-v2.2.3.tgz | \
tar xzf -
cd esp-link-v2.2.3
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 4m -ff 40m \
0x00000 boot_v1.5.bin 0x1000 user1.bin 0x7E000 blank.bin
The `-fs 4m -ff40m' options say 4Mbits and 40Mhz as opposed to 32Mbits at 80Mhz for the 4MByte flash modules. Note the different address for blank.bin (the SDK stores its wifi settings near the end of flash, so it changes with flash size).
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.3/esp-link-v2.2.3.tgz | \
tar xzf -
cd esp-link-2.2.3
./wiflash <esp-hostname> user1.bin user2.bin
On Linux use esptool.py to flash the esp8266. If you're a little python challenged then the following install instructions might help:
Install ez_setup with the following two commands (I believe this will do something reasonable if you already have it):
wget https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py
Install esptool.py:
git clone https://github.com/themadinventor/esptool.git
cd esptool
python setup.py install
cd ..
esptool.py -h
For a stable release, please use https://github.com/jeelabs/esp-link/releases/tag/v2.1.7
The short version for the serial install is:
boot_v1.5.bin
from the official esp_iot_sdk_v1.5.1
and included in the release tgz to 0x00000
blank.bin
from the official SDK and also included in the tgz to 0x3FE000
user1.bin
to 0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MByte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta2/esp-link-v2.2.beta2.tgz | \
tar xzf -
cd esp-link-v2.2.beta2
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 32m -ff 80m \
0x00000 boot_v1.5.bin 0x1000 user1.bin 0x3FE000 blank.bin
I use a high baud rate as shown above because I'm impatient, but that's not required.
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta2/esp-link-v2.2.beta2.tgz | \
tar xzf -
cd esp-link-v2.2.beta2
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 4m -ff 40m \
0x00000 boot_v1.5.bin 0x1000 user1.bin 0x7E000 blank.bin
The `-fs 4m -ff40m' options say 4Mbits and 40Mhz as opposed to 32Mbits at 80Mhz for the 4MByte flash modules. Note the different address for blank.bin (the SDK stores its wifi settings near the end of flash, so it changes with flash size).
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta2/esp-link-v2.2.beta2.tgz | \
tar xzf -
cd esp-link-2.2.beta2
./wiflash <esp-hostname> user1.bin user2.bin
On Linux use esptool.py to flash the esp8266. If you're a little python challenged then the following install instructions might help:
Install ez_setup with the following two commands (I believe this will do something reasonable if you already have it):
wget https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py
Install esptool.py:
git clone https://github.com/themadinventor/esptool.git
cd esptool
python setup.py install
cd ..
esptool.py -h
For a stable release, please use https://github.com/jeelabs/esp-link/releases/tag/v2.1.7
The short version for the serial install is:
boot_v1.5.bin
from the official esp_iot_sdk_v1.5.1
and included in the release tgz to 0x00000
blank.bin
from the official SDK and also included in the tgz to 0x3FE000
user1.bin
to 0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MByte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta1/esp-link-v2.2.beta1.tgz | \
tar xzf -
cd esp-link-v2.2.beta1
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 32m -ff 80m \
0x00000 boot_v1.5.bin 0x1000 user1.bin 0x3FE000 blank.bin
I use a high baud rate as shown above because I'm impatient, but that's not required.
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta1/esp-link-v2.2.beta1.tgz | \
tar xzf -
cd esp-link-v2.2.beta1
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 4m -ff 40m \
0x00000 boot_v1.5.bin 0x1000 user1.bin 0x7E000 blank.bin
The `-fs 4m -ff40m' options say 4Mbits and 40Mhz as opposed to 32Mbits at 80Mhz for the 4MByte flash modules. Note the different address for blank.bin (the SDK stores its wifi settings near the end of flash, so it changes with flash size).
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta1/esp-link-v2.2.beta1.tgz | \
tar xzf -
cd esp-link-2.2.beta1
./wiflash <esp-hostname> user1.bin user2.bin
On Linux use esptool.py to flash the esp8266. If you're a little python challenged then the following install instructions might help:
Install ez_setup with the following two commands (I believe this will do something reasonable if you already have it):
wget https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py
Install esptool.py:
git clone https://github.com/themadinventor/esptool.git
cd esptool
python setup.py install
cd ..
esptool.py -h
For a stable release, please use https://github.com/jeelabs/esp-link/releases/tag/v2.1.7
The short version for the serial install is:
boot_v1.4(b1).bin
from the official esp_iot_sdk_v1.5.0
and included in the release tgz to 0x00000
blank.bin
from the official SDK and also included in the tgz to 0x3FE000
user1.bin
to 0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MByte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta0/esp-link-v2.2.beta0.tgz | \
tar xzf -
cd esp-link-v2.2.beta0
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 32m -ff 80m \
0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x3FE000 blank.bin
I use a high baud rate as shown above because I'm impatient, but that's not required.
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta0/esp-link-v2.2.beta0.tgz | \
tar xzf -
cd esp-link-v2.2.beta0
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 4m -ff 40m \
0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x7E000 blank.bin
The `-fs 4m -ff40m' options say 4Mbits and 40Mhz as opposed to 32Mbits at 80Mhz for the 4MByte flash modules. Note the different address for blank.bin (the SDK stores its wifi settings near the end of flash, so it changes with flash size).
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.2.beta0/esp-link-v2.2.beta0.tgz | \
tar xzf -
cd esp-link-2.2.beta0
./wiflash <esp-hostname> user1.bin user2.bin
On Linux use esptool.py to flash the esp8266. If you're a little python challenged then the following install instructions might help:
Install ez_setup with the following two commands (I believe this will do something reasonable if you already have it):
wget https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py
Install esptool.py:
git clone https://github.com/themadinventor/esptool.git
cd esptool
python setup.py install
cd ..
esptool.py -h
Version 2.1.7 is identical to 2.1.beta6. The latter has worked well for a while and a 2.2 series with new features is about to start, so this is a good time to promote the code in 2.1.beta6 to release status.
This version uses the Espressif IOT SDK version v1.4.1_pre7.
The short version for the serial install is:
boot_v1.4(b1).bin
from the official esp_iot_sdk_v1.4.0
and included in the release tgz to 0x00000
blank.bin
from the official SDK and also included in the tgz to 0x3FE000
user1.bin
to 0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MByte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.7/esp-link-v2.1.7.tgz | \
tar xzf -
cd esp-link-v2.1.7
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 32m -ff 80m \
0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x3FE000 blank.bin
I use a high baud rate as shown above because I'm impatient, but that's not required.
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.7/esp-link-v2.1.7.tgz | \
tar xzf -
cd esp-link-v2.1.7
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 4m -ff 40m \
0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x7E000 blank.bin
The `-fs 4m -ff40m' options say 4Mbits and 40Mhz as opposed to 32Mbits at 80Mhz for the 4MByte flash modules. Note the different address for blank.bin (the SDK stores its wifi settings near the end of flash, so it changes with flash size).
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.7/esp-link-v2.1.7.tgz | \
tar xzf -
cd esp-link-2.1.7
./wiflash <esp-hostname> user1.bin user2.bin
On Linux use esptool.py to flash the esp8266. If you're a little python challenged then the following install instructions might help:
Install ez_setup with the following two commands (I believe this will do something reasonable if you already have it):
wget https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py
Install esptool.py:
git clone https://github.com/themadinventor/esptool.git
cd esptool
python setup.py install
cd ..
esptool.py -h
Please use release 2.1.7 instead of this one, they're identical, but somehow github sorts them in an unfortunate order
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v2.0.rc1
This version uses the Espressif IOT SDK version v1.4.1_pre7.
The short version for the serial install is:
boot_v1.4(b1).bin
from the official esp_iot_sdk_v1.4.0
and included in the release tgz to 0x00000
blank.bin
from the official SDK and also included in the tgz to 0x3FE000
user1.bin
to 0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MByte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta6/esp-link-v2.1.beta6.tgz | tar xzf -
cd esp-link-v2.1.beta6
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 32m -ff 80m 0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x3FE000 blank.bin
I use a high baud rate as shown above because I'm impatient, but that's not required. For a 512KB flash module use `-fs 4m -ff40m' (that says 4Mbits and 40Mhz as opposed to 32Mbits at 80Mhz for the 4MByte flash modules).
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta6/esp-link-v2.1.beta6.tgz | tar xzf -
cd esp-link-2.1.beta6
./wiflash <esp-hostname> user1.bin user2.bin
On Linux use esptool.py to flash the esp8266. If you're a little python challenged then the following install instructions might help:
Install ez_setup with the following two commands (I believe this will do something reasonable if you already have it):
wget https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py
Install esptool.py:
git clone https://github.com/themadinventor/esptool.git
cd esptool
python setup.py install
cd ..
esptool.py -h
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v2.0.rc1
This version uses the Espressif IOT SDK version v1.4.1_pre7.
The short version for the serial install is:
boot_v1.4(b1).bin
from the official esp_iot_sdk_v1.4.0
and included in the release tgz to 0x00000
blank.bin
from the official SDK and also included in the tgz to 0x3FE000
user1.bin
to 0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MByte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta5/esp-link-v2.1.beta5.tgz | tar xzf -
cd esp-link-v2.1.beta5
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 32m -ff 80m 0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x3FE000 blank.bin
I use a high baud rate as shown above because I'm impatient, but that's not required. For a 512KB flash module use `-fs 4m -ff40m' (that says 4Mbits and 40Mhz as opposed to 32Mbits at 80Mhz for the 4MByte flash modules).
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta5/esp-link-v2.1.beta5.tgz | tar xzf -
cd esp-link-2.1.beta5
./wiflash <esp-hostname> user1.bin user2.bin
On Linux use esptool.py to flash the esp8266. If you're a little python challenged then the following install instructions might help:
Install ez_setup with the following two commands (I believe this will do something reasonable if you already have it):
wget https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py
Install esptool.py:
git clone https://github.com/themadinventor/esptool.git
cd esptool
python setup.py install
cd ..
esptool.py -h