Releases: jeelabs/esp-link
Release 2.1.beta4
This is a beta release
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v2.0.rc1
Warnings
- If your module has a 512KB version of esp-link V1 flashed you cannot upgrade over-the-air,
you have to serially flash the larger firmware - sorry. - If you are using an Adafruit Huzzah module then you should select the esp-bridge pin-out (default) and add an external 4.7k-10k pull-up directly on the esp module's RX pin, alternatively, recompile esp-link to change https://github.com/jeelabs/esp-link/blob/master/serial/uart.c#L63 to PIN_PULLUP_EN, this will be a UI option in the next release...
Features:
- port 23 transparent bridge, port 2323 programming bridge
- AVR, ARM & esp8266 flashing support (port 23 and 2323)
- built-in programmer for AVRs with optiboot (typical for Arduinos)
- outbound TCP connections from attached micro-controller to the internet
- outbound HTTP REST requests from attached microcontroller using espduino library and protocol
- built-in MQTT client that can be used by attached uC using espduino library and protocol
- over-the-air (OTA) reflashing of the esp if your module has 1MB or more flash (e.g. esp-12 but not esp-01)
- console page to see the attached uC's output
- simple debug log page to view the esp-link's own os_printf output
- buttons to reset the uC and change the baud rate
- pin configuration selector to change GPIO function assignments
- web page to configure MQTT client and built-in status message publishing
- saving of configuration changes in flash
Changes since v2.1.beta3:
- disabled mDNS 'cause free complains about memory already freed: I think the SDK's mDNS is buggy...
- added option to select uart1 for debug log
- added drop-down for baud rates, warning pgm baud rate selection is non-functional
- fixed style of uC console page, now 100% height
Changes since v2.1.beta2:
- uC console text input courtesy https://github.com/katyo
- first cut at mDNS support, not happy yet...
- first cut at supporting hidden SSIDs
- improved click-to-edit name/description fields
- extended AP+STA time before switching to STA-only
Changes since v2.1.beta1:
- new esp-link summary card on home page with, among other things, info on the flash chip and configured size
- new editable 12-character "name" displayed on home page and in left menu bar so you know which esp-link module you're looking at
- new editable 128 character "description" displayed on home page so you can leave yourself a memo about this module
Changes since v2.0.rc1:
- single image fits any esp module flash size, no OTA reflashing of esp-link with 512KB modules though
- built-in optiboot programmer
- attempt to fix crash when scanning and there are too many access points around (I have not been able to really test the fix yet)
This version uses the Espressif IOT SDK version 1.4.0.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.4.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x3FE000
- flash
user1.bin
to0x01000
- be sure to use the commandline flags when flashing the bootloader to set the correct flash size
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.beta4/esp-link-v2.1.beta4.tgz | tar xzf -
cd esp-link-v2.1.beta4
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).
Upgrade over-the-air
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta4/esp-link-v2.1.beta4.tgz | tar xzf -
cd esp-link-2.1.beta4
./wiflash <esp-hostname> user1.bin user2.bin
Installing esptool.py
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
Release 2.1.beta3
This is a beta release
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v2.0.rc1
Warnings
- If your module has a 512KB version of esp-link V1 flashed you cannot upgrade over-the-air,
you have to serially flash the larger firmware - sorry. - If you are using an Adafruit Huzzah module then you should select the esp-bridge pin-out (default) and add an external 4.7k-10k pull-up directly on the esp module's RX pin, alternatively, recompile esp-link to change https://github.com/jeelabs/esp-link/blob/master/serial/uart.c#L63 to PIN_PULLUP_EN, this will be a UI option in the next release...
Features:
- port 23 transparent bridge, port 2323 programming bridge
- AVR, ARM & esp8266 flashing support (port 23 and 2323)
- built-in programmer for AVRs with optiboot (typical for Arduinos)
- outbound TCP connections from attached micro-controller to the internet
- outbound HTTP REST requests from attached microcontroller using espduino library and protocol
- built-in MQTT client that can be used by attached uC using espduino library and protocol
- over-the-air (OTA) reflashing of the esp if your module has 1MB or more flash (e.g. esp-12 but not esp-01)
- console page to see the attached uC's output
- simple debug log page to view the esp-link's own os_printf output
- buttons to reset the uC and change the baud rate
- pin configuration selector to change GPIO function assignments
- web page to configure MQTT client and built-in status message publishing
- saving of configuration changes in flash
Changes since v2.1.beta2:
- uC console text input courtesy https://github.com/katyo
- first cut at mDNS support, not happy yet...
- first cut at supporting hidden SSIDs
- improved click-to-edit name/description fields
- extended AP+STA time before switching to STA-only
Changes since v2.1.beta1:
- new esp-link summary card on home page with, among other things, info on the flash chip and configured size
- new editable 12-character "name" displayed on home page and in left menu bar so you know which esp-link module you're looking at
- new editable 128 character "description" displayed on home page so you can leave yourself a memo about this module
Changes since v2.0.rc1:
- single image fits any esp module flash size, no OTA reflashing of esp-link with 512KB modules though
- built-in optiboot programmer
- attempt to fix crash when scanning and there are too many access points around (I have not been able to really test the fix yet)
This version uses the Espressif IOT SDK version 1.4.0.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.4.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x3FE000
- flash
user1.bin
to0x01000
- be sure to use the commandline flags when flashing the bootloader to set the correct flash size
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.beta3/esp-link-v2.1.beta3.tgz | tar xzf -
cd esp-link-v2.1.beta3
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).
Upgrade over-the-air
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta3/esp-link-v2.1.beta3.tgz | tar xzf -
cd esp-link-2.1.beta3
./wiflash <esp-hostname> user1.bin user2.bin
Installing esptool.py
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
Release 2.1.beta2
This is a beta release
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v2.0.rc1
Warnings
- If your module has a 512KB version of esp-link V1 flashed you cannot upgrade over-the-air,
you have to serially flash the larger firmware - sorry. - If you are using an Adafruit Huzzah module then you should select the esp-bridge pin-out (default) and add an external 4.7k-10k pull-up directly on the esp module's RX pin, alternatively, recompile esp-link to change https://github.com/jeelabs/esp-link/blob/master/serial/uart.c#L63 to PIN_PULLUP_EN, this will be a UI option in the next release...
Features:
- port 23 transparent bridge, port 2323 programming bridge
- AVR, ARM & esp8266 flashing support (port 23 and 2323)
- built-in programmer for AVRs with optiboot (typical for Arduinos)
- outbound TCP connections from attached micro-controller to the internet
- outbound HTTP REST requests from attached microcontroller using espduino library and protocol
- built-in MQTT client that can be used by attached uC using espduino library and protocol
- over-the-air (OTA) reflashing of the esp if your module has 1MB or more flash (e.g. esp-12 but not esp-01)
- console page to see the attached uC's output
- simple debug log page to view the esp-link's own os_printf output
- buttons to reset the uC and change the baud rate
- pin configuration selector to change GPIO function assignments
- web page to configure MQTT client and built-in status message publishing
- saving of configuration changes in flash
Changes since v2.1.beta1:
- new esp-link summary card on home page with, among other things, info on the flash chip and configured size
- new editable 12-character "name" displayed on home page and in left menu bar so you know which esp-link module you're looking at
- new editable 128 character "description" displayed on home page so you can leave yourself a memo about this module
Changes since v2.0.rc1:
- single image fits any esp module flash size, no OTA reflashing of esp-link with 512KB modules though
- built-in optiboot programmer
- attempt to fix crash when scanning and there are too many access points around (I have not been able to really test the fix yet)
This version uses the Espressif IOT SDK version 1.4.0.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.4.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x3FE000
- flash
user1.bin
to0x01000
- be sure to use the commandline flags when flashing the bootloader to set the correct flash size
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.beta2/esp-link-v2.1.beta2.tgz | tar xzf -
cd esp-link-v2.1.beta2
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).
Upgrade over-the-air
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta2/esp-link-v2.1.beta2.tgz | tar xzf -
cd esp-link-2.1.beta2
./wiflash <esp-hostname> user1.bin user2.bin
Installing esptool.py
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
Release 2.1.beta1
This is a beta release
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v2.0.rc1
Warnings
- If your module has a 512KB version of esp-link V1 flashed you cannot upgrade over-the-air,
you have to serially flash the larger firmware - sorry. - If you are using an Adafruit Huzzah module then you should select the esp-bridge pin-out (default) and add an external 4.7k-10k pull-up directly on the esp module's RX pin, alternatively, recompile esp-link to change https://github.com/jeelabs/esp-link/blob/master/serial/uart.c#L63 to PIN_PULLUP_EN, this will be a UI option in the next release...
Features:
- port 23 transparent bridge, port 2323 programming bridge
- AVR, ARM & esp8266 flashing support (port 23 and 2323)
- built-in programmer for AVRs with optiboot (typical for Arduinos)
- outbound TCP connections from attached micro-controller to the internet
- outbound HTTP REST requests from attached microcontroller using espduino library and protocol
- built-in MQTT client that can be used by attached uC using espduino library and protocol
- over-the-air (OTA) reflashing of the esp if your module has 1MB or more flash (e.g. esp-12 but not esp-01)
- console page to see the attached uC's output
- simple debug log page to view the esp-link's own os_printf output
- buttons to reset the uC and change the baud rate
- pin configuration selector to change GPIO function assignments
- web page to configure MQTT client and built-in status message publishing
- saving of configuration changes in flash
Changes since v2.0.rc1:
- single image fits any esp module flash size, no OTA reflashing of esp-link with 512KB modules though
- built-in optiboot programmer
This version uses the Espressif IOT SDK version 1.4.0.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.4.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x3FE000
- flash
user1.bin
to0x01000
- be sure to use the commandline flags when flashing the bootloader to set the correct flash size
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.beta1/esp-link-v2.1.beta1.tgz | tar xzf -
cd esp-link-v2.1.beta1
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).
Upgrade over-the-air
To upgrade from an earlier version 2.x of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.1.beta1/esp-link-v2.1.beta1.tgz | tar xzf -
cd esp-link-2.1.beta1
./wiflash <esp-hostname> user1.bin user2.bin
Installing esptool.py
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
Release 2.0.rc1
This is a release candidate
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v1.0.4
Warnings
- This release does not fit into 512KB flash, it requires larger flash (e.g. as typically found in esp-12 modules).
If your module has 512KB flash, try the latest V1 release. - If your module has a 512KB version of esp-link V1 flashed you cannot upgrade over-the-air,
you have to serially flash the larger firmware - sorry. - If you are using an Adafruit Huzzah module then you should select the esp-bridge pin-out (default) and add an external 4.7k-10k pull-up directly on the esp module's RX pin, alternatively, recompile esp-link to change https://github.com/jeelabs/esp-link/blob/master/serial/uart.c#L63 to PIN_PULLUP_EN, this will be a UI option in the next release...
Features:
- over-the-air (OTA) reflashing of the esp
- port 23 transparent bridge, port 2323 programming bridge
- AVR & ARM flashing support (port 23 and 2323)
- outbound TCP connections from attached micro-controller to the internet
- outbound HTTP REST requests from attached microcontroller using espduino library and protocol (NEW in 2.0)
- built-in MQTT client that can be used by attached uC using espduino library and protocol (NEW in 2.0)
- console page to see the attached uC's output
- simple debug log page to view the esp-link's own os_printf output
- buttons to reset the uC and change the baud rate
- pin configuration selector to change GPIO function assignments
- web page to configure MQTT client and built-in status message publishing
- saving of configuration changes in flash
Changes since v2.0.beta2:
- new feature: MQTT client
- tweaked AVR programming (drop initial sync chars)
- improved serial buffering for continuous transmission
- switch to SDK 1.4.0
This version uses the Espressif IOT SDK version 1.4.0.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.4.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x3FE000
- flash
user1.bin
to0x01000
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.0.rc1/esp-link-v2.0.rc1.tgz | tar xzf -
cd esp-link-v2.0.rc1
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.
Upgrade over-the-air
To upgrade from an earlier version of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.0.rc1/esp-link-v2.0.rc1.tgz | tar xzf -
cd esp-link-2.0.rc1
./wiflash <esp-hostname> user1.bin user2.bin
Installing esptool.py
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
Release 1.0.4
Release with over-the-air (OTA) reflashing of the esp, port 23 transparent bridge as well as AVR & ARM flashing support. Simple debug log page to view the esp-link's own os_printf output via the web and a console page to see the attached uC's output. Buttons to reset the uC and change the baud rate. A pin configuration selector to change GPIO function assignments. Saving of configuration changes in flash.
Changes since v1.0.3:
- Increase serbridge buffer to 2*1460 bytes and ensure esp-link doesn't lock-up on printing errors for buffer overflow
Notes:
- To compile this version from scratch check out the corresponding git tag, e.g.
git checkout v1.0.x
(for the desired x) - To compile the latest V1 and be able to commit to your repo, check out the v1.0 git branch
- If you're looking for REST and MQTT support you want to look into v2.x.x releases.
- This version uses the Espressif IOT SDK version 1.3.0.
- UART pin swap: you can select a uart pin swap configuration which uses gpio13 as UART RX and gpio15 as UART TX. This avoids transmitting the boot time messages from the ROM bootloader onto the TX pin.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.3.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x7e000
or0x3FE000
- flash
user1.bin
to0x01000
On Linux using esptool.py this turns into the following:
curl -L https://github.com/jeelabs/esp-link/releases/download/v1.0.4/esp-link.tgz | tar xzf -
cd esp-link
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash 0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x7e000 blank.bin
Download https://github.com/jeelabs/esp-link/releases/download/v1.0.4/esp-link-4MB.tgz
if you would like the version for the 4MB flash chip, in that case blank.bin
has to be flashed to 0x3FE000
. You can use a baud rate slower than shown and wait longer...
Upgrade over-the-air
To upgrade from an earlier version of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v1.0.4/esp-link.tgz | tar xzf -
cd esp-link
./wiflash <esp-hostname> user1.bin user2.bin
Note that you cannot OTA upgrade from a 512KB version to a 4MB version, you have to do a serial flash for this.
Installing esptool.py
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
Release 1.0.3
Release with over-the-air (OTA) reflashing of the esp, port 23 transparent bridge as well as AVR & ARM flashing support. Simple debug log page to view the esp-link's own os_printf output via the web and a console page to see the attached uC's output. Buttons to reset the uC and change the baud rate. A pin configuration selector to change GPIO function assignments. Saving of configuration changes in flash.
Changes since v1.0.1: rewrite of serial bridge buffering to fix problem with high data rates
(If you're looking for REST and MQTT support you want to look into v2.x.x releases.)
This version uses the Espressif IOT SDK version 1.3.0.
UART pin swap: you can select a uart pin swap configuration which uses gpio13 as UART RX and gpio15 as UART TX. This avoids transmitting the boot time messages from the ROM bootloader onto the TX pin.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.3.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x7e000
or0x3FE000
- flash
user1.bin
to0x01000
On Linux using esptool.py this turns into the following:
curl -L https://github.com/jeelabs/esp-link/releases/download/v1.0.3/esp-link.tgz | tar xzf -
cd esp-link
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash 0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x7e000 blank.bin
Download https://github.com/jeelabs/esp-link/releases/download/v1.0.3/esp-link-4MB.tgz
if you would like the version for the 4MB flash chip, in that case blank.bin
has to be flashed to 0x3FE000
. You can use a baud rate slower than shown and wait longer...
Upgrade over-the-air
To upgrade from an earlier version of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v1.0.3/esp-link.tgz | tar xzf -
cd esp-link
./wiflash <esp-hostname> user1.bin user2.bin
Note that you cannot OTA upgrade from a 512KB version to a 4MB version, you have to do a serial flash for this.
Installing esptool.py
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
Release 2.0.beta2
This is a beta release
For a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v1.0.1
Warnings
- This release does not fit into 512KB flash, it requires larger flash (e.g. as typically found in esp-12 modules).
If your module has 512KB flash, try the latest V1 release. - If your module has a 512KB version of esp-link V1 flashed you cannot upgrade over-the-air,
you have to serially flash the larger firmware - sorry.
Features:
- over-the-air (OTA) reflashing of the esp
- port 23 transparent bridge
- AVR & ARM flashing support
- outbound TCP connections from attached micro-controller to the internet (NEW in 2.0)
- outbound HTTP REST requests from attached microcontroller using espduino library and protocol
- console page to see the attached uC's output
- simple debug log page to view the esp-link's own os_printf output
- buttons to reset the uC and change the baud rate
- pin configuration selector to change GPIO function assignments
- saving of configuration changes in flash
Changes since v2.0.beta1:
- new feature: outbound HTTP REST requests
This version uses the Espressif IOT SDK version 1.3.0.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.3.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x3FE000
- flash
user1.bin
to0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MBte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.0.beta2/esp-link-v2.0.beta2-4MB.tgz | tar xzf -
cd esp-link-v2.0.beta2
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.
Upgrade over-the-air
To upgrade from an earlier version of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.0.beta2/esp-link-v2.0.beta2-4MB.tgz | tar xzf -
cd esp-link-2.0.beta2
./wiflash <esp-hostname> user1.bin user2.bin
Installing esptool.py
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
Release 1.0.1
Release with over-the-air (OTA) reflashing of the esp, port 23 transparent bridge as well as AVR & ARM flashing support. Simple debug log page to view the esp-link's own os_printf output via the web and a console page to see the attached uC's output. Buttons to reset the uC and change the baud rate. A pin configuration selector to change GPIO function assignments. Saving of configuration changes in flash.
Changes since v1.0.0: support esp-12/4MB flash size; support 1MB flash size; support UART pin swap (see below); misc minor fixes
This version uses the Espressif IOT SDK version 1.3.0.
UART pin swap: you can select a uart pin swap configuration which uses gpio13 as UART RX and gpio15 as UART TX. This avoids transmitting the boot time messages from the ROM bootloader onto the TX pin.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.3.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x7e000
or0x3FE000
- flash
user1.bin
to0x01000
On Linux using esptool.py this turns into the following:
curl -L https://github.com/jeelabs/esp-link/releases/download/v1.0.1/esp-link.tgz | tar xzf -
cd esp-link
esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash 0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x7e000 blank.bin
Download https://github.com/jeelabs/esp-link/releases/download/v1.0.1/esp-link-4MB.tgz
if you would like the version for the 4MB flash chip, in that case blank.bin
has to be flashed to 0x3FE000
. You can use a baud rate slower than shown and wait longer...
Upgrade over-the-air
To upgrade from an earlier version of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v1.0.1/esp-link.tgz | tar xzf -
cd esp-link
./wiflash <esp-hostname> user1.bin user2.bin
Note that you cannot OTA upgrade from a 512KB version to a 4MB version, you have to do a serial flash for this.
Installing esptool.py
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
Release 2.0.beta1
This is a beta release, for a stable release please use: https://github.com/jeelabs/esp-link/releases/tag/v1.0.1
Warning: this release does not fit into 512KB flash, it requires larger flash (e.g. as typically found in esp-12 modules). If your module has esp-link V1 you cannot upgrade over-the-air, you have to serially flash the larger firmware - sorry.
Features:
- over-the-air (OTA) reflashing of the esp
- port 23 transparent bridge
- AVR & ARM flashing support
- outbound TCP connections from attached micro-controller to the internet (NEW in 2.0)
- console page to see the attached uC's output
- simple debug log page to view the esp-link's own os_printf output
- buttons to reset the uC and change the baud rate
- pin configuration selector to change GPIO function assignments
- saving of configuration changes in flash
- support for 4MB flash (e.g. esp-12, esp-13, wroom-II)
Changes since v1.0.0: new feature: outbound TCP connections
This version uses the Espressif IOT SDK version 1.2.0.
Install via serial upload
The short version for the serial install is:
- flash
boot_v1.4(b1).bin
from the officialesp_iot_sdk_v1.2.0
and included in the release tgz to0x00000
- flash
blank.bin
from the official SDK and also included in the tgz to0x7e000
- flash
user1.bin
to0x01000
On Linux using esptool.py this turns into the following for a 32mbit=4MBte flash chip, such as an esp-12 module typically has:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.0.beta1/esp-link.tgz | tar xzf -
cd esp-link
esptool.py --port /dev/ttyUSB0 --baud 460880 write_flash -fs 32m -ff 80m 0x00000 boot_v1.4\(b1\).bin 0x1000 user1.bin 0x7e000 blank.bin
For a 512KByte flash (typical for an esp-01) use -fs 4m -ff 40m
. I use a high baud rate above, but that's not required.
Upgrade over-the-air
To upgrade from an earlier version of esp-link:
curl -L https://github.com/jeelabs/esp-link/releases/download/v2.0.beta1/esp-link.tgz | tar xzf -
cd esp-link
./wiflash <esp-hostname> user1.bin user2.bin
Installing esptool.py
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