Skip to content

Espressif build environment confusing setup docs #9552

@samblenny

Description

@samblenny

CircuitPython version

n/a

Code/REPL

n/a

Behavior

n/a

Description

I'm trying to set up an Espressif build environment from scratch, and I hit a couple documentation snags.

  1. Looking at the main CircuitPython README, I had a hard time locating where I should start looking for build documentation. Eventually I realized there's a BUILDING.md file, which was helpful, but that file is hard to notice amidst many other top level files. Before that, I found the CONTRIBUTING.md file, but initially missed its link to the Building CircuitPython learn guide. The link text to the guide that I overlooked was just the word "here", so I didn't realize what it was until I went back and did a text search on the Markdown source code. It would be handy if there was a more prominent link to Dan's guide with link text along the lines of, "Building CircuitPython Learn Guide".

  2. The Building CircuitPython learn guide instructions on the Install Build Tools on Ubuntu section of the Linux Setup page links to the Espressif Builds page. The Espressif Builds page starts with a request to go read ports/espressif/README.md. So, at that point, you have to choose between jumping to the README or continuing with the Learn guide. If you take the README route first, under the Building and Flashing subheading, it says to do,

    cd ports/espressif
    ./esp-idf/install.sh
    

    But, that doesn't work unless you've first followed the Learn Guide instructions to fetch submodules with

    cd ports/espressif
    make fetch-port-submodules
    

    For a freshly cloned adafruit/circuitpython repo, the ports/espressif/esp-idf directory is empty, so the install script doesn't exist. If the espressif/ports/README.md file mentioned the need to run make fetch-port-submodules, it would be less confusing.

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions