Page 1 of 2

Problem with update esp-idf.

Posted: Thu Mar 28, 2019 1:26 pm
by filipESP
I cloned new version of ESP_IDF, but I can not build any project.
In eclipse error is like this:
esp-idf/tools/check_python_dependencies.py
The following Python requirements are not satisfied:
cryptography>=2.1.4
pyparsing>=2.0.3
Please refer to the Get Started section of the ESP-IDF Programming Guide for setting up the required packages.

And when I try to execute: python -m pip install --user -r $IDF_PATH/requirements.txt
I get this:
Command "C:/msys32/mingw32/bin/python.exe C:/msys32/mingw32/lib/python2.7/site-packages/pip install --ignore-installed --no-user --prefix .../appdata/local/temp/pip-build-env-sz21te/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- setuptools>=18.5 wheel "cffi>=1.8,!=1.11.3; python_implementation != 'PyPy'"" failed with error code 1 in None

What I hvae to do?

Re: Problem with update esp-idf.

Posted: Fri Mar 29, 2019 8:57 am
by ESP_Roland
This should help:

Code: Select all

pacman -S mingw-w64-i686-python2-cryptography mingw-w64-i686-python2-pyparsing
If you still get the above error then it means that you have too old versions and have to update:

Code: Select all

pacman -Syu
Note that if pacman updates itself then you will have to update once again.

Re: Problem with update esp-idf.

Posted: Fri Mar 29, 2019 11:12 am
by filipESP
I downloaded new version of msys32 and toolchain and next I run command:
python -m pip install --user -r $IDF_PATH/requirements.txt
It done successfully but when I try to build old version of project I get this message:

/bin/sh: esp32ulp-elf-as: command not found
Building ULP app ulp_main
ULP assembler version:
WARNING: ULP assembler version is not supported.
Expected to see version: 2.28.51.20170517
Please check ESP-IDF ULP setup instructions and update the toolchain, or proceed at your own risk.
App "ulp-example" version: bf71962-dirty

Re: Problem with update esp-idf.

Posted: Fri Mar 29, 2019 11:25 am
by ESP_Roland
Please follow the instruction in the documentation: https://docs.espressif.com/projects/esp ... -toolchain

Re: Problem with update esp-idf.

Posted: Fri Mar 29, 2019 2:22 pm
by filipESP
It's working. Thank you.

Re: Problem with update esp-idf.

Posted: Fri Sep 04, 2020 8:58 pm
by Palonso
I'm having a similar issue, when trying to compile the ulp example y have the next warning:

Code: Select all

Toolchain path: /home/pablo/.espressif/tools/xtensa-esp32-elf/esp-2020r2-8.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: esp-2020r2
Compiler version: 8.2.0
Python requirements from /home/pablo/esp/esp-idf/requirements.txt are satisfied.
GENCONFIG
Loading defaults file /home/pablo/esp/ulp/sdkconfig.defaults...
Building ULP app ulp_main
ULP assembler version: 
WARNING: ULP assembler version  is not supported.
Expected to see version: 2.28.51-esp-20191205
Please check ESP-IDF ULP setup instructions and update the toolchain, or proceed at your own risk.
Project is not inside a git repository, or git repository has no commits
will not use 'git describe' to determine PROJECT_VER.
App "ulp-example" version: 1
RM component_project_vars.mk
I checked the files on the path and this is what the export.sh does:

Code: Select all

Setting IDF_PATH to '/home/pablo/esp/esp-idf'
Adding ESP-IDF tools to PATH...
Using Python interpreter in /home/pablo/.espressif/python_env/idf4.3_py3.6_env/bin/python
Checking if Python packages are up to date...
Python requirements from /home/pablo/esp/esp-idf/requirements.txt are satisfied.
Added the following directories to PATH:
  /home/pablo/esp/esp-idf/components/esptool_py/esptool
  /home/pablo/esp/esp-idf/components/espcoredump
  /home/pablo/esp/esp-idf/components/partition_table
  /home/pablo/esp/esp-idf/components/app_update
  /home/pablo/.espressif/tools/xtensa-esp32-elf/esp-2020r2-8.2.0/xtensa-esp32-elf/bin
  /home/pablo/.espressif/tools/xtensa-esp32s2-elf/esp-2020r2-8.2.0/xtensa-esp32s2-elf/bin
  /home/pablo/.espressif/tools/esp32ulp-elf/2.28.51-esp-20191205/esp32ulp-elf-binutils/bin
  /home/pablo/.espressif/tools/esp32s2ulp-elf/2.28.51-esp-20191205/esp32s2ulp-elf-binutils/bin
  /home/pablo/.espressif/tools/openocd-esp32/v0.10.0-esp32-20200709/openocd-esp32/bin
  /home/pablo/.espressif/python_env/idf4.3_py3.6_env/bin
  /home/pablo/esp/esp-idf/tools
Done! You can now compile ESP-IDF projects.
Go to the project directory and run:

  idf.py build

As far as I understand the ulp assembler should be supported, what can I do?

Re: Problem with update esp-idf.

Posted: Mon Sep 07, 2020 8:18 am
by ESP_Roland
Hi Palonso,

please check the content of your PATH *before* running export.sh. Maybe it already point to an old version of the ULP compiler.

Re: Problem with update esp-idf.

Posted: Mon Sep 07, 2020 2:46 pm
by Palonso
Sorry, I don't get quite well what you mean.

I did a fresh install of the ESP IDF and I have that same warning, so I don't think that my PATH has an older version of the ulp compiler.

On the other hand the .profile file is clean (with the default code, etc.) and my .bashrc has the alias "get_idf" set as described on the installation guide.

Any idea?

Re: Problem with update esp-idf.

Posted: Tue Sep 08, 2020 9:44 am
by ESP_Roland
Hi Palonso,

even if you use a fresh install of ESP-IDF still you can have some leftover from previous setup, for example if you used older ESP-IDF on the same computer at the time when the toolchain had to be installed manually and the PATH variable set.

Let me explain in more details.
The PATH variable contains a list of paths which are used to find the executable you are running. Let say you have executable X in two directories dir1 and dir2 and the content of PATH is "dir1;dir2". Then running X will be executed always from dir1 because that is earlier in the PATH variable.

The output of the export script says that
"Added the following directories to PATH: ...
/home/pablo/.espressif/tools/esp32ulp-elf/2.28.51-esp-20191205/esp32ulp-elf-binutils/bin" which seems to be right. However, if you have a path in your PATH variable pointing to a directory which contains an older "esp32ulp-elf-as" then it will be executed resulting in "WARNING: ULP assembler version is not supported. Expected to see version: 2.28.51-esp-20191205".

That is why I advise you to examine the content of your PATH and see if it doesn't point to a directory with the old toolchain.

Re: Problem with update esp-idf.

Posted: Tue Sep 08, 2020 3:08 pm
by Palonso
Hi Roland,

This is my PATH before and after the export.sh:

Code: Select all

$ printenv PATH
/home/pablo/.local/bin:
/usr/local/sbin:
/usr/local/bin:
/usr/sbin:
/usr/bin:
/sbin:
/bin:
/usr/games:
/usr/local/games:
/snap/bin:
/opt/microchip/xc8/v1.36/bin

$ get_idf
Setting IDF_PATH to '/home/pablo/esp/esp-idf'
Adding ESP-IDF tools to PATH...
Using Python interpreter in /home/pablo/.espressif/python_env/idf4.3_py3.6_env/bin/python
Checking if Python packages are up to date...
Python requirements from /home/pablo/esp/esp-idf/requirements.txt are satisfied.
Added the following directories to PATH:
  /home/pablo/esp/esp-idf/components/esptool_py/esptool
  /home/pablo/esp/esp-idf/components/espcoredump
  /home/pablo/esp/esp-idf/components/partition_table
  /home/pablo/esp/esp-idf/components/app_update
  /home/pablo/.espressif/tools/xtensa-esp32-elf/esp-2020r2-8.2.0/xtensa-esp32-elf/bin
  /home/pablo/.espressif/tools/xtensa-esp32s2-elf/esp-2020r2-8.2.0/xtensa-esp32s2-elf/bin
  /home/pablo/.espressif/tools/esp32ulp-elf/2.28.51-esp-20191205/esp32ulp-elf-binutils/bin
  /home/pablo/.espressif/tools/esp32s2ulp-elf/2.28.51-esp-20191205/esp32s2ulp-elf-binutils/bin
  /home/pablo/.espressif/tools/openocd-esp32/v0.10.0-esp32-20200709/openocd-esp32/bin
  /home/pablo/.espressif/python_env/idf4.3_py3.6_env/bin
  /home/pablo/esp/esp-idf/tools
Done! You can now compile ESP-IDF projects.
Go to the project directory and run:

  idf.py build


$ printenv PATH

/home/pablo/esp/esp-idf/components/esptool_py/esptool:
/home/pablo/esp/esp-idf/components/espcoredump:
/home/pablo/esp/esp-idf/components/partition_table:
/home/pablo/esp/esp-idf/components/app_update:
/home/pablo/.espressif/tools/xtensa-esp32-elf/esp-2020r2-8.2.0/xtensa-esp32-elf/bin:
/home/pablo/.espressif/tools/xtensa-esp32s2-elf/esp-2020r2-8.2.0/xtensa-esp32s2-elf/bin:
/home/pablo/.espressif/tools/esp32ulp-elf/2.28.51-esp-20191205/esp32ulp-elf-binutils/bin:
/home/pablo/.espressif/tools/esp32s2ulp-elf/2.28.51-esp-20191205/esp32s2ulp-elf-binutils/bin:
/home/pablo/.espressif/tools/openocd-esp32/v0.10.0-esp32-20200709/openocd-esp32/bin:
/home/pablo/.espressif/python_env/idf4.3_py3.6_env/bin:
/home/pablo/esp/esp-idf/tools:
/home/pablo/.local/bin:
/usr/local/sbin:
/usr/local/bin:
/usr/sbin:
/usr/bin:
/sbin:
/bin:
/usr/games:
/usr/local/games:
/snap/bin:
/opt/microchip/xc8/v1.36/bin
It doesn't seem to point to an older version of the compiler, and all the ESP-IDF files are before any other directory in the PATH list.

Any idea? is there a way to manually "load" a compiler to the enviroment and compile the ulp code? how can compile the ulp on one side and then adding its *.elf file to the main program?

Best regards,
P