Skip to content

Commit 68f96fe

Browse files
committed
Version 0.3
Updates ESP32 tools for new boards.
1 parent 2e3f4f3 commit 68f96fe

24 files changed

+744
-5200
lines changed

PartTool.Designer.cs

Lines changed: 177 additions & 88 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

PartTool.cs

Lines changed: 83 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ public partial class PartTool : Form
2828
public static int Otad = 8 * 1024;
2929
public static bool OtaEnabled = false;
3030
public static int Spiffs = 0;
31+
public static int Ffat = 0;
3132

3233
public PartTool(int flashMB, ToolPartition partitionTool)
3334
{
@@ -47,8 +48,10 @@ private void PartTool_Load(object sender, EventArgs e)
4748
{
4849
trackBarOta.SmallChange = 64;
4950
trackBarOta1.SmallChange = 64;
51+
trackBarOtaD.SmallChange = 1;
5052
trackBarOta.TickFrequency = 256;
5153
trackBarOta1.TickFrequency = 256;
54+
trackBarOtaD.TickFrequency = 8;
5255

5356
trackBarEeprom.SmallChange = 4;
5457
trackBarNvs.SmallChange = 4;
@@ -57,6 +60,8 @@ private void PartTool_Load(object sender, EventArgs e)
5760

5861
trackBarSpiffs.SmallChange = 4;
5962
trackBarSpiffs.TickFrequency = 128;
63+
trackBarFfat.SmallChange = 4;
64+
trackBarFfat.TickFrequency = 128;
6065
Calculate();
6166
}
6267

@@ -70,6 +75,7 @@ public int Calculate()
7075
else total += Ota0;
7176
if (checkBoxEeprom.Checked) total += Eeprom;
7277
if (checkBoxSpiffs.Checked) total += Spiffs;
78+
if (checkBoxFfat.Checked) total += Ffat;
7379
total /= 1024;
7480
free = flashSizeKB - total;
7581

@@ -94,9 +100,11 @@ public int Calculate()
94100
{
95101
labelOta1.Text = trackBarOta1.Value + "kb";
96102
}
103+
labelOtaD.Text = trackBarOtaD.Value + "kb";
97104
labelNvs.Text = (checkBoxNvs.Checked ? trackBarNvs.Value.ToString() : "0") + "kb";
98105
labelEeprom.Text = (checkBoxEeprom.Checked ? trackBarEeprom.Value.ToString() : "0") + "kb";
99106
labelSpiffs.Text = (checkBoxSpiffs.Checked ? trackBarSpiffs.Value.ToString() : "0") + "kb";
107+
labelFfat.Text = (checkBoxFfat.Checked ? trackBarFfat.Value.ToString() : "0") + "kb";
100108

101109
if (free < 0) return free;
102110

@@ -108,13 +116,15 @@ public int Calculate()
108116
trackBarOta.Maximum = trackBarOta.Value + free;
109117
trackBarOta1.Maximum = trackBarOta1.Value + free;
110118
trackBarSpiffs.Maximum = trackBarSpiffs.Value + free;
119+
trackBarFfat.Maximum = trackBarFfat.Value + free;
111120

112121
return free;
113122
}
114123

115124
public void SetEeprom(int size)
116125
{
117126
Eeprom = size;
127+
if (!trackBarEeprom.Enabled) checkBoxEeprom.Checked = true;
118128
if (size / 1024 > trackBarEeprom.Maximum) trackBarEeprom.Maximum = size / 1024;
119129
trackBarEeprom.Value = size / 1024;
120130
Calculate();
@@ -156,15 +166,34 @@ public void SetOta1(int size)
156166
OtaEnabled = true;
157167
Calculate();
158168
}
169+
public void SetOtaD(int size)
170+
{
171+
//Otad = size;
172+
if (size / 1024 > trackBarOtaD.Maximum) trackBarOtaD.Maximum = size / 1024;
173+
trackBarOtaD.Minimum = 0;
174+
trackBarOtaD.Value = size / 1024;
175+
checkBoxOtaD.Checked = true;
176+
Calculate();
177+
}
159178

160179
public void SetSpiffs(int size)
161180
{
162181
Spiffs = size;
182+
if (!trackBarSpiffs.Enabled) checkBoxSpiffs.Checked = true;
163183
if (size / 1024 > trackBarSpiffs.Maximum) trackBarSpiffs.Maximum = size / 1024;
164184
trackBarSpiffs.Value = size / 1024;
165185
Calculate();
166186
}
167187

188+
public void SetFfat(int size)
189+
{
190+
Ffat = size;
191+
if (!trackBarFfat.Enabled) checkBoxFfat.Checked = true;
192+
if (size / 1024 > trackBarFfat.Maximum) trackBarFfat.Maximum = size / 1024;
193+
trackBarFfat.Value = size / 1024;
194+
Calculate();
195+
}
196+
168197
private void trackBarOta_ValueChanged(object sender, EventArgs e)
169198
{
170199
Ota0 = (trackBarOta.Value - trackBarOta.Value % 64) * 1024;
@@ -211,6 +240,13 @@ private void trackBarSpiffs_ValueChanged(object sender, EventArgs e)
211240
Calculate();
212241
}
213242

243+
private void trackBarFfat_ValueChanged(object sender, EventArgs e)
244+
{
245+
Ffat = (trackBarFfat.Value - trackBarFfat.Value % 4) * 1024;
246+
trackBarFfat.Value = Ffat / 1024;
247+
Calculate();
248+
}
249+
214250
private void checkBoxOta_CheckedChanged(object sender, EventArgs e)
215251
{
216252
OtaEnabled = checkBoxOta.Checked;
@@ -277,6 +313,22 @@ private void checkBoxSpiffs_CheckedChanged(object sender, EventArgs e)
277313
}
278314
}
279315

316+
private void checkBoxFfat_CheckedChanged(object sender, EventArgs e)
317+
{
318+
if (checkBoxFfat.Checked)
319+
{
320+
Ffat = trackBarFfat.Value * 1024;
321+
trackBarFfat.Enabled = true;
322+
Calculate();
323+
}
324+
else
325+
{
326+
Ffat = 0;
327+
trackBarFfat.Enabled = false;
328+
Calculate();
329+
}
330+
}
331+
280332
private void button3_Click(object sender, EventArgs e)
281333
{
282334
if (groupBox1.Left == progressBar1.Left)
@@ -311,7 +363,7 @@ private void button1_Click(object sender, EventArgs e)
311363

312364
private async void SavePartition(string filename)
313365
{
314-
await partition.CreatePartition(Nvs, Ota0, Ota1, Eeprom, Spiffs);
366+
await partition.CreatePartition(Nvs, Ota0, Ota1, Eeprom, Spiffs, Ffat);
315367
File.Copy(partition.GetPartitionPath(filename.EndsWith(".bin")), filename, true);
316368
}
317369

@@ -320,6 +372,29 @@ private void checkBoxOtaLock_CheckedChanged(object sender, EventArgs e)
320372
trackBarOta1.Enabled = !checkBoxOtaLock.Checked;
321373
}
322374

375+
private int convertCSVInteger(string inString)
376+
{
377+
if(inString.StartsWith("0x"))
378+
{
379+
return Convert.ToInt32(inString.Trim(), 16);
380+
}
381+
else
382+
{
383+
int multiplier = 0;
384+
if(inString.Contains("K"))
385+
{
386+
inString = inString.Replace("K", "");
387+
multiplier = 1024;
388+
}
389+
else if (inString.Contains("M"))
390+
{
391+
inString = inString.Replace("M", "");
392+
multiplier = 1024 * 1024;
393+
}
394+
return Convert.ToInt32(inString.Trim(), 10) * multiplier;
395+
}
396+
}
397+
323398
private async void button4_Click(object sender, EventArgs e)
324399
{
325400
openFileDialog1.Title = "Import partition table";
@@ -336,12 +411,13 @@ private async void button4_Click(object sender, EventArgs e)
336411
if (items.Count() < 5) continue;
337412
switch(items[0].Trim())
338413
{
339-
case "nvs": SetNvs(Convert.ToInt32(items[4].Trim(), 16)); break;
340-
case "app0": SetOta0(Convert.ToInt32(items[4].Trim(), 16), null); break;
341-
case "app1": SetOta1(Convert.ToInt32(items[4].Trim(), 16)); break;
342-
case "eeprom": SetEeprom(Convert.ToInt32(items[4].Trim(), 16)); break;
343-
case "spiffs": SetSpiffs(Convert.ToInt32(items[4].Trim(), 16)); break;
344-
case "otadata": Otad = Convert.ToInt32(items[4].Trim(), 16); break;
414+
case "nvs": SetNvs(convertCSVInteger(items[4])); break;
415+
case "app0": SetOta0(convertCSVInteger(items[4]), null); break;
416+
case "app1": SetOta1(convertCSVInteger(items[4])); break;
417+
case "eeprom": SetEeprom(convertCSVInteger(items[4])); break;
418+
case "ffat": SetFfat(convertCSVInteger(items[4])); break;
419+
case "spiffs": SetSpiffs(convertCSVInteger(items[4])); break;
420+
case "otadata": Otad = convertCSVInteger(items[4]); break;
345421
default: MessageBox.Show("Error: can't import this partition: " + items[0].Trim() + " - it will be ignored", "Import partitions"); break;
346422
}
347423

PartTool.resx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@
131131
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
132132
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
133133
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACO
134-
EwAAAk1TRnQBSQFMAgEBBgEAAQgBAAEIAQABEAEAARABAAT/AREBAAj/AUIBTQE2BwABNgMAASgDAAFA
134+
EwAAAk1TRnQBSQFMAgEBBgEAARABAAEQAQABEAEAARABAAT/AREBAAj/AUIBTQE2BwABNgMAASgDAAFA
135135
AwABIAMAAQEBAAEQBgABEJoAAf8BfwH/AX8BvQF3AVoBawE5AWcBWgFrAb0BdwH/AX9uAAH/AX8BoAEB
136136
AQABAgFAAQIBgAECAWABAgEgAQIBwAEBAYABAQFAAQEB/wF/BgABtQFWAbUBVgG1AVYBtQFWAbUBVgG1
137137
AVYBtQFWAbUBVgG1AVYBtQFWAbUBVgG1AVYBtQFWAbUBVgG1AVZEAAEZAWMBHQEBAaMBAQEAAQIBIAEC

Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,5 @@
2929
// Buildnummer
3030
// Revision
3131
//
32-
[assembly: AssemblyVersion("0.2.1.0")]
33-
[assembly: AssemblyFileVersion("0.2.1.0")]
32+
[assembly: AssemblyVersion("0.3.0.0")]
33+
[assembly: AssemblyFileVersion("0.3.0.0")]

esp_tools_gui.csproj

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,12 @@
166166
<None Include="images\burn32.png" />
167167
<None Include="images\export32.png" />
168168
<None Include="images\import32.png" />
169+
<None Include="exes\python3.dll">
170+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
171+
</None>
172+
<None Include="exes\python310.dll">
173+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
174+
</None>
169175
<Content Include="src\ESP32.ico" />
170176
<Content Include="images\esp32.jpg" />
171177
</ItemGroup>

exes/cxfreeze.zip

4.33 MB
Binary file not shown.

exes/espefuse.exe

9.02 MB
Binary file not shown.

0 commit comments

Comments
 (0)