Getting started
Quickstart
Install Flash in your tool, open your project and verify a first change on the board.
Before you begin
- Flash access. Flash is in private beta. Request a demo and our team sends you the installer for your tool.
- A project or a target board. Open existing firmware or a hardware design, or use the wizard to create a new firmware project.
- Optional: a board, connected with its programmer or debug probe, for the last steps.
Choose your tool
Steps 1 to 3 follow the tool you choose here; from step 4 on, everything is the same. Not sure which one fits? See Choose your tool.
1. Install Flash
In Flash IDE
- Install the Flash IDE package our team sends you.
- Open Flash IDE. You can create the project before signing in; step 3 sets up the agent.
2. Open or create your project
Open existing code
In Flash IDE
- On the start screen, choose Open project….
- Select the folder that holds the source and build configuration, such as
CMakeLists.txtorplatformio.ini.
Create a new firmware project
In Flash IDE
Choose Create project. In Project, select Firmware and enter a name and parent folder. In Firmware, select ESP32-S3 and ESP-IDF native. Keep the detected SDK in Environment, then the Minimal template, C and Default configuration in Application.
In Review, check the destination, then choose Create & verify. When the build finishes, choose Open project. These videos create and build the minimal ESP-IDF project for the BMI270 tutorial. Adding the driver, flashing and checking the board come later.
3. Sign in and choose a model
In Flash IDE
If you have not signed in yet, choose Sign in and use your Flash account. Then pick a model in the selector under the chat.
On Free, Pro and Max, Flash manages the AI for you: pick Claude or Codex. No API keys needed.
Using Studio or Enterprise?
Set up your own provider or local model first. See Studio and Enterprise.
4. Prepare the project with /init
Type it in the Flash chat, or at the Flash CLI prompt:
/init/init gets Flash ready to work on your project. It:
- analyses the code and the hardware design;
- tries a baseline build;
- prepares connections for serial, the debugger and other interfaces;
- writes a project guide into
FLASH.md.
It never edits your source, installs tools or touches the board.
Then check the result: is the board right, did the build pass, are your components listed? Add missing parts with /peripherals. More about /init.
5. Ask about your code and your board
Trace the startup sequence from the firmware entry point. Show where clocks and peripherals are configured, and flag anything that depends on the board revision.Type @ to reference a file. Correct any wrong assumption before you change code.
Is the board design in the project? Ask Flash to check the firmware against it:
Check that the pins the firmware configures at startup match the schematic nets they connect to. List any mismatch with the datasheet page for each pin.In Flash IDE you can follow the answer on the design itself: select a part or net to see it on the schematic and the PCB, then jump to the code that configures it. See Hardware and firmware together.
6. Make a small change
Plan it first, then implement it in Normal mode:
/mode plan Add a startup log line with the firmware version. Keep the baud rate and pins unchanged. /mode normal Implement the plan and build the firmware.Flash asks before editing files or running commands. See Tool approvals.
7. Program the board and watch its output
/mode debug Program the build to the board and capture serial output for 15 seconds. Check that the version line appears and report any errors.Before writing to the board, Flash shows the target and firmware and asks you to confirm.
8. Go further with the debugger
With a debug probe connected, Flash can inspect the running firmware without resetting it:
Attach the debugger without resetting the board. Halt, read the program counter and <a global variable>, then resume.See the Debugging overview for everything Flash can observe.
Next steps
Create a project, implement a sensor driver and verify its readings in five steps.
Hardware and firmware togetherDesign the board and write its firmware in Flash IDE.
Initialise your projectWhat /init prepares and how FLASH.md works.
Debugging overviewDebugger, serial, RTT, MQTT and Bluetooth LE with the agent.
Get reliable resultsWrite tasks Flash can complete and check.