(2020-06-03, 12:50:14)Mikael Gustavsson Wrote: It is describe in the main manual. There are two manual options and one automatic.
In the manual:
https://www.ds30loader.com/images/files/ds30-Loader-firmware-manual.pdf
on page 18, it's mentioned that the programmer can erase the bootloader:
On the menu Programmer->Erase Flash Device
but I don't have (nor need a programmer; bootloader was flashed earlier). I'm updating the firmware through code (C#) using ds30Loader.dll:
Code:
clsds30ParseSettings objParseSettings = new clsds30ParseSettings();
objParseSettings.device = objDevice;
objParseSettings.addChecksum = false;
objParseSettings.allowBlOverwrite = false;
objParseSettings.dontWriteEmptyPages = false;
objParseSettings.noGotoBl = false;
objParseSettings.noGotoUserApp = false;
objParseSettings.writeConfigs = false;
objParseSettings.blPlacementP = 1;
objParseSettings.blSizeP = 1;
bool bParseResult = false;
objHex.ParseHexFile(objParseSettings, false, 0, ref bParseResult);
if (bParseResult == false)
{
MessageBox.Show("Parse of hex file failed, write aborted.", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
this.Cursor = Cursors.Default;
return;
}
bool bWriteResult = false;
clsds30Settings objds30Settings = new clsds30Settings();
ds30Settings.portName = "COM1";
ds30Settings.baudRate = i115200;
ds30Settings.writeFlash = true;
ds30Settings.password = "pass";
clsds30Loader.WriteDevice(objDevice, objHex, objds30Settings, 0, ref bWriteResult);
if (bWriteResult == false)
{
MessageBox.Show("Write failed", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
return;
}