mirror of
https://github.com/esp8266/Arduino.git
synced 2025-04-22 21:23:07 +03:00
Merge remote-tracking branch 'esp8266/master'
This commit is contained in:
commit
7615966d59
@ -6,10 +6,44 @@ title: Change Log
|
|||||||
|
|
||||||
### Core
|
### Core
|
||||||
|
|
||||||
|
- Allow control of enabling debug and debug level from IDE
|
||||||
|
- Make HardwareSerial::begin() and end() interrupt safe
|
||||||
|
- Put HardwareSerial and cbuf methods called from interrupt context in RAM
|
||||||
|
- Re-enable interrupts before directly enqueuing characters in the UART FIFO
|
||||||
|
- Add espduino board
|
||||||
|
- Rework StreamString::write to use String internal buffer directly (#1289)
|
||||||
|
- Add function to measure stack high water mark
|
||||||
|
- Update SDK to esp_iot_sdk_v1.5.0_15_12_15_p1
|
||||||
|
- Fix RAM corruption caused by our hook of register_chipv6_phy(init_data*).
|
||||||
|
- Optimize PWM interrupt handler for better precision
|
||||||
|
- Add warning levels configurable through Preferences
|
||||||
|
- Protect HardwareSerial's cbuf usage with InterruptLock
|
||||||
|
- SPIFFS: check if path length is valid (#1089)
|
||||||
|
- Set CPU frequency before running setup
|
||||||
|
- Add core_esp8266_features.h to be able to detect the features and libraries included in the ESP core
|
||||||
|
- Added ESPino to supported boards
|
||||||
|
|
||||||
### Libraries
|
### Libraries
|
||||||
|
|
||||||
|
- ESP8266HTTPClient: add CHUNKED encoding support (#1324)
|
||||||
|
- Fixed crash bug with mDNS where a string buffer could be used uninitialized
|
||||||
|
- Add WiFi TX power control
|
||||||
|
- Add WiFi sleep management
|
||||||
|
- Allow to hook into WiFi events from sketch
|
||||||
|
- Allow setting TCP timeout
|
||||||
|
- Add setSleepMode + getSleepMode and setPhyMode + getPhyMode to WiFi
|
||||||
|
- Update GDBStub library with the source of esp-gdbstub
|
||||||
|
- Servo: fix detach and attach
|
||||||
|
- ESP8266mDNS: refactoring, add TXT support
|
||||||
|
- Add HTTP Basic Auth to WebServer and libb64 (base64) to core
|
||||||
|
- Fix link-time dependency of ESP8266WebServer on SPIFFS (#862)
|
||||||
|
- Allow setting client side TLS key and certificate
|
||||||
|
- Replace chain of UDP pbufs with a single pbuf before sending (#1009)
|
||||||
|
|
||||||
### Tools
|
### Tools
|
||||||
|
|
||||||
|
- espota.py: add support for manually selecting ip and port for host side
|
||||||
|
|
||||||
---
|
---
|
||||||
## 2.0.0
|
## 2.0.0
|
||||||
November 30, 2015
|
November 30, 2015
|
||||||
|
@ -5,11 +5,12 @@
|
|||||||
#
|
#
|
||||||
# Modified since 2015-09-18 from Pascal Gollor (https://github.com/pgollor)
|
# Modified since 2015-09-18 from Pascal Gollor (https://github.com/pgollor)
|
||||||
# Modified since 2015-11-09 from Hristo Gochkov (https://github.com/me-no-dev)
|
# Modified since 2015-11-09 from Hristo Gochkov (https://github.com/me-no-dev)
|
||||||
|
# Modified since 2016-01-03 from Matthew O'Gorman (https://githumb.com/mogorman)
|
||||||
#
|
#
|
||||||
# This script will push an OTA update to the ESP
|
# This script will push an OTA update to the ESP
|
||||||
# use it like: python espota.py -i <ESP_IP_address> -p <ESP_port> [-a password] -f <sketch.bin>
|
# use it like: python espota.py -i <ESP_IP_address> -I <Host_IP_address> -p <ESP_port> -P <Host_port> [-a password] -f <sketch.bin>
|
||||||
# Or to upload SPIFFS image:
|
# Or to upload SPIFFS image:
|
||||||
# python espota.py -i <ESP_IP_address> -p <ESP_port> [-a password] -s -f <spiffs.bin>
|
# python espota.py -i <ESP_IP_address> -I <Host_IP_address> -p <ESP_port> -P <HOST_port> [-a password] -s -f <spiffs.bin>
|
||||||
#
|
#
|
||||||
# Changes
|
# Changes
|
||||||
# 2015-09-18:
|
# 2015-09-18:
|
||||||
@ -22,6 +23,10 @@
|
|||||||
# - Added digest authentication
|
# - Added digest authentication
|
||||||
# - Enchanced error tracking and reporting
|
# - Enchanced error tracking and reporting
|
||||||
#
|
#
|
||||||
|
# Changes
|
||||||
|
# 2016-01-03:
|
||||||
|
# - Added more options to parser.
|
||||||
|
#
|
||||||
|
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
import socket
|
import socket
|
||||||
@ -64,11 +69,10 @@ def update_progress(progress):
|
|||||||
sys.stderr.write('.')
|
sys.stderr.write('.')
|
||||||
sys.stderr.flush()
|
sys.stderr.flush()
|
||||||
|
|
||||||
def serve(remoteAddr, remotePort, password, filename, command = FLASH):
|
def serve(remoteAddr, localAddr, remotePort, localPort, password, filename, command = FLASH):
|
||||||
# Create a TCP/IP socket
|
# Create a TCP/IP socket
|
||||||
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||||
serverPort = random.randint(10000,60000)
|
server_address = (localAddr, localPort)
|
||||||
server_address = ('0.0.0.0', serverPort)
|
|
||||||
logging.info('Starting on %s:%s', str(server_address[0]), str(server_address[1]))
|
logging.info('Starting on %s:%s', str(server_address[0]), str(server_address[1]))
|
||||||
try:
|
try:
|
||||||
sock.bind(server_address)
|
sock.bind(server_address)
|
||||||
@ -82,7 +86,7 @@ def serve(remoteAddr, remotePort, password, filename, command = FLASH):
|
|||||||
file_md5 = hashlib.md5(f.read()).hexdigest()
|
file_md5 = hashlib.md5(f.read()).hexdigest()
|
||||||
f.close()
|
f.close()
|
||||||
logging.info('Upload size: %d', content_size)
|
logging.info('Upload size: %d', content_size)
|
||||||
message = '%d %d %d %s\n' % (command, serverPort, content_size, file_md5)
|
message = '%d %d %d %s\n' % (command, localPort, content_size, file_md5)
|
||||||
|
|
||||||
# Wait for a connection
|
# Wait for a connection
|
||||||
logging.info('Sending invitation to: %s', remoteAddr)
|
logging.info('Sending invitation to: %s', remoteAddr)
|
||||||
@ -209,12 +213,24 @@ def parser():
|
|||||||
help = "ESP8266 IP Address.",
|
help = "ESP8266 IP Address.",
|
||||||
default = False
|
default = False
|
||||||
)
|
)
|
||||||
|
group.add_option("-I", "--host_ip",
|
||||||
|
dest = "host_ip",
|
||||||
|
action = "store",
|
||||||
|
help = "Host IP Address.",
|
||||||
|
default = "0.0.0.0"
|
||||||
|
)
|
||||||
group.add_option("-p", "--port",
|
group.add_option("-p", "--port",
|
||||||
dest = "esp_port",
|
dest = "esp_port",
|
||||||
type = "int",
|
type = "int",
|
||||||
help = "ESP8266 ota Port. Default 8266",
|
help = "ESP8266 ota Port. Default 8266",
|
||||||
default = 8266
|
default = 8266
|
||||||
)
|
)
|
||||||
|
group.add_option("-P", "--host_port",
|
||||||
|
dest = "host_port",
|
||||||
|
type = "int",
|
||||||
|
help = "Host server ota Port. Default random 10000-60000",
|
||||||
|
default = random.randint(10000,60000)
|
||||||
|
)
|
||||||
parser.add_option_group(group)
|
parser.add_option_group(group)
|
||||||
|
|
||||||
# auth
|
# auth
|
||||||
@ -294,7 +310,7 @@ def main(args):
|
|||||||
command = SPIFFS
|
command = SPIFFS
|
||||||
# end if
|
# end if
|
||||||
|
|
||||||
return serve(options.esp_ip, options.esp_port, options.auth, options.image, command)
|
return serve(options.esp_ip, options.host_ip, options.esp_port, options.host_port, options.auth, options.image, command)
|
||||||
# end main
|
# end main
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user