eric7/MicroPython/EspFirmwareSelectionDialog.py

branch
eric7
changeset 8924
7f2cad9900cf
parent 8881
54e42bc2437a
child 8945
b6be65111565
--- a/eric7/MicroPython/EspFirmwareSelectionDialog.py	Sat Jan 15 18:40:57 2022 +0100
+++ b/eric7/MicroPython/EspFirmwareSelectionDialog.py	Sat Jan 15 18:42:21 2022 +0100
@@ -24,6 +24,15 @@
     Class implementing a dialog to select the ESP chip type and the firmware to
     be flashed.
     """
+    Chips = (
+        ("", ""),
+        ("ESP32", "esp32"),
+        ("ESP32-C3", "esp32c3"),
+        ("ESP32-S2", "esp32s2"),
+        ("ESP32-S3", "esp32s3"),
+        ("ESP8266", "esp8266"),
+    )
+    
     FlashModes = (
         ("", ""),
         ("Quad I/O", "qio"),
@@ -32,6 +41,14 @@
         ("Dual Output", "dout"),
     )
     
+    FlashAddresses = {
+        "esp8266": "0x0000",
+        "esp32": "0x1000",
+        "esp32c3": "0x0000",
+        "esp32s2": "0x1000",
+        "esp32s3": "0x1000",
+    }
+    
     def __init__(self, addon=False, parent=None):
         """
         Constructor
@@ -50,7 +67,8 @@
         self.firmwarePicker.setFilters(
             self.tr("Firmware Files (*.bin);;All Files (*)"))
         
-        self.espComboBox.addItems(["", "ESP32", "ESP8266"])
+        for text, chip in self.Chips:
+            self.espComboBox.addItem(text, chip)
         
         self.baudRateComboBox.addItems([
             "74.880", "115.200", "230.400", "460.800", "921.600", "1.500.000"])
@@ -112,10 +130,14 @@
             address
         @rtype tuple of (str, str, str, str, str)
         """
-        address = self.addressEdit.text() if self.__addon else ""
+        chip = self.espComboBox.currentData()
+        address = (
+            self.addressEdit.text()
+            if self.__addon else
+            self.FlashAddresses[chip])
         
         return (
-            self.espComboBox.currentText().lower(),
+            chip,
             self.firmwarePicker.text(),
             self.baudRateComboBox.currentText().replace(".", ""),
             self.modeComboBox.currentData(),

eric ide

mercurial