summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BUILDING.md (renamed from README.md)40
1 files changed, 20 insertions, 20 deletions
diff --git a/README.md b/BUILDING.md
index f5100e16..8e4427ab 100644
--- a/README.md
+++ b/BUILDING.md
@@ -6,7 +6,8 @@ SPDX-License-Identifier: CC0-1.0
# Building and flashing
-1. Make sure you've got all of the submodules in this repo correctly initialised;
+1. Make sure you've got all of the submodules in this repo correctly initialised:
+
```
git submodule update --init --recursive
```
@@ -15,34 +16,28 @@ git submodule update --init --recursive
the ESP-IDF tools. You can consult the [ESP-IDF docs](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html)
for more detailed instructions, but the TL;DR is that you'll want to run
something like this:
+
```
-./lib/esp-adf/esp-idf/install.sh esp32
+./lib/esp-idf/install.sh esp32
```
3. As a final piece of setup, you will need to source the env file in this repo
to correctly set up your environment for building.
+
```
. ./.env
```
-**For VSCode:**
-When using the Espressif IDF extension, you may want to set the following in your settings.json file:
-```
- "idf.espAdfPath": "${workspaceFolder}/lib/esp-adf",
- "idf.espAdfPathWin": "${workspaceFolder}/lib/esp-adf",
- "idf.espIdfPath": "${workspaceFolder}/lib/esp-adf/esp-idf",
- "idf.espIdfPathWin": "${workspaceFolder}/lib/esp-adf/esp-idf"
-```
+There is also a `.env.fish` for fish users.
4. You can now build the project using `idf.py build`. Or to flash the project
onto your board, something like:
+
```
idf.py -p /dev/ttyUSB0 -b 115200 flash
```
-(give or take the correct serial port)
-Remember that you will need to boot your ESP32 into software download mode
-before you will be able to flash.
+(give or take the correct serial port)
# Running tests
@@ -59,11 +54,20 @@ To add new tests to a components, you must:
2. Include the component in the test build and list of testable components, in
`test/CMakeLists.txt`.
-# clangd setup
+
+# VSCode setup
+
+When using the Espressif IDF extension, you may want to set the following in your settings.json file:
+```
+ "idf.espIdfPath": "${workspaceFolder}/lib/esp-idf",
+ "idf.espIdfPathWin": "${workspaceFolder}/lib/esp-idf"
+```
+
+# LSP (clangd) setup
A regular build will generate `build/compile_commands.json`, which clangd will
automatically pick up. However, there are a couple of additional steps to get
-everything to place nicely.
+everything to play nicely.
First, you will need to download the xtensa clang toolchain. You can do this
via ESP-IDF by running `idf_tools.py install xtensa-clang`
@@ -96,8 +100,4 @@ CompileFlags:
Compiler: /Users/YOU/.espressif/tools/xtensa-clang/esp-clang/bin/clang++
```
-You should then get proper LSP integration via clangd, give or take a couple of
-oddities (e.g. for some reason, my install still can't see `stdio.h`. NBD tho.)
-
-Expect this integration to improve sometime in the near future, per [this forum
-thread](https://esp32.com/viewtopic.php?f=13&t=29563).
+You should then get proper LSP integration via clangd.