Skip to content

Align BoardDetailsResponse#config_options order with Java IDE #2018

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
3 tasks done
dankeboy36 opened this issue Dec 26, 2022 · 1 comment · Fixed by #2159
Closed
3 tasks done

Align BoardDetailsResponse#config_options order with Java IDE #2018

dankeboy36 opened this issue Dec 26, 2022 · 1 comment · Fixed by #2159
Assignees
Labels
conclusion: resolved Issue was resolved topic: code Related to content of the project itself type: enhancement Proposed improvement

Comments

@dankeboy36
Copy link
Contributor

Describe the request

I want to show the config options for a board in the same order as the Java IDE. The array of config options is out of order in the response. Thanks!

IDE:
Screen Shot 2022-12-26 at 12 51 42

Describe the current behavior

Request:

{
    "instance": {
        "id": 1
    },
    "fqbn": "esp8266:esp8266:generic"
}

Response:

{
    "fqbn": "esp8266:esp8266:generic",
    "configOptions": [
        {
            "option": "xtal",
            "optionLabel": "CPU Frequency",
            "values": [
                {
                    "value": "80",
                    "valueLabel": "80 MHz",
                    "selected": true
                },
                {
                    "value": "160",
                    "valueLabel": "160 MHz",
                    "selected": false
                }
            ]
        },
        {
            "option": "vt",
            "optionLabel": "VTables",
            "values": [
                {
                    "value": "flash",
                    "valueLabel": "Flash",
                    "selected": true
                },
                {
                    "value": "heap",
                    "valueLabel": "Heap",
                    "selected": false
                },
                {
                    "value": "iram",
                    "valueLabel": "IRAM",
                    "selected": false
                }
            ]
        },
        {
            "option": "exception",
            "optionLabel": "C++ Exceptions",
            "values": [
                {
                    "value": "disabled",
                    "valueLabel": "Disabled (new aborts on oom)",
                    "selected": true
                },
                {
                    "value": "enabled",
                    "valueLabel": "Enabled",
                    "selected": false
                }
            ]
        },
        {
            "option": "stacksmash",
            "optionLabel": "Stack Protection",
            "values": [
                {
                    "value": "disabled",
                    "valueLabel": "Disabled",
                    "selected": true
                },
                {
                    "value": "enabled",
                    "valueLabel": "Enabled",
                    "selected": false
                }
            ]
        },
        {
            "option": "ssl",
            "optionLabel": "SSL Support",
            "values": [
                {
                    "value": "all",
                    "valueLabel": "All SSL ciphers (most compatible)",
                    "selected": true
                },
                {
                    "value": "basic",
                    "valueLabel": "Basic SSL ciphers (lower ROM use)",
                    "selected": false
                }
            ]
        },
        {
            "option": "mmu",
            "optionLabel": "MMU",
            "values": [
                {
                    "value": "3232",
                    "valueLabel": "32KB cache + 32KB IRAM (balanced)",
                    "selected": true
                },
                {
                    "value": "4816",
                    "valueLabel": "16KB cache + 48KB IRAM (IRAM)",
                    "selected": false
                },
                {
                    "value": "4816H",
                    "valueLabel": "16KB cache + 48KB IRAM and 2nd Heap (shared)",
                    "selected": false
                },
                {
                    "value": "3216",
                    "valueLabel": "16KB cache + 32KB IRAM + 16KB 2nd Heap (not shared)",
                    "selected": false
                },
                {
                    "value": "ext128k",
                    "valueLabel": "128K External 23LC1024",
                    "selected": false
                },
                {
                    "value": "ext1024k",
                    "valueLabel": "1M External 64 MBit PSRAM",
                    "selected": false
                }
            ]
        },
        {
            "option": "non32xfer",
            "optionLabel": "Non-32-Bit Access",
            "values": [
                {
                    "value": "fast",
                    "valueLabel": "Use pgm_read macros for IRAM/PROGMEM",
                    "selected": true
                },
                {
                    "value": "safe",
                    "valueLabel": "Byte/Word access to IRAM/PROGMEM (very slow)",
                    "selected": false
                }
            ]
        },
        {
            "option": "ResetMethod",
            "optionLabel": "Reset Method",
            "values": [
                {
                    "value": "nodemcu",
                    "valueLabel": "dtr (aka nodemcu)",
                    "selected": true
                },
                {
                    "value": "ck",
                    "valueLabel": "no dtr (aka ck)",
                    "selected": false
                },
                {
                    "value": "nodtr_nosync",
                    "valueLabel": "no dtr, no_sync",
                    "selected": false
                }
            ]
        },
        {
            "option": "CrystalFreq",
            "optionLabel": "Crystal Frequency",
            "values": [
                {
                    "value": "26",
                    "valueLabel": "26 MHz",
                    "selected": true
                },
                {
                    "value": "40",
                    "valueLabel": "40 MHz",
                    "selected": false
                }
            ]
        },
        {
            "option": "FlashFreq",
            "optionLabel": "Flash Frequency",
            "values": [
                {
                    "value": "40",
                    "valueLabel": "40MHz",
                    "selected": true
                },
                {
                    "value": "80",
                    "valueLabel": "80MHz",
                    "selected": false
                },
                {
                    "value": "20",
                    "valueLabel": "20MHz",
                    "selected": false
                },
                {
                    "value": "26",
                    "valueLabel": "26MHz",
                    "selected": false
                }
            ]
        },
        {
            "option": "FlashMode",
            "optionLabel": "Flash Mode",
            "values": [
                {
                    "value": "dout",
                    "valueLabel": "DOUT (compatible)",
                    "selected": true
                },
                {
                    "value": "dio",
                    "valueLabel": "DIO",
                    "selected": false
                },
                {
                    "value": "qout",
                    "valueLabel": "QOUT",
                    "selected": false
                },
                {
                    "value": "qio",
                    "valueLabel": "QIO (fast)",
                    "selected": false
                }
            ]
        },
        {
            "option": "eesz",
            "optionLabel": "Flash Size",
            "values": [
                {
                    "value": "1M64",
                    "valueLabel": "1MB (FS:64KB OTA:~470KB)",
                    "selected": true
                },
                {
                    "value": "1M128",
                    "valueLabel": "1MB (FS:128KB OTA:~438KB)",
                    "selected": false
                },
                {
                    "value": "1M144",
                    "valueLabel": "1MB (FS:144KB OTA:~430KB)",
                    "selected": false
                },
                {
                    "value": "1M160",
                    "valueLabel": "1MB (FS:160KB OTA:~422KB)",
                    "selected": false
                },
                {
                    "value": "1M192",
                    "valueLabel": "1MB (FS:192KB OTA:~406KB)",
                    "selected": false
                },
                {
                    "value": "1M256",
                    "valueLabel": "1MB (FS:256KB OTA:~374KB)",
                    "selected": false
                },
                {
                    "value": "1M512",
                    "valueLabel": "1MB (FS:512KB OTA:~246KB)",
                    "selected": false
                },
                {
                    "value": "1M",
                    "valueLabel": "1MB (FS:none OTA:~502KB)",
                    "selected": false
                },
                {
                    "value": "2M64",
                    "valueLabel": "2MB (FS:64KB OTA:~992KB)",
                    "selected": false
                },
                {
                    "value": "2M128",
                    "valueLabel": "2MB (FS:128KB OTA:~960KB)",
                    "selected": false
                },
                {
                    "value": "2M256",
                    "valueLabel": "2MB (FS:256KB OTA:~896KB)",
                    "selected": false
                },
                {
                    "value": "2M512",
                    "valueLabel": "2MB (FS:512KB OTA:~768KB)",
                    "selected": false
                },
                {
                    "value": "2M1M",
                    "valueLabel": "2MB (FS:1MB OTA:~512KB)",
                    "selected": false
                },
                {
                    "value": "2M",
                    "valueLabel": "2MB (FS:none OTA:~1019KB)",
                    "selected": false
                },
                {
                    "value": "4M2M",
                    "valueLabel": "4MB (FS:2MB OTA:~1019KB)",
                    "selected": false
                },
                {
                    "value": "4M3M",
                    "valueLabel": "4MB (FS:3MB OTA:~512KB)",
                    "selected": false
                },
                {
                    "value": "4M1M",
                    "valueLabel": "4MB (FS:1MB OTA:~1019KB)",
                    "selected": false
                },
                {
                    "value": "4M",
                    "valueLabel": "4MB (FS:none OTA:~1019KB)",
                    "selected": false
                },
                {
                    "value": "8M6M",
                    "valueLabel": "8MB (FS:6MB OTA:~1019KB)",
                    "selected": false
                },
                {
                    "value": "8M7M",
                    "valueLabel": "8MB (FS:7MB OTA:~512KB)",
                    "selected": false
                },
                {
                    "value": "16M14M",
                    "valueLabel": "16MB (FS:14MB OTA:~1019KB)",
                    "selected": false
                },
                {
                    "value": "16M15M",
                    "valueLabel": "16MB (FS:15MB OTA:~512KB)",
                    "selected": false
                },
                {
                    "value": "512K32",
                    "valueLabel": "512KB (FS:32KB OTA:~230KB)",
                    "selected": false
                },
                {
                    "value": "512K64",
                    "valueLabel": "512KB (FS:64KB OTA:~214KB)",
                    "selected": false
                },
                {
                    "value": "512K128",
                    "valueLabel": "512KB (FS:128KB OTA:~182KB)",
                    "selected": false
                },
                {
                    "value": "512K",
                    "valueLabel": "512KB (FS:none OTA:~246KB)",
                    "selected": false
                }
            ]
        },
        {
            "option": "led",
            "optionLabel": "Builtin Led",
            "values": [
                {
                    "value": "2",
                    "valueLabel": "2",
                    "selected": true
                },
                {
                    "value": "0",
                    "valueLabel": "0",
                    "selected": false
                },
                {
                    "value": "1",
                    "valueLabel": "1",
                    "selected": false
                },
                {
                    "value": "3",
                    "valueLabel": "3",
                    "selected": false
                },
                {
                    "value": "4",
                    "valueLabel": "4",
                    "selected": false
                },
                {
                    "value": "5",
                    "valueLabel": "5",
                    "selected": false
                },
                {
                    "value": "6",
                    "valueLabel": "6",
                    "selected": false
                },
                {
                    "value": "7",
                    "valueLabel": "7",
                    "selected": false
                },
                {
                    "value": "8",
                    "valueLabel": "8",
                    "selected": false
                },
                {
                    "value": "9",
                    "valueLabel": "9",
                    "selected": false
                },
                {
                    "value": "10",
                    "valueLabel": "10",
                    "selected": false
                },
                {
                    "value": "11",
                    "valueLabel": "11",
                    "selected": false
                },
                {
                    "value": "12",
                    "valueLabel": "12",
                    "selected": false
                },
                {
                    "value": "13",
                    "valueLabel": "13",
                    "selected": false
                },
                {
                    "value": "14",
                    "valueLabel": "14",
                    "selected": false
                },
                {
                    "value": "15",
                    "valueLabel": "15",
                    "selected": false
                },
                {
                    "value": "16",
                    "valueLabel": "16",
                    "selected": false
                }
            ]
        },
        {
            "option": "sdk",
            "optionLabel": "Espressif FW",
            "values": [
                {
                    "value": "nonosdk_190703",
                    "valueLabel": "nonos-sdk 2.2.1+100 (190703)",
                    "selected": true
                },
                {
                    "value": "nonosdk_191122",
                    "valueLabel": "nonos-sdk 2.2.1+119 (191122)",
                    "selected": false
                },
                {
                    "value": "nonosdk_191105",
                    "valueLabel": "nonos-sdk 2.2.1+113 (191105)",
                    "selected": false
                },
                {
                    "value": "nonosdk_191024",
                    "valueLabel": "nonos-sdk 2.2.1+111 (191024)",
                    "selected": false
                },
                {
                    "value": "nonosdk221",
                    "valueLabel": "nonos-sdk 2.2.1 (legacy)",
                    "selected": false
                },
                {
                    "value": "nonosdk3v0",
                    "valueLabel": "nonos-sdk pre-3 (180626 known issues)",
                    "selected": false
                }
            ]
        },
        {
            "option": "ip",
            "optionLabel": "lwIP Variant",
            "values": [
                {
                    "value": "lm2f",
                    "valueLabel": "v2 Lower Memory",
                    "selected": true
                },
                {
                    "value": "hb2f",
                    "valueLabel": "v2 Higher Bandwidth",
                    "selected": false
                },
                {
                    "value": "lm2n",
                    "valueLabel": "v2 Lower Memory (no features)",
                    "selected": false
                },
                {
                    "value": "hb2n",
                    "valueLabel": "v2 Higher Bandwidth (no features)",
                    "selected": false
                },
                {
                    "value": "lm6f",
                    "valueLabel": "v2 IPv6 Lower Memory",
                    "selected": false
                },
                {
                    "value": "hb6f",
                    "valueLabel": "v2 IPv6 Higher Bandwidth",
                    "selected": false
                }
            ]
        },
        {
            "option": "dbg",
            "optionLabel": "Debug port",
            "values": [
                {
                    "value": "Disabled",
                    "valueLabel": "Disabled",
                    "selected": true
                },
                {
                    "value": "Serial",
                    "valueLabel": "Serial",
                    "selected": false
                },
                {
                    "value": "Serial1",
                    "valueLabel": "Serial1",
                    "selected": false
                }
            ]
        },
        {
            "option": "lvl",
            "optionLabel": "Debug Level",
            "values": [
                {
                    "value": "None____",
                    "valueLabel": "None",
                    "selected": true
                },
                {
                    "value": "SSL",
                    "valueLabel": "SSL",
                    "selected": false
                },
                {
                    "value": "TLS_MEM",
                    "valueLabel": "TLS_MEM",
                    "selected": false
                },
                {
                    "value": "HTTP_CLIENT",
                    "valueLabel": "HTTP_CLIENT",
                    "selected": false
                },
                {
                    "value": "HTTP_SERVER",
                    "valueLabel": "HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "SSLTLS_MEM",
                    "valueLabel": "SSL+TLS_MEM",
                    "selected": false
                },
                {
                    "value": "SSLHTTP_CLIENT",
                    "valueLabel": "SSL+HTTP_CLIENT",
                    "selected": false
                },
                {
                    "value": "SSLHTTP_SERVER",
                    "valueLabel": "SSL+HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "TLS_MEMHTTP_CLIENT",
                    "valueLabel": "TLS_MEM+HTTP_CLIENT",
                    "selected": false
                },
                {
                    "value": "TLS_MEMHTTP_SERVER",
                    "valueLabel": "TLS_MEM+HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "HTTP_CLIENTHTTP_SERVER",
                    "valueLabel": "HTTP_CLIENT+HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "SSLTLS_MEMHTTP_CLIENT",
                    "valueLabel": "SSL+TLS_MEM+HTTP_CLIENT",
                    "selected": false
                },
                {
                    "value": "SSLTLS_MEMHTTP_SERVER",
                    "valueLabel": "SSL+TLS_MEM+HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "SSLHTTP_CLIENTHTTP_SERVER",
                    "valueLabel": "SSL+HTTP_CLIENT+HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "TLS_MEMHTTP_CLIENTHTTP_SERVER",
                    "valueLabel": "TLS_MEM+HTTP_CLIENT+HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "SSLTLS_MEMHTTP_CLIENTHTTP_SERVER",
                    "valueLabel": "SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER",
                    "selected": false
                },
                {
                    "value": "CORE",
                    "valueLabel": "CORE",
                    "selected": false
                },
                {
                    "value": "WIFI",
                    "valueLabel": "WIFI",
                    "selected": false
                },
                {
                    "value": "HTTP_UPDATE",
                    "valueLabel": "HTTP_UPDATE",
                    "selected": false
                },
                {
                    "value": "UPDATER",
                    "valueLabel": "UPDATER",
                    "selected": false
                },
                {
                    "value": "OTA",
                    "valueLabel": "OTA",
                    "selected": false
                },
                {
                    "value": "OOM",
                    "valueLabel": "OOM",
                    "selected": false
                },
                {
                    "value": "MDNS",
                    "valueLabel": "MDNS",
                    "selected": false
                },
                {
                    "value": "HWDT",
                    "valueLabel": "HWDT",
                    "selected": false
                },
                {
                    "value": "HWDT_NOEXTRA4K",
                    "valueLabel": "HWDT_NOEXTRA4K",
                    "selected": false
                },
                {
                    "value": "COREWIFIHTTP_UPDATEUPDATEROTAOOMMDNS",
                    "valueLabel": "CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM+MDNS",
                    "selected": false
                },
                {
                    "value": "COREWIFIHTTP_UPDATEUPDATEROTAOOMMDNSHWDT",
                    "valueLabel": "CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM+MDNS+HWDT",
                    "selected": false
                },
                {
                    "value": "COREWIFIHTTP_UPDATEUPDATEROTAOOMMDNSHWDT_NOEXTRA4K",
                    "valueLabel": "CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM+MDNS+HWDT_NOEXTRA4K",
                    "selected": false
                },
                {
                    "value": "SSLTLS_MEMHTTP_CLIENTHTTP_SERVERCOREWIFIHTTP_UPDATEUPDATEROTAOOMMDNS",
                    "valueLabel": "SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER+CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM+MDNS",
                    "selected": false
                },
                {
                    "value": "SSLTLS_MEMHTTP_CLIENTHTTP_SERVERCOREWIFIHTTP_UPDATEUPDATEROTAOOMMDNSHWDT",
                    "valuxeLabel": "SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER+CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM+MDNS+HWDT",
                    "selected": false
                },
                {
                    "value": "SSLTLS_MEMHTTP_CLIENTHTTP_SERVERCOREWIFIHTTP_UPDATEUPDATEROTAOOMMDNSHWDT_NOEXTRA4K",
                    "valueLabel": "SSL+TLS_MEM+HTTP_CLIENT+HTTP_SERVER+CORE+WIFI+HTTP_UPDATE+UPDATER+OTA+OOM+MDNS+HWDT_NOEXTRA4K",
                    "selected": false
                },
                {
                    "value": "NoAssert-NDEBUG",
                    "valueLabel": "NoAssert-NDEBUG",
                    "selected": false
                }
            ]
        },
        {
            "option": "wipe",
            "optionLabel": "Erase Flash",
            "values": [
                {
                    "value": "none",
                    "valueLabel": "Only Sketch",
                    "selected": true
                },
                {
                    "value": "sdk",
                    "valueLabel": "Sketch + WiFi Settings",
                    "selected": false
                },
                {
                    "value": "all",
                    "valueLabel": "All Flash Contents",
                    "selected": false
                }
            ]
        },
        {
            "option": "baud",
            "optionLabel": "Upload Speed",
            "values": [
                {
                    "value": "115200",
                    "valueLabel": "115200",
                    "selected": true
                },
                {
                    "value": "57600",
                    "valueLabel": "57600",
                    "selected": false
                },
                {
                    "value": "230400",
                    "valueLabel": "230400",
                    "selected": false
                },
                {
                    "value": "460800",
                    "valueLabel": "460800",
                    "selected": false
                },
                {
                    "value": "921600",
                    "valueLabel": "921600",
                    "selected": false
                },
                {
                    "value": "3000000",
                    "valueLabel": "3000000",
                    "selected": false
                }
            ]
        }
    ]
}

I edited the JSON response and kept the config_options and fqbn to make the snippet smaller. The config options do not match the Java app.

Arduino CLI version

0.29.0 76251df

Operating system

macOS

Operating system version

11.6.5

Additional context

Also different. New IDE 2.0.3:

Screen Shot 2022-12-26 at 13 12 55

Issue checklist

  • I searched for previous requests in the issue tracker
  • I verified the feature was still missing when using the nightly build
  • My request contains all necessary details
@alessio-perugini
Copy link
Contributor

@dankeboy36 Thank you for opening this. In #2159 we fixed the issue. Although you'll have to bear with us a bit more until the #2036 is fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
conclusion: resolved Issue was resolved topic: code Related to content of the project itself type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants