Skip to content

Releases: jeelabs/esp-link

Release 2.1.beta4

15 Nov 08:07
@tve tve
Compare
Choose a tag to compare
Release 2.1.beta4 Pre-release
Pre-release

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 official esp_iot_sdk_v1.4.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x3FE000
  • flash user1.bin to 0x01000
  • 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

14 Nov 08:22
@tve tve
Compare
Choose a tag to compare
Release 2.1.beta3 Pre-release
Pre-release

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 official esp_iot_sdk_v1.4.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x3FE000
  • flash user1.bin to 0x01000
  • 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

11 Nov 07:56
@tve tve
Compare
Choose a tag to compare
Release 2.1.beta2 Pre-release
Pre-release

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 official esp_iot_sdk_v1.4.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x3FE000
  • flash user1.bin to 0x01000
  • 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

10 Nov 02:32
@tve tve
Compare
Choose a tag to compare
Release 2.1.beta1 Pre-release
Pre-release

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 official esp_iot_sdk_v1.4.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x3FE000
  • flash user1.bin to 0x01000
  • 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

21 Sep 04:36
@tve tve
Compare
Choose a tag to compare
Release 2.0.rc1 Pre-release
Pre-release

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 official esp_iot_sdk_v1.4.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x3FE000
  • flash 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.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

16 Sep 04:02
@tve tve
Compare
Choose a tag to compare

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 official esp_iot_sdk_v1.3.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x7e000 or 0x3FE000
  • flash user1.bin to 0x01000

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

12 Sep 04:29
@tve tve
Compare
Choose a tag to compare
Release 1.0.3 Pre-release
Pre-release

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 official esp_iot_sdk_v1.3.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x7e000 or 0x3FE000
  • flash user1.bin to 0x01000

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

29 Aug 20:44
@tve tve
Compare
Choose a tag to compare
Release 2.0.beta2 Pre-release
Pre-release

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 official esp_iot_sdk_v1.3.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x3FE000
  • flash user1.bin to 0x01000

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

20 Aug 04:51
@tve tve
Compare
Choose a tag to compare

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 official esp_iot_sdk_v1.3.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x7e000 or 0x3FE000
  • flash user1.bin to 0x01000

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

02 Aug 06:49
@tve tve
Compare
Choose a tag to compare
Release 2.0.beta1 Pre-release
Pre-release

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 official esp_iot_sdk_v1.2.0 and included in the release tgz to 0x00000
  • flash blank.bin from the official SDK and also included in the tgz to 0x7e000
  • flash user1.bin to 0x01000

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