diff --git a/HISTORY.rst b/HISTORY.rst index 0d12c129..956299da 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -8,9 +8,13 @@ Release History `Shippable CI `_ * Disabled "nano.specs" for ARM-based platforms (`issue #219 `_) +* Fixed "ConnectionError" when PlatformIO SF Storage is off-line * Fixed resolving of C/C++ std libs by Eclipse IDE (`issue #220 `_) -* Fixed "ConnectionError" when PlatformIO SF Storage is off-line +* Fixed firmware uploading using USB programmer (USBasp) for + `atmelavr `_ + platform + (`issue #221 `_) 2.0.2 (2015-05-27) ------------------ diff --git a/platformio/builder/scripts/atmelavr.py b/platformio/builder/scripts/atmelavr.py index f221e5c4..cb3dee5b 100644 --- a/platformio/builder/scripts/atmelavr.py +++ b/platformio/builder/scripts/atmelavr.py @@ -20,14 +20,18 @@ def BeforeUpload(target, source, env): # pylint: disable=W0613,W0621 with open(path, "w") as f: f.write(str(value)) + if "micronucleus" in env['UPLOADER']: + print "Please unplug/plug device ..." + upload_options = env.get("BOARD_OPTIONS", {}).get("upload", {}) + if "usb" in env.subst("$UPLOAD_PROTOCOL"): + upload_options['require_upload_port'] = False + env.Replace(UPLOAD_SPEED=None) + if env.subst("$UPLOAD_SPEED"): env.Append(UPLOADERFLAGS=["-b", "$UPLOAD_SPEED"]) - if "micronucleus" in env['UPLOADER']: - print "Please unplug/plug device ..." - if not upload_options.get("require_upload_port", False): return