# Firmware required by IDE 1.3.0 IDE 1.3.0 and Device Core support EV-MUX v4 exclusively. Firmware with EV-MUX v3 is rejected before acquiring a business session. No older IDE build is bundled or maintained by this release. Obtain firmware for your exact ESP Vision board and silicon revision that explicitly supports EV-MUX v4. The firmware used to qualify this release is commit `f3de468c9ae0e9efa3b8732d8bd803f35cc28b5b` in the [firmware repository](https://gitlab.espressif.cn:6688/ae_group/esp-vision). Its [build pipeline](https://gitlab.espressif.cn:6688/ae_group/esp-vision/-/pipelines/1691149) contains board-specific artifacts. The verified ESP32-P4X-EYE artifact is for ESP32-P4 revision 3.2; do not substitute it for another board or revision. Follow the official [firmware build and flash instructions](https://docs.espressif.com/projects/esp-vision/zh_CN/latest/esp32p4/get-started/index.html). Use the selected artifact's `flash_args.json` for the correct images, addresses and flash parameters. Back up device files before updating. Preserve the existing partition table and user storage only when the new firmware's layout has been verified compatible; an application-only update is not a universal migration procedure. Reconnect in the IDE after flashing. Device Core verifies the v4 hello/capabilities, acquires the session, and waits for the VM/REPL to become ready before enabling device operations. ## Browser flashing boundary `DeviceSession.control('bootloader')` enters download mode from an already negotiated v4 session. DeviceSession does not implement the ROM flash protocol. The separate FirmwareFlashSession orchestrates the qualified flash workflow through an injected loader; full-flash backup remains a separate task. An incompatible v3 device cannot use this v4 session command; enter ROM download mode using the board's documented boot/reset procedure instead. Choose **Update firmware** in the connection panel. The IDE releases its current session and opens a dedicated updater. The ROM loader uses the download port reset sequence; use the board BOOT/RESET procedure when automatic sync fails. Download the matching CI artifact, extract `esp-vision.bin`, select that file, confirm the physical board, and connect the USB Serial/JTAG download port. The updater checks the image size and SHA-256, chip/revision, unsigned/unencrypted ROM security mode, and existing partition-table hash before offering **Write and verify**. It writes only the application at its approved address, reads the complete image back for SHA-256 verification, and resets the device. If automatic reset fails after successful verification, press RESET manually. Return to the IDE and reconnect to verify v4. This release's approved catalog covers ESP32-P4X-EYE with P4 revision 3.2 and the firmware build above. Other boards and incompatible partition migrations use the board's documented flashing procedure. No public “latest” image is offered unless its protocol and artifact have been qualified for this IDE. No firmware binary is bundled in the IDE. Device Core now exports a separate `FirmwareFlashSession` through `@esp-vision/device-core/firmware`. It validates images and controls the flash/verify lifecycle using an injected ROM loader; `DeviceSession` continues to implement only EV-MUX v4. The browser uses the website's `tasmota-webserial-esptool@9.2.23` and its qualified P4 revision/stub patch. Firmware flashing is outside the EV-MUX session protocol. Firmware flashing must not be implemented by uploading a `.bin` as an ordinary device file or by replaying v3 commands inside Device Core.