mirror of
https://github.com/esp8266/Arduino.git
synced 2025-07-30 16:24:09 +03:00
Now allowing uploads using a programmer by setting the upload.using preference ("bootloader" for default behavior, or the name of a programmer prefix from the programmers.txt file).
This commit is contained in:
@ -38,6 +38,17 @@ public class AvrdudeUploader extends Uploader {
|
||||
|
||||
// XXX: add support for uploading sketches using a programmer
|
||||
public boolean uploadUsingPreferences(String buildPath, String className)
|
||||
throws RunnerException {
|
||||
if (Preferences.get("upload.using").equals("bootloader")) {
|
||||
return uploadViaBootloader(buildPath, className);
|
||||
} else {
|
||||
Collection params = getProgrammerCommands(Preferences.get("upload.using"));
|
||||
params.add("-Uflash:w:" + buildPath + File.separator + className + ".hex:i");
|
||||
return avrdude(params);
|
||||
}
|
||||
}
|
||||
|
||||
private boolean uploadViaBootloader(String buildPath, String className)
|
||||
throws RunnerException {
|
||||
List commandDownloader = new ArrayList();
|
||||
String protocol = Preferences.get("boards." + Preferences.get("board") + ".upload.protocol");
|
||||
@ -58,6 +69,10 @@ public class AvrdudeUploader extends Uploader {
|
||||
}
|
||||
|
||||
public boolean burnBootloader(String programmer) throws RunnerException {
|
||||
return burnBootloader(getProgrammerCommands(programmer));
|
||||
}
|
||||
|
||||
private Collection getProgrammerCommands(String programmer) {
|
||||
List params = new ArrayList();
|
||||
params.add("-c" + Preferences.get("programmers." + programmer + ".protocol"));
|
||||
|
||||
@ -73,7 +88,7 @@ public class AvrdudeUploader extends Uploader {
|
||||
if (Preferences.get("programmers." + programmer + ".delay") != null)
|
||||
params.add("-i" + Preferences.get("programmers." + programmer + ".delay"));
|
||||
|
||||
return burnBootloader(params);
|
||||
return params;
|
||||
}
|
||||
|
||||
protected boolean burnBootloader(Collection params)
|
||||
|
Reference in New Issue
Block a user