Skip to content

Commit ed49eb4

Browse files
committed
Merge branch 'release/v2.1.0'
2 parents 4795474 + 320ce5b commit ed49eb4

File tree

5 files changed

+96
-96
lines changed

5 files changed

+96
-96
lines changed

.travis.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ env:
88
- PLATFORMIO_PROJECT_DIR=examples/arduino-blink
99
- PLATFORMIO_PROJECT_DIR=examples/arduino-webserver
1010
- PLATFORMIO_PROJECT_DIR=examples/arduino-wifiscan
11+
- PLATFORMIO_PROJECT_DIR=examples/esp8266-nonos-sdk-blink
1112
- PLATFORMIO_PROJECT_DIR=examples/esp8266-rtos-sdk-blink
1213
- PLATFORMIO_PROJECT_DIR=examples/simba-blink
1314

appveyor.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,13 @@ environment:
66
- PLATFORMIO_PROJECT_DIR: "examples/arduino-webserver"
77
- PLATFORMIO_PROJECT_DIR: "examples/arduino-wifiscan"
88
- PLATFORMIO_PROJECT_DIR: "examples/esp8266-rtos-sdk-blink"
9+
- PLATFORMIO_PROJECT_DIR: "examples/esp8266-nonos-sdk-blink"
910
- PLATFORMIO_PROJECT_DIR: "examples/simba-blink"
1011

1112
install:
1213
- cmd: git submodule update --init --recursive
13-
- cmd: SET PATH=%PATH%;C:\Python27\Scripts
14-
- cmd: pip install -U https://github.com/platformio/platformio/archive/develop.zip
14+
- cmd: SET PATH=%PATH%;C:\Python36\Scripts
15+
- cmd: pip3 install -U https://github.com/platformio/platformio/archive/develop.zip
1516
- cmd: platformio platform install file://.
1617

1718
test_script:

builder/frameworks/simba.py

Lines changed: 33 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
from os.path import join, sep
2525

26-
from SCons.Script import DefaultEnvironment
26+
from SCons.Script import Builder, DefaultEnvironment
2727

2828
from platformio.builder.tools import platformio as platformio_tool
2929

@@ -50,13 +50,41 @@ def VariantDirWrap(env, variant_dir, src_dir, duplicate=False):
5050
env.AddMethod(LookupSources)
5151
env.AddMethod(VariantDirWrap)
5252

53+
env.Replace(
54+
PLATFORMFW_DIR=env.PioPlatform().get_package_dir("framework-simba"),
55+
OBJCOPY="esptool"
56+
)
57+
5358
env.Append(
5459
CPPDEFINES=[
5560
("F_CPU", "$BOARD_F_CPU")
56-
]
57-
)
58-
env.Replace(
59-
PLATFORMFW_DIR=env.PioPlatform().get_package_dir("framework-simba")
61+
],
62+
63+
BUILDERS=dict(
64+
ElfToBin=Builder(
65+
action=env.VerboseAction(" ".join([
66+
'esptool',
67+
"-eo", '"%s"' % join(
68+
"$PLATFORMFW_DIR", "3pp", "esp8266Arduino", "2.3.0",
69+
"bootloaders", "eboot", "eboot.elf"
70+
),
71+
"-bo", "$TARGET",
72+
"-bm", "$BOARD_FLASH_MODE",
73+
"-bf", "${__get_board_f_flash(__env__)}",
74+
"-bz", "${__get_flash_size(__env__)}",
75+
"-bs", ".text",
76+
"-bp", "4096",
77+
"-ec",
78+
"-eo", "$SOURCES",
79+
"-bs", ".irom0.text",
80+
"-bs", ".text",
81+
"-bs", ".data",
82+
"-bs", ".rodata",
83+
"-bc", "-ec"
84+
]), "Building $TARGET"),
85+
suffix=".bin"
86+
)
87+
)
6088
)
6189

6290
env.SConscript(

builder/main.py

Lines changed: 55 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,6 @@ def _update_max_upload_size(env):
136136
CC="xtensa-lx106-elf-gcc",
137137
CXX="xtensa-lx106-elf-g++",
138138
GDB="xtensa-lx106-elf-gdb",
139-
OBJCOPY="esptool",
140139
RANLIB="xtensa-lx106-elf-ranlib",
141140
SIZETOOL="xtensa-lx106-elf-size",
142141

@@ -148,16 +147,18 @@ def _update_max_upload_size(env):
148147

149148
MKSPIFFSTOOL="mkspiffs",
150149

151-
SIZEPROGREGEXP=r"^(?:\.irom0\.text|\.text|\.data|\.rodata|)\s+([0-9]+).*",
150+
SIZEPROGREGEXP=r"^(?:\.irom0\.text|\.text|\.text1|\.data|\.rodata|)\s+([0-9]+).*",
152151
SIZEDATAREGEXP=r"^(?:\.data|\.rodata|\.bss)\s+([0-9]+).*",
153152
SIZECHECKCMD="$SIZETOOL -A -d $SOURCES",
154153
SIZEPRINTCMD='$SIZETOOL -B -d $SOURCES',
155154

156155
ERASEFLAGS=[
157-
"-cp", "$UPLOAD_PORT",
158-
"-cd", "$UPLOAD_RESETMETHOD"
156+
"--chip", "esp8266",
157+
"--port", '"$UPLOAD_PORT"'
159158
],
160-
ERASECMD='esptool $ERASEFLAGS -ce',
159+
ERASETOOL=join(
160+
platform.get_package_dir("tool-esptoolpy") or "", "esptool.py"),
161+
ERASECMD='"$PYTHONEXE" "$ERASETOOL" $ERASEFLAGS erase_flash',
161162

162163
PROGSUFFIX=".elf"
163164
)
@@ -192,79 +193,38 @@ def _update_max_upload_size(env):
192193
emitter=__fetch_spiffs_size,
193194
source_factory=env.Dir,
194195
suffix=".bin"
196+
),
197+
198+
# Default for ESP8266 RTOS SDK and Native SDK common configuration
199+
# Frameworks may override "ElfToBin" builder
200+
ElfToBin=Builder(
201+
action=env.VerboseAction(" ".join([
202+
'esptool',
203+
"-eo", "$SOURCES",
204+
"-bo", "${TARGETS[0]}",
205+
"-bm", "$BOARD_FLASH_MODE",
206+
"-bf", "${__get_board_f_flash(__env__)}",
207+
"-bz", "${__get_flash_size(__env__)}",
208+
"-bs", ".text",
209+
"-bs", ".data",
210+
"-bs", ".rodata",
211+
"-bc", "-ec",
212+
"-eo", "$SOURCES",
213+
"-es", ".irom0.text", "${TARGETS[1]}",
214+
"-ec", "-v"
215+
]), "Building $TARGET"),
216+
suffix=".bin"
195217
)
196218
)
197219
)
198220

199221

200-
#
201-
# Framework and SDK specific configuration
202-
#
203-
204-
if env.subst("$PIOFRAMEWORK") in ("arduino", "simba"):
205-
if "simba" in env.subst("$PIOFRAMEWORK"):
206-
ebootelf_path = join(
207-
platform.get_package_dir("framework-simba") or "", "3pp",
208-
"esp8266Arduino", "2.3.0", "bootloaders", "eboot", "eboot.elf")
209-
else:
210-
ebootelf_path = join(
211-
platform.get_package_dir("framework-arduinoespressif8266") or "",
212-
"bootloaders", "eboot", "eboot.elf")
213-
214-
env.Append(
215-
BUILDERS=dict(
216-
ElfToBin=Builder(
217-
action=env.VerboseAction(" ".join([
218-
'"$OBJCOPY"',
219-
"-eo", '"%s"' % ebootelf_path,
220-
"-bo", "$TARGET",
221-
"-bm", "$BOARD_FLASH_MODE",
222-
"-bf", "${__get_board_f_flash(__env__)}",
223-
"-bz", "${__get_flash_size(__env__)}",
224-
"-bs", ".text",
225-
"-bp", "4096",
226-
"-ec",
227-
"-eo", "$SOURCES",
228-
"-bs", ".irom0.text",
229-
"-bs", ".text",
230-
"-bs", ".data",
231-
"-bs", ".rodata",
232-
"-bc", "-ec"
233-
]), "Building $TARGET"),
234-
suffix=".bin"
235-
)
236-
)
237-
)
238-
else:
239-
# ESP8266 RTOS SDK and Native SDK common configuration
240-
env.Append(
241-
BUILDERS=dict(
242-
ElfToBin=Builder(
243-
action=env.VerboseAction(" ".join([
244-
'"$OBJCOPY"',
245-
"-eo", "$SOURCES",
246-
"-bo", "${TARGETS[0]}",
247-
"-bm", "$BOARD_FLASH_MODE",
248-
"-bf", "${__get_board_f_flash(__env__)}",
249-
"-bz", "${__get_flash_size(__env__)}",
250-
"-bs", ".text",
251-
"-bs", ".data",
252-
"-bs", ".rodata",
253-
"-bc", "-ec",
254-
"-eo", "$SOURCES",
255-
"-es", ".irom0.text", "${TARGETS[1]}",
256-
"-ec", "-v"
257-
]), "Building $TARGET"),
258-
suffix=".bin"
259-
)
260-
)
261-
)
262-
263222
#
264223
# Target: Build executable and linkable firmware or SPIFFS image
265224
#
266225

267226
target_elf = env.BuildProgram()
227+
268228
if "nobuild" in COMMAND_LINE_TARGETS:
269229
if set(["uploadfs", "uploadfsota"]) & set(COMMAND_LINE_TARGETS):
270230
fetch_spiffs_size(env)
@@ -343,7 +303,8 @@ def _update_max_upload_size(env):
343303
"espressif8266.html#over-the-air-ota-update\n")
344304
env.Replace(
345305
UPLOADER=join(
346-
platform.get_package_dir("tool-espotapy") or "", "espota.py"),
306+
platform.get_package_dir("framework-arduinoespressif8266") or "",
307+
"tools", "espota.py"),
347308
UPLOADERFLAGS=["--debug", "--progress", "-i", "$UPLOAD_PORT"],
348309
UPLOADCMD='"$PYTHONEXE" "$UPLOADER" $UPLOADERFLAGS -f $SOURCE'
349310
)
@@ -353,24 +314,34 @@ def _update_max_upload_size(env):
353314

354315
elif upload_protocol == "esptool":
355316
env.Replace(
356-
UPLOADER="esptool",
317+
UPLOADER=join(
318+
platform.get_package_dir("tool-esptoolpy") or "", "esptool.py"),
357319
UPLOADERFLAGS=[
358-
"-cd", "$UPLOAD_RESETMETHOD",
359-
"-cb", "$UPLOAD_SPEED",
360-
"-cp", '"$UPLOAD_PORT"'
320+
"--chip", "esp8266",
321+
"--port", '"$UPLOAD_PORT"',
322+
"--baud", "$UPLOAD_SPEED",
323+
"write_flash"
361324
],
362-
UPLOADCMD='$UPLOADER $UPLOADERFLAGS -cf $SOURCE',
325+
UPLOADCMD='"$PYTHONEXE" "$UPLOADER" $UPLOADERFLAGS 0 $SOURCE'
363326
)
364-
if env.subst("$PIOFRAMEWORK") not in ("arduino", "simba"): # SDK
365-
for image in env.get("FLASH_EXTRA_IMAGES", []):
366-
env.Append(
367-
UPLOADERFLAGS=["-ca", image[0], "-cf", env.subst(image[1])])
368-
env.Replace(UPLOADCMD="$UPLOADER $UPLOADERFLAGS")
369-
elif "uploadfs" in COMMAND_LINE_TARGETS:
370-
env.Append(UPLOADERFLAGS=["-ca", "${hex(SPIFFS_START)}"])
327+
for image in env.get("FLASH_EXTRA_IMAGES", []):
328+
env.Append(UPLOADERFLAGS=[image[0], env.subst(image[1])])
329+
330+
if "uploadfs" in COMMAND_LINE_TARGETS:
331+
env.Replace(
332+
UPLOADERFLAGS=[
333+
"--chip", "esp8266",
334+
"--port", '"$UPLOAD_PORT"',
335+
"--baud", "$UPLOAD_SPEED",
336+
"write_flash",
337+
"$SPIFFS_START"
338+
],
339+
UPLOADCMD='"$PYTHONEXE" "$UPLOADER" $UPLOADERFLAGS $SOURCE',
340+
)
341+
371342
upload_actions = [
372-
env.VerboseAction(
373-
env.AutodetectUploadPort, "Looking for upload port..."),
343+
env.VerboseAction(env.AutodetectUploadPort,
344+
"Looking for upload port..."),
374345
env.VerboseAction("$UPLOADCMD", "Uploading $SOURCE")
375346
]
376347

@@ -391,7 +362,7 @@ def _update_max_upload_size(env):
391362
env.Alias("erase", None, [
392363
env.VerboseAction(env.AutodetectUploadPort,
393364
"Looking for serial port..."),
394-
env.VerboseAction("$ERASECMD", "Ready for erasing")
365+
env.VerboseAction("$ERASECMD", "Erasing...")
395366
]))
396367

397368

platform.json

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"type": "git",
1313
"url": "https://github.com/platformio/platform-espressif8266.git"
1414
},
15-
"version": "2.0.4",
15+
"version": "2.1.0",
1616
"packageRepositories": [
1717
"https://dl.bintray.com/platformio/dl-packages/manifest.json",
1818
"http://dl.platformio.org/packages/manifest.json",
@@ -46,7 +46,7 @@
4646
"framework-arduinoespressif8266": {
4747
"type": "framework",
4848
"optional": true,
49-
"version": "~2.20500.0"
49+
"version": "~2.20501.0"
5050
},
5151
"framework-esp8266-rtos-sdk": {
5252
"type": "framework",
@@ -67,10 +67,9 @@
6767
"type": "uploader",
6868
"version": "<2"
6969
},
70-
"tool-espotapy": {
70+
"tool-esptoolpy": {
7171
"type": "uploader",
72-
"optional": true,
73-
"version": "~1.1.0"
72+
"version": "~1.20600.0"
7473
},
7574
"tool-mkspiffs": {
7675
"type": "uploader",

0 commit comments

Comments
 (0)