Release 2.1.beta1
Pre-releaseThis 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