Arduino core for the ESP32 family of SoCs
This report presents the forensic synthetic code analysis of espressif/arduino-esp32, a C++ project with 17,063 GitHub stars. SynthScan v2.0 examined 229,996 lines of code across 1758 source files, recording 1243 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 6.6 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1243 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CMakeLists.txt | 441 | if(CONFIG_AUTOSTART_ARDUINO) | COMMENT |
| LOW | CMakeLists.txt | 461 | # cores/esp32/esp32-hal-log-wrapper.c provides simple pass-through wrapper implementations | COMMENT |
| LOW | .vale.ini | 1 | ################### | COMMENT |
| LOW | .vale.ini | 21 | # The path value may be absolute or relative to this configuration file. | COMMENT |
| LOW | .vale.ini | 41 | # https://vale.sh/docs/topics/packages/ | COMMENT |
| LOW | .vale.ini | 61 | COMMENT | |
| LOW | …tter_over_OpenThread/main/MatterEnhancedColorLight.cpp | 1 | // Copyright 2025 Espressif Systems (Shanghai) PTE LTD | COMMENT |
| LOW | tools/gen_crt_bundle.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | tools/gen_esp32part.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | tools/espota.py | 1 | #!/usr/bin/env python | COMMENT |
| LOW | tools/espota.py | 21 | # - Send command to controller to differ between flashing and transmitting SPIFFS image. | COMMENT |
| LOW | tools/espota.py | 41 | # Changes | COMMENT |
| LOW | tools/pioarduino-build.py | 1 | # Copyright 2014-present PlatformIO <contact@platformio.org> | COMMENT |
| LOW | variants/waveshare_esp32_s3_relay_6ch/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/waveshare_esp32_s3_touch_lcd_21/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/esp32h2-devkit-lipo/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/arduino_nesso_n1/pins_arduino.h | 61 | extern ExpanderPinError _VIN_DETECT; | COMMENT |
| LOW | variants/waveshare_esp32_s3_touch_lcd_28/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/lilygo_tlora_pager/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/lilygo_tlora_pager/pins_arduino.h | 41 | // Interrupt IO port | COMMENT |
| LOW | variants/lilygo_tlora_pager/pins_arduino.h | 61 | #define LORA_MISO (MISO) // share spi bus | COMMENT |
| LOW | variants/lilygo_tlora_pager/pins_arduino.h | 81 | #define EXPANDS_LORA_EN (3) | COMMENT |
| LOW | variants/arduino_nano_nora/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/arduino_nano_nora/pins_arduino.h | 101 | static constexpr uint8_t SDA = A4; | COMMENT |
| LOW | variants/arduino_nano_nora/io_pin_remap.cpp | 1 | #if defined(BOARD_HAS_PIN_REMAP) && !defined(ARDUINO_CORE_BUILD) | COMMENT |
| LOW | variants/arduino_nano_nora/dfu_callbacks.cpp | 1 | #include "Arduino.h" | COMMENT |
| LOW | variants/adafruit_magtag29_esp32s2/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/waveshare_p4_poe_eth/pins_arduino.h | 41 | /* ESP32-P4 EV Function board specific definitions */ | COMMENT |
| LOW | variants/waveshare_p4_poe_eth/pins_arduino.h | 61 | #define BOARD_SDMMC_POWER_PIN 45 | COMMENT |
| LOW | variants/huidu_hd_wf4/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/huidu_hd_wf4/pins_arduino.h | 21 | COMMENT | |
| LOW | variants/huidu_hd_wf4/pins_arduino.h | 41 | #define WF4_X3_R1_PIN 2 | COMMENT |
| LOW | variants/huidu_hd_wf4/pins_arduino.h | 61 | COMMENT | |
| LOW | variants/huidu_hd_wf4/pins_arduino.h | 81 | // S2-S3 PCB holes | COMMENT |
| LOW | variants/waveshare_esp32_s3_touch_lcd_43/pins_arduino.h | 1 | COMMENT | |
| LOW | variants/waveshare_esp32_s3_touch_lcd_43/pins_arduino.h | 21 | #define WS_LCD_B7 10 | COMMENT |
| LOW | variants/waveshare_esp32_s3_touch_lcd_43/pins_arduino.h | 41 | // Touch for gt911 | COMMENT |
| LOW | variants/sensebox_mcu_esp32s2/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/sensebox_mcu_esp32s2/pins_arduino.h | 41 | static const uint8_t MISO = 37; | COMMENT |
| LOW | variants/sensebox_mcu_esp32s2/pins_arduino.h | 61 | #define PIN_XB1_RESET 38 | COMMENT |
| LOW | variants/sensebox_mcu_esp32s2/pins_arduino.h | 101 | #define PD_SENSE 14 | COMMENT |
| LOW | variants/twinaiot/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | …riants/waveshare_esp32_s3_touch_lcd_43b/pins_arduino.h | 1 | COMMENT | |
| LOW | …riants/waveshare_esp32_s3_touch_lcd_43b/pins_arduino.h | 21 | #define WS_LCD_B7 10 | COMMENT |
| LOW | …riants/waveshare_esp32_s3_touch_lcd_43b/pins_arduino.h | 41 | // Touch for gt911 | COMMENT |
| LOW | variants/ttgo-lora32-v1/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/lilygo_twatch_s3/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/lilygo_twatch_s3/pins_arduino.h | 21 | COMMENT | |
| LOW | variants/lilygo_twatch_s3/pins_arduino.h | 61 | #define LORA_CS (5) | COMMENT |
| LOW | variants/m5stack_atoms3/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/adafruit_camera_esp32s3/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/adafruit_camera_esp32s3/pins_arduino.h | 61 | #define AWEXP_BUTTON_UP 13 | COMMENT |
| LOW | variants/heltec_wireless_stick_v3/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/m5stack_nanoc6/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/sparkfun_esp32c5_thing_plus/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/lolin_s2_pico/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/esp32p4_4ds_mipi/pins_arduino.h | 41 | #define LCD_INTERFACE_MIPI | COMMENT |
| LOW | variants/esp32p4_4ds_mipi/pins_arduino.h | 61 | #define I2S_LRCK 10 | COMMENT |
| LOW | variants/huidu_hd_wf2/pins_arduino.h | 1 | #ifndef Pins_Arduino_h | COMMENT |
| LOW | variants/huidu_hd_wf2/pins_arduino.h | 21 | #define WF2_X2_R1_PIN 4 | COMMENT |
| 840 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | platform.txt | 241 | ## --------------------------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 246 | ## ------------------ | COMMENT |
| MEDIUM⚡ | platform.txt | 248 | ## ------------------ | COMMENT |
| MEDIUM⚡ | platform.txt | 251 | # ---------------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 341 | ## ------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 351 | ## ------------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 358 | ## ------------------------------------------ | COMMENT |
| MEDIUM⚡ | platform.txt | 366 | ## --------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 373 | ## ------------------------------------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 379 | ## ------------------------------------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 386 | ## ------------------------------------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 393 | ## -------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | platform.txt | 396 | ## -------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/validation/signed_ota/test_signed_ota.py | 84 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/validation/signed_ota/test_signed_ota.py | 86 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/validation/signed_ota/test_signed_ota.py | 235 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/validation/signed_ota/test_signed_ota.py | 237 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/validation/democfg/ci.yml | 6 | # -------------------- | COMMENT |
| MEDIUM | tests/validation/democfg/ci.yml | 40 | # ----------- | COMMENT |
| MEDIUM | tests/validation/democfg/ci.yml | 61 | # ----------------------- | COMMENT |
| MEDIUM⚡ | tests/validation/democfg/ci.yml | 80 | # ---------------------- | COMMENT |
| MEDIUM⚡ | tests/validation/democfg/ci.yml | 86 | # ---------- | COMMENT |
| MEDIUM⚡ | tests/validation/democfg/ci.yml | 96 | # -------------- | COMMENT |
| MEDIUM⚡ | tests/validation/democfg/ci.yml | 103 | # --------------------- | COMMENT |
| MEDIUM | docs/conf_common.py | 1 | # --------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/workflows/issue-auto-label.yml | 1 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | .github/workflows/issue-auto-label.yml | 3 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | .github/workflows/issue-auto-label.yml | 12 | # ============================================================================= | COMMENT |
| MEDIUM | .github/scripts/test_runtime_table_generator.py | 50 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/test_runtime_table_generator.py | 52 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/test_runtime_table_generator.py | 157 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/test_runtime_table_generator.py | 159 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/test_runtime_table_generator.py | 574 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/test_runtime_table_generator.py | 576 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .github/scripts/socs_config.sh | 10 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | .github/scripts/socs_config.sh | 12 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | .github/scripts/socs_config.sh | 206 | # ============================================================================== | COMMENT |
| MEDIUM⚡ | .github/scripts/socs_config.sh | 208 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 51 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 53 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 89 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 91 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 162 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 164 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 236 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 238 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 266 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 268 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 298 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 300 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 332 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/socs_config.sh | 334 | # ============================================================================== | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 57 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 59 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 126 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 128 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 191 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 193 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 338 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 340 | # --------------------------------------------------------------------------- | COMMENT |
| 6 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .gitlab/scripts/gen_hw_jobs.py | 28 | except Exception as e: | CODE |
| LOW | .gitlab/scripts/gen_hw_jobs.py | 47 | except Exception as e: | CODE |
| LOW | .gitlab/scripts/gen_hw_jobs.py | 219 | except Exception as e: | CODE |
| LOW | .gitlab/scripts/gen_hw_jobs.py | 232 | except Exception as e: | CODE |
| LOW | .gitlab/scripts/gen_hw_jobs.py | 237 | except Exception as e2: | CODE |
| LOW⚡ | .gitlab/scripts/gen_hw_jobs.py | 278 | except Exception: | CODE |
| LOW⚡ | .gitlab/scripts/gen_hw_jobs.py | 284 | except Exception: | CODE |
| LOW⚡ | .gitlab/scripts/gen_hw_jobs.py | 288 | except Exception as e: | CODE |
| LOW | .gitlab/scripts/gen_hw_jobs.py | 377 | except Exception as e: | CODE |
| LOW | tools/gen_esp32part.py | 217 | except Exception: | CODE |
| LOW⚡ | tools/espota.py | 211 | except Exception as e: | CODE |
| LOW⚡ | tools/espota.py | 226 | except Exception as e: | CODE |
| LOW | tools/espota.py | 416 | except Exception as e: | CODE |
| LOW | tools/espota.py | 449 | except Exception as e: | CODE |
| LOW | tools/espota.py | 467 | except Exception as e: # noqa: E722 | CODE |
| LOW | tools/get.py | 221 | except Exception as e: | CODE |
| LOW | tools/get.py | 253 | except Exception as e: | CODE |
| MEDIUM | tools/get.py | 104 | def mkdir_p(path): | CODE |
| MEDIUM | tools/bin_signing.py | 50 | print(f"Error: Unsupported curve. Supported curves: {', '.join(curves.keys())}") | CODE |
| MEDIUM | tools/bin_signing.py | 130 | print(f"Error: Unsupported hash algorithm. Supported: {', '.join(hash_algos.keys())}") | CODE |
| MEDIUM | tools/bin_signing.py | 147 | print("Error: Unsupported key type") | CODE |
| MEDIUM | tools/bin_signing.py | 179 | print("Error: File too small to contain signature") | CODE |
| MEDIUM | tools/bin_signing.py | 197 | print(f"Error: Unsupported hash algorithm. Supported: {', '.join(hash_algos.keys())}") | CODE |
| MEDIUM | tools/bin_signing.py | 219 | print("Error: Unsupported key type") | CODE |
| LOW | tools/bin_signing.py | 224 | except Exception as e: | CODE |
| MEDIUM | tools/bin_signing.py | 274 | print("Error: --out required for key generation") | STRING |
| MEDIUM⚡ | tools/bin_signing.py | 285 | print("Error: Invalid key type. Supported: rsa-2048, rsa-3072, rsa-4096, ecdsa-p256, ecdsa-p384") | STRING |
| MEDIUM⚡ | tools/bin_signing.py | 290 | print("Error: --out required for public key extraction") | STRING |
| MEDIUM⚡ | tools/bin_signing.py | 296 | print("Error: --pubkey required for verification") | STRING |
| MEDIUM⚡ | tools/bin_signing.py | 302 | print("Error: --out required for signing") | STRING |
| LOW | tools/flasher.py | 172 | except Exception as e: | CODE |
| LOW | tests/performance/ramspeed/test_ramspeed.py | 127 | except Exception as e: | CODE |
| LOW | tests/performance/psramspeed/test_psramspeed.py | 127 | except Exception as e: | CODE |
| LOW | tests/performance/superpi/test_superpi.py | 56 | except Exception as e: | CODE |
| LOW | tests/performance/linpack_float/test_linpack_float.py | 75 | except Exception as e: | CODE |
| LOW | tests/performance/fibonacci/test_fibonacci.py | 83 | except Exception as e: | CODE |
| LOW | tests/performance/coremark/test_coremark.py | 61 | except Exception as e: | CODE |
| LOW | tests/performance/linpack_double/test_linpack_double.py | 75 | except Exception as e: | CODE |
| LOW | tests/validation/periman/test_periman.py | 38 | except Exception as e: # noqa: F841 | CODE |
| LOW | tests/validation/signed_ota/test_signed_ota.py | 117 | except Exception: | CODE |
| LOW | tests/validation/signed_ota/test_signed_ota.py | 310 | except Exception as e: | CODE |
| MEDIUM | tests/validation/signed_ota/test_signed_ota.py | 187 | def copyfile(self, source, outputfile): | CODE |
| LOW | tests/validation/tls_http/test_tls_http.py | 47 | except Exception as e: | CODE |
| LOW | tests/validation/ota/test_ota.py | 41 | except Exception: | CODE |
| MEDIUM | libraries/WiFi/examples/WiFiUDPClient/udp_server.py | 46 | print("Error: Failed to get interface IPs using system commands") | CODE |
| MEDIUM | libraries/WiFi/examples/WiFiUDPClient/udp_server.py | 59 | print("Error: Failed to get interface IPs using sockets") | CODE |
| MEDIUM | libraries/WiFi/examples/WiFiUDPClient/udp_server.py | 63 | print("Error: No network interfaces found. Please check your network configuration.") | CODE |
| LOW | .github/scripts/process_sarif.py | 122 | except Exception as e: | CODE |
| MEDIUM | .github/scripts/process_sarif.py | 123 | print(f"Error processing SARIF file: {e}") | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 28 | except Exception as e: | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 34 | except Exception as e: | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 50 | except Exception as e: | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 157 | except Exception as e: | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 164 | except Exception as e: | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 359 | except Exception as e: | CODE |
| LOW | .github/scripts/include_checker.py | 66 | except Exception as e: | CODE |
| MEDIUM | .github/scripts/include_checker.py | 81 | print(f"Error: Directory '{root_dir}' does not exist") | CODE |
| MEDIUM | .github/scripts/get_affected.py | 540 | print(f"Error: Ctags failed with return code {e.returncode}", file=sys.stderr) | CODE |
| LOW | .github/scripts/get_affected.py | 321 | except Exception: | CODE |
| LOW | .github/scripts/get_affected.py | 544 | except Exception as e: | CODE |
| 4 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 502 | // Step 1: Power-up sequence - Send at least 74 clock cycles with CS high and MOSI high | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 510 | // Step 2: Select the card and send GO_IDLE_STATE command | COMMENT |
| LOW | libraries/SD/src/sd_diskio.cpp | 524 | // Step 3: Configure CRC checking | COMMENT |
| LOW | libraries/SD/src/sd_diskio.cpp | 535 | // Step 4: Card type detection and initialization | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 604 | // Step 5: Clear card detection for SD cards (not needed for MMC) | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 612 | // Step 6: Set block length for non-SDHC cards | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 621 | // Step 7: Get card capacity and finalize initialization | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 21 | // Step 1: Verify ESP-Hosted is properly initialized | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 27 | // Step 2: Check if an update is actually available | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 33 | // Step 3: Ensure network connectivity is available | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 39 | // Step 4: Begin the update process - display update URL | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 43 | // Step 5: Create a secure network client for HTTPS communication | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 50 | // Step 6: Configure client to skip certificate verification (insecure mode) | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 53 | // Step 7: Initialize HTTP client and attempt to connect to update server | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 61 | // Step 8: Send HTTP GET request to download the firmware | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 64 | // Step 9: Get the size of the firmware file to download | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 72 | // Step 10: Get stream pointer for reading firmware data | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 75 | // Step 11: Initialize the ESP-Hosted update process | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 83 | // Step 12: Allocate buffer for firmware data transfer (2KB chunks) | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 92 | // Step 13: Download and write firmware data in chunks | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 147 | // Step 15: Clean up allocated buffer | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 156 | // Step 16: Close HTTP connection | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 160 | // Step 17: Clean up network client | COMMENT |
| LOW | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 120 | // Step 14: Check if entire firmware has been downloaded | COMMENT |
| LOW | libraries/Update/examples/Signed_OTA_Update/README.md | 28 | ### Step 1: Generate Key Pair | COMMENT |
| LOW | libraries/Update/examples/Signed_OTA_Update/README.md | 46 | ### Step 2: Update the Example Sketch | COMMENT |
| LOW | libraries/Update/examples/Signed_OTA_Update/README.md | 62 | ### Step 3: Build and Upload Initial Firmware | COMMENT |
| LOW | libraries/Update/examples/Signed_OTA_Update/README.md | 67 | ### Step 4: Build and Sign New Firmware | COMMENT |
| LOW | libraries/Update/examples/Signed_OTA_Update/README.md | 84 | ### Step 5: Host the Signed Firmware | COMMENT |
| LOW | libraries/Update/examples/Signed_OTA_Update/README.md | 88 | ### Step 6: Perform OTA Update | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 530 | // Step 1: Reverse byte order of the 16-byte block | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 550 | // Step 2: Apply AES-ECB encryption (this decrypts due to the involutory scheme) | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 563 | // Step 3: Reverse byte order back to get the decrypted plaintext | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 579 | // Step 1: Reverse byte order of the 16-byte block | COMMENT |
| LOW⚡ | libraries/Update/src/Updater.cpp | 593 | // Step 2: Apply AES encryption (this decrypts due to the involutory scheme) | COMMENT |
| LOW⚡ | libraries/Update/src/Updater.cpp | 598 | // Step 3: Reverse byte order back to get the decrypted plaintext | COMMENT |
| LOW | …ESP32/examples/Serial/IrdaMode_TwoBoard_Demo/README.md | 97 | ### Step 1: Program Both Boards | COMMENT |
| LOW | …ESP32/examples/Serial/IrdaMode_TwoBoard_Demo/README.md | 111 | ### Step 2: Setup Hardware | COMMENT |
| LOW | …ESP32/examples/Serial/IrdaMode_TwoBoard_Demo/README.md | 118 | ### Step 3: Monitor Communication | COMMENT |
| LOW | …ESP32/examples/Serial/IrdaMode_DualUART_Demo/README.md | 58 | ### Step 1: Verify Board Compatibility | COMMENT |
| LOW | …ESP32/examples/Serial/IrdaMode_DualUART_Demo/README.md | 66 | ### Step 2: Run the Example | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .gitlab/scripts/get_artifacts.sh | 12 | # Check if GitHub token is available | COMMENT |
| LOW | .gitlab/scripts/get_artifacts.sh | 43 | # Check if we got a valid response | COMMENT |
| LOW | tests/conftest.py | 34 | # Check if the IP address is a valid IPv4 address | COMMENT |
| LOW | tests/performance/fibonacci/test_fibonacci.py | 52 | # Check if the result is correct | COMMENT |
| LOW | .github/scripts/tests_run.sh | 7 | # Check if a test is a multi-device test | COMMENT |
| LOW | .github/scripts/tests_run.sh | 145 | # Check if the build is for the correct target | COMMENT |
| LOW | .github/scripts/tests_run.sh | 343 | # Check if target is supported by Wokwi | COMMENT |
| LOW | .github/scripts/tests_run.sh | 359 | # Check if target is supported by QEMU | COMMENT |
| LOW | .github/scripts/tests_run.sh | 609 | # Check if this is a multi-device test | COMMENT |
| LOW | .github/scripts/check_official_variants.sh | 4 | # Check if Official Variants Changed | COMMENT |
| LOW | .github/scripts/check_official_variants.sh | 66 | # Check if file is in variants/ directory | COMMENT |
| LOW | .github/scripts/check_official_variants.sh | 71 | # Check if this variant is in official targets | COMMENT |
| LOW | .github/scripts/check_official_variants.sh | 94 | # Output result | COMMENT |
| LOW | .github/scripts/process_sarif.py | 110 | # Check if files exist | COMMENT |
| LOW | .github/scripts/tests_build.sh | 35 | # Check if a test is a multi-device test | COMMENT |
| LOW⚡ | .github/scripts/tests_build.sh | 81 | # Check if target is supported by this test | COMMENT |
| LOW⚡ | .github/scripts/tests_build.sh | 83 | # Check if target is explicitly disabled | COMMENT |
| LOW⚡ | .github/scripts/tests_build.sh | 90 | # Check if target meets the requirements using check_requirements from sketch_utils.sh | COMMENT |
| LOW | .github/scripts/tests_build.sh | 299 | # Check if this is a multi-device test | COMMENT |
| LOW | .github/scripts/generate_missing_junits.py | 434 | # Check if target and type are valid for this specific platform | COMMENT |
| LOW | .github/scripts/include_checker.py | 47 | # Check if already has Arduino.h include | COMMENT |
| LOW | .github/scripts/include_checker.py | 192 | # Check if first argument is a directory or a file | COMMENT |
| LOW | .github/scripts/sketch_utils.sh | 18 | # Check if the sketch requires any configuration options (AND) | COMMENT |
| LOW | .github/scripts/sketch_utils.sh | 33 | # Check if the sketch requires any configuration options (OR) | COMMENT |
| LOW | .github/scripts/find_new_boards.sh | 13 | # Check if the diff is empty | COMMENT |
| LOW | .github/scripts/find_new_boards.sh | 39 | # Check if board_name is in excluded entries | COMMENT |
| LOW | .github/scripts/validate_board.sh | 92 | # Check if it's all uppercase | COMMENT |
| LOW | .github/scripts/validate_board.sh | 133 | # Check if board has menu.FlashSize entries | COMMENT |
| LOW | .github/scripts/validate_board.sh | 440 | # Check if VID and PID indices match | COMMENT |
| LOW | .github/scripts/validate_board.sh | 502 | # Check if DebugLevel menu exists | COMMENT |
| LOW⚡ | .github/scripts/socs_config.sh | 210 | # Check if SoC is supported by QEMU | COMMENT |
| LOW | .github/scripts/socs_config.sh | 223 | # Check if SoC is supported by Wokwi | COMMENT |
| LOW | .github/scripts/socs_config.sh | 285 | # Check if a SoC should be skipped in library builds | COMMENT |
| LOW | .github/scripts/get_affected.py | 835 | # Check if any build files have changed | COMMENT |
| LOW | .github/scripts/get_affected.py | 952 | # Check if this file belongs to an IDF component example | COMMENT |
| LOW | .github/scripts/get_affected.py | 1093 | # Close file if we opened it (CI mode) | COMMENT |
| LOW | .github/scripts/ci_testing/test_ide_v1_docker.sh | 92 | # Check if Windows containers are enabled | COMMENT |
| LOW | .github/scripts/ci_testing/test_ide_v1_docker.sh | 253 | # Print results | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 502 | // Step 1: Power-up sequence - Send at least 74 clock cycles with CS high and MOSI high | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 510 | // Step 2: Select the card and send GO_IDLE_STATE command | COMMENT |
| LOW | libraries/SD/src/sd_diskio.cpp | 524 | // Step 3: Configure CRC checking | COMMENT |
| LOW | libraries/SD/src/sd_diskio.cpp | 535 | // Step 4: Card type detection and initialization | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 604 | // Step 5: Clear card detection for SD cards (not needed for MMC) | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 612 | // Step 6: Set block length for non-SDHC cards | COMMENT |
| LOW⚡ | libraries/SD/src/sd_diskio.cpp | 621 | // Step 7: Get card capacity and finalize initialization | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 21 | // Step 1: Verify ESP-Hosted is properly initialized | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 27 | // Step 2: Check if an update is actually available | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 33 | // Step 3: Ensure network connectivity is available | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 39 | // Step 4: Begin the update process - display update URL | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 43 | // Step 5: Create a secure network client for HTTPS communication | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 50 | // Step 6: Configure client to skip certificate verification (insecure mode) | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 53 | // Step 7: Initialize HTTP client and attempt to connect to update server | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 61 | // Step 8: Send HTTP GET request to download the firmware | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 64 | // Step 9: Get the size of the firmware file to download | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 72 | // Step 10: Get stream pointer for reading firmware data | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 75 | // Step 11: Initialize the ESP-Hosted update process | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 83 | // Step 12: Allocate buffer for firmware data transfer (2KB chunks) | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 92 | // Step 13: Download and write firmware data in chunks | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 147 | // Step 15: Clean up allocated buffer | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 156 | // Step 16: Close HTTP connection | COMMENT |
| LOW⚡ | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 160 | // Step 17: Clean up network client | COMMENT |
| LOW | libraries/ESP_HostedOTA/src/ESP_HostedOTA.cpp | 120 | // Step 14: Check if entire firmware has been downloaded | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 530 | // Step 1: Reverse byte order of the 16-byte block | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 550 | // Step 2: Apply AES-ECB encryption (this decrypts due to the involutory scheme) | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 563 | // Step 3: Reverse byte order back to get the decrypted plaintext | COMMENT |
| LOW | libraries/Update/src/Updater.cpp | 579 | // Step 1: Reverse byte order of the 16-byte block | COMMENT |
| LOW⚡ | libraries/Update/src/Updater.cpp | 593 | // Step 2: Apply AES encryption (this decrypts due to the involutory scheme) | COMMENT |
| LOW⚡ | libraries/Update/src/Updater.cpp | 598 | // Step 3: Reverse byte order back to get the decrypted plaintext | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/gen_esp32part.py | 113 | def get_alignment_offset_for_type(ptype): | CODE |
| LOW | tools/gen_esp32part.py | 117 | def get_alignment_size_for_type(ptype): | CODE |
| LOW | tools/espota.py | 98 | def send_invitation_and_get_auth_challenge(remote_addr, remote_port, message): | CODE |
| LOW | tools/pioarduino-build.py | 93 | def generate_bootloader_image(bootloader_elf): | CODE |
| LOW | tools/get.py | 172 | def print_verification_progress(total_files, i, t1): | CODE |
| LOW | tools/get.py | 364 | def download_file_with_progress(url, filename, start_time): | CODE |
| LOW | tests/validation/gpio/test_gpio.py | 35 | def test_interrupt_attach_detach(): | CODE |
| LOW | libraries/WebServer/src/detail/RequestHandler.h | 7 | class RequestHandler { | CODE |
| LOW | libraries/WebServer/src/detail/RequestHandlersImpl.h | 47 | class FunctionRequestHandler : public RequestHandler { | CODE |
| LOW | libraries/WebServer/src/detail/RequestHandlersImpl.h | 146 | class StaticRequestHandler : public RequestHandler { | CODE |
| LOW | .github/scripts/runtime_table_generator.py | 56 | def _load_build_failure_cells(path): | CODE |
| LOW | .github/scripts/runtime_table_generator.py | 138 | def _collect_and_aggregate_performance(perf_dir): | CODE |
| LOW | .github/scripts/process_sarif.py | 10 | def process_artifact_location(artifact_location, renamed_files): | CODE |
| LOW | .github/scripts/process_sarif.py | 31 | def process_physical_location(physical_location, renamed_files): | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 248 | def _write_build_failure_cells(out_root: Path, cells): | CODE |
| LOW | .github/scripts/generate_missing_junits.py | 277 | def expected_from_previous_results(path, enabled_plats, plat_targets, plat_types): | CODE |
| LOW | .github/scripts/include_checker.py | 26 | def find_first_preprocessor_line(lines: List[str]) -> int: | CODE |
| LOW | .github/scripts/backlog-cleanup.js | 89 | async function hasRecentFriendlyReminder(github, owner, repo, issueNumber, maxAgeMs) { | CODE |
| LOW | .github/scripts/update_esptool.py | 54 | def update_tests_requirements(requirements_path, version): | CODE |
| LOW | .github/scripts/update_esptool.py | 127 | def update_tools_dependencies(tmp_json_path, version): | CODE |
| LOW | .github/scripts/update_esptool.py | 189 | def update_json_from_local_build(tmp_json_path, version, base_folder, archive_files): | CODE |
| LOW | .github/scripts/get_affected.py | 118 | def resolve_changed_path_to_project_relative(path: str) -> str: | CODE |
| LOW | .github/scripts/get_affected.py | 252 | def reverse_walk_reaches_any_sketch(path: str) -> bool: | CODE |
| LOW | .github/scripts/get_affected.py | 282 | def changed_sketch_sources_with_no_path_to_inos(changed_files: list[str]) -> list[str]: | CODE |
| LOW | .github/scripts/get_affected.py | 324 | def normalize_function_signature(signature: str) -> str: | CODE |
| LOW | .github/scripts/get_affected.py | 460 | def find_impl_files_for_qname(qname: str, defs_by_qname: dict[str, set[str]], header_path: str = None) -> set[str]: | CODE |
| LOW | .github/scripts/get_affected.py | 644 | def list_idf_component_examples() -> list[str]: | CODE |
| LOW | .github/scripts/get_affected.py | 769 | def build_reverse_dependencies() -> None: | CODE |
| LOW | .github/scripts/get_affected.py | 799 | def has_sketch_build_files_changed(path: str) -> bool: | CODE |
| LOW | .github/scripts/get_affected.py | 1011 | def save_dependencies_as_json(output_file: str = "dependencies.json") -> None: | CODE |
| LOW | .github/scripts/get_affected.py | 1027 | def check_preset_files_affected(): | CODE |
| LOW | …hub/scripts/ci_testing/test_generate_missing_junits.py | 17 | def test_platform_allowed_per_target_disable(): | CODE |
| LOW | …hub/scripts/ci_testing/test_generate_missing_junits.py | 31 | def test_test_enabled_for_target(): | CODE |
| LOW | …hub/scripts/ci_testing/test_generate_missing_junits.py | 38 | def test_expected_from_artifacts_honors_per_target_platform_disable(): | CODE |
| LOW | …hub/scripts/ci_testing/test_generate_missing_junits.py | 66 | def test_built_tests_blocks_cache_fallback(): | STRING |
| LOW | .github/scripts/ci_testing/test_mock_bootloader.py | 71 | def test_flasher_socket_platform_recipe() -> bool: | CODE |
| LOW | .github/scripts/ci_testing/test_flasher.py | 90 | def make_mock_esptool_failing(path: Path) -> Path: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .vale.ini | 30 | # Create a folder in <StylesPath>/Vocab/<name>/and add its name here | COMMENT |
| MEDIUM⚡ | tools/espota.py | 219 | # Create a TCP/IP socket | COMMENT |
| MEDIUM | tools/add_lib.sh | 23 | # Define the default values for the parameters | COMMENT |
| MEDIUM | .github/workflows/codeql.yml | 40 | # Create a mapping file to track renamed files | COMMENT |
| MEDIUM | .github/workflows/tests.yml | 1 | # This file is used to run the runtime tests for the Arduino core for ESP32. | COMMENT |
| MEDIUM | .github/scripts/test_runtime_table_generator.py | 473 | # Create a minimal perf result JSON | COMMENT |
| MEDIUM⚡ | .github/scripts/socs_config.sh | 5 | # This file contains all supported SoC definitions for the ESP32 Arduino core. | COMMENT |
| MEDIUM | .github/scripts/tests_matrix.sh | 32 | # Create a single JSON file with all test matrix information | COMMENT |
| MEDIUM | .github/scripts/tests_utils.sh | 6 | # This function handles both multi-device tests (which have ci.yml at test level) | COMMENT |
| MEDIUM | .github/scripts/ci_testing/test_flasher.py | 483 | # Create a fake 'esptool' on a custom PATH | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .gitlab/scripts/gen_hw_jobs.py | 63 | CODE | |
| LOW | .gitlab/scripts/gen_hw_jobs.py | 100 | CODE | |
| LOW | .gitlab/scripts/gen_hw_jobs.py | 183 | CODE | |
| LOW | tools/gen_crt_bundle.py | 82 | CODE | |
| LOW | tools/gen_esp32part.py | 146 | CODE | |
| LOW | tools/espota.py | 216 | CODE | |
| LOW | tools/get.py | 178 | CODE | |
| LOW | tools/get.py | 260 | CODE | |
| LOW | tools/get.py | 364 | CODE | |
| LOW | tools/get.py | 392 | CODE | |
| LOW | tools/get.py | 414 | CODE | |
| LOW | tools/get.py | 487 | CODE | |
| LOW | tools/bin_signing.py | 229 | CODE | |
| LOW | tools/flasher.py | 158 | CODE | |
| LOW | tests/performance/ramspeed/test_ramspeed.py | 8 | CODE | |
| LOW | tests/performance/psramspeed/test_psramspeed.py | 8 | CODE | |
| LOW | libraries/WiFi/examples/WiFiUDPClient/udp_server.py | 9 | CODE | |
| LOW | .github/scripts/runtime_table_generator.py | 138 | CODE | |
| LOW | .github/scripts/process_sarif.py | 48 | CODE | |
| LOW | .github/scripts/generate_missing_junits.py | 104 | CODE | |
| LOW | .github/scripts/generate_missing_junits.py | 277 | CODE | |
| LOW | .github/scripts/generate_missing_junits.py | 336 | CODE | |
| LOW | .github/scripts/update_esptool.py | 79 | CODE | |
| LOW | .github/scripts/update_esptool.py | 127 | CODE | |
| LOW | .github/scripts/update_esptool.py | 141 | CODE | |
| LOW | .github/scripts/update_esptool.py | 173 | CODE | |
| LOW | .github/scripts/release_append_cn.py | 18 | CODE | |
| LOW | .github/scripts/get_affected.py | 324 | CODE | |
| LOW | .github/scripts/get_affected.py | 460 | CODE | |
| LOW | .github/scripts/get_affected.py | 605 | CODE | |
| LOW | .github/scripts/get_affected.py | 617 | CODE | |
| LOW | .github/scripts/get_affected.py | 686 | CODE | |
| LOW | .github/scripts/get_affected.py | 779 | CODE | |
| LOW | .github/scripts/get_affected.py | 816 | CODE | |
| LOW | .github/scripts/get_affected.py | 870 | CODE | |
| LOW | .github/scripts/release/github_release_proxy.py | 82 | CODE | |
| LOW | .github/scripts/ci_testing/test_ide1_upload_pattern.py | 180 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/arduino_cmake.py | 15 | CODE | |
| LOW | tools/gen_crt_bundle.py | 25 | CODE | |
| LOW | tools/espota.py | 54 | CODE | |
| LOW | tools/get.py | 9 | CODE | |
| LOW | tools/flasher.py | 6 | CODE | |
| LOW | tests/validation/signed_ota/test_signed_ota.py | 12 | CODE | |
| LOW | docs/conf_common.py | 3 | CODE | |
| LOW | docs/en/conf.py | 11 | CODE | |
| LOW | docs/en/conf.py | 17 | CODE | |
| LOW | .github/scripts/test_runtime_table_generator.py | 40 | CODE | |
| LOW | .github/scripts/merge_packages.py | 10 | CODE | |
| LOW | .github/scripts/release/github_release_proxy.py | 4 | CODE | |
| LOW | .github/scripts/ci_testing/test_ide1_upload_pattern.py | 4 | CODE | |
| LOW | .github/scripts/ci_testing/test_mock_bootloader.py | 16 | CODE | |
| LOW | .github/scripts/ci_testing/test_flasher.py | 43 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/scripts/check_official_variants.sh | 7 | # Usage: | COMMENT |
| LOW | .github/scripts/merge_packages.py | 4 | # Usage: | COMMENT |
| LOW | .github/scripts/ci_testing/test_ide_v1_docker.sh | 12 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .gitlab/scripts/gen_hw_jobs.py | 378 | # Be robust to unexpected runner payloads | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | libraries/Zigbee/src/ep/ZigbeeDimmableLight.cpp | 56 | // TODO: implement more attributes -> includes/zcl/esp_zigbee_zcl_level.h | COMMENT |