Expressif SDK notes
This commit is contained in:
parent
f85eae5fc1
commit
11fe0256f1
1 changed files with 61 additions and 0 deletions
61
zk/Expressif_IoT_Development_Framework.md
Normal file
61
zk/Expressif_IoT_Development_Framework.md
Normal file
|
|
@ -0,0 +1,61 @@
|
||||||
|
---
|
||||||
|
tags:
|
||||||
|
- micro-controllers
|
||||||
|
- C
|
||||||
|
- ESP32
|
||||||
|
---
|
||||||
|
|
||||||
|
> The ESP-IDF is the SDK, provided by Expressif, for programming the ESP32 with
|
||||||
|
> C and C++.
|
||||||
|
|
||||||
|
> Ensure you are a member of the `uucp` group so that you have serial access,
|
||||||
|
> using `usermod -a -G uucp $USER`
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
```sh
|
||||||
|
yay -Sy esp-idf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Pre-requisites:
|
||||||
|
|
||||||
|
```
|
||||||
|
To use ESP-IDF:
|
||||||
|
|
||||||
|
1. Run /opt/esp-idf/install.sh to install ESP-IDF to ~/.espressif.
|
||||||
|
You only have to do this once after installing or upgrading
|
||||||
|
the esp-idf package.
|
||||||
|
|
||||||
|
2. Run `source /opt/esp-idf/export.sh` to add idf.py and idf_tools.py
|
||||||
|
to your current PATH. You will have to do this in every terminal
|
||||||
|
where you want to use ESP-IDF. Alternatively, you can add
|
||||||
|
"source /opt/esp-idf/export.sh" to ~/.bashrc or the equivalent for
|
||||||
|
your shell to load ESP-IDF automatically in all terminals.
|
||||||
|
```
|
||||||
|
|
||||||
|
Must run
|
||||||
|
|
||||||
|
```sh
|
||||||
|
. /opt/esp-idf/export.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
In any terminal where you want to compile to the device.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Compilation process
|
||||||
|
|
||||||
|
To demonstrate compilation, I have copied one of the demo projects provided:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
cp -r /opt/esp-idf/examples/get-started/hello_world .
|
||||||
|
```
|
||||||
|
|
||||||
|
To initialise the project, run:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
idf.py set-target esp32
|
||||||
|
```
|
||||||
|
|
||||||
|
> Python is used as the client for automated processes/bootstrapping etc, even
|
||||||
|
> though the code that runs on the device is written in C.
|
||||||
Loading…
Add table
Reference in a new issue