ESP32 Noobs Begineers Guide

For general Flowcode discussion that does not belong in the other sections.
mnfisher
Valued Contributor
Posts: 970
http://meble-kuchenne.info.pl
Joined: Wed Dec 09, 2020 9:37 pm
Has thanked: 104 times
Been thanked: 515 times

Re: ESP32 Noobs Begineers Guide

Post by mnfisher »

I posted a small python script at viewtopic.php?f=3&t=1922 - try running this... Save to a file name.py then type name.py at a command prompt...

Martin

jay_dee
Posts: 134
Joined: Sun Dec 20, 2020 6:06 pm
Has thanked: 47 times
Been thanked: 31 times

Re: ESP32 Noobs Begineers Guide

Post by jay_dee »

Thanks Martin, I just tried as you suggest but I still get the same issue. I'll try to work through some of the items discussed earlier in that thread later today. J.

jay_dee
Posts: 134
Joined: Sun Dec 20, 2020 6:06 pm
Has thanked: 47 times
Been thanked: 31 times

Re: ESP32 Noobs Begineers Guide

Post by jay_dee »

I've tried another hour of pain...no progress. is there an example supplied with ESP where I can do a test build to prove if that is installed correctly?
That said...I have no idea what I'm doing in the command line. All of the online examples and forums assume you have a knowledge of command line.

BenR
Matrix Staff
Posts: 1744
Joined: Mon Dec 07, 2020 10:06 am
Has thanked: 444 times
Been thanked: 604 times

Re: ESP32 Noobs Begineers Guide

Post by BenR »

Hello,

When you compile from Flowcode what specific error messages are you getting. Just compile a blank ESP32 project to your desktop and then post the .msg.txt file here and I'll investigate what to do to try and get you up and running.

mnfisher
Valued Contributor
Posts: 970
Joined: Wed Dec 09, 2020 9:37 pm
Has thanked: 104 times
Been thanked: 515 times

Re: ESP32 Noobs Begineers Guide

Post by mnfisher »

For you get any errors? The script should run through quite a few bits.

I'm thinking to post a video - the esp32 tools seem to cause a lot of grief - I can replicate this error, but not the cmake problems plaguing other people.

Martin

jay_dee
Posts: 134
Joined: Sun Dec 20, 2020 6:06 pm
Has thanked: 47 times
Been thanked: 31 times

Re: ESP32 Noobs Begineers Guide

Post by jay_dee »

Thanks guys.
The suggested script, save to a .py file and run from a standard windows command prompt, it runs and closes to fast to observe anything. under 0.5sec.

an FC build returns.
my guess is that the embedded python 3.8 is not upto date...which is odd as it is the version that installed with a new install of ESP-IDF.
The laptop also has a new install of Python 3.11
any thoughts appreciated.. J.

Code: Select all

Target folder: C:\Users\jdwed\Documents\Scrap
Source name:   C:\Users\jdwed\Documents\Scrap\Flowcode1.fcfx
Title:         
Description:   
Device:        ESP.ESP32.ESP32
Generated by:  Flowcode v10.0.2.21
Date:          Thursday, May 25, 2023 13:54:24
Users:         1
Registered to: jay_dee (15266180)
Licence key: QUHWM7
https://www.flowcode.co.uk
Using FCD settings for compiler
Launching the compiler...
C:\ProgramData\MatrixTSL\FlowcodeV10\FCD\ESP\Batch\esp32_build.bat  "C:\Espressif\frameworks\esp-idf-v4.1.4\" "Flowcode1" "C:\Users\jdwed\Documents\Scrap\" esp32s_sdkconfig 

C:\Users\jdwed\Documents\Scrap>REM CRC: 0796FC1E6A776AF9156B257209C35258CE7C28B3EC20AEA2C632DB392A0E4BFD5B3F53B21811978F7B21FE4085045A7E774D1D3D69D8A99EE7320EAE740A5DB6EFB7F8B9768FC390BAFB420BC9D6F4D56375EE3039B8BDDEA4D1C56CD1580BF569DAEA777BB49732B199900461C78937B42DEF8219F63A24580137A2F6C8FDB7553324EFF791947E8AB6FFD612B81BAA97C798A8F1CFC189DE5D38517747C774AF2DD6F839BAECF83F7F994C7164CE77868F480396BDEF2F2C3050DA273BE4EEB3E11C07C6C54039FF3C81C780D7ABB89002782687B4F007BB7835FE546B805B7544DA781CA69696 

C:\Users\jdwed\Documents\Scrap>REM REVISION: 2.0 

C:\Users\jdwed\Documents\Scrap>REM GUID: 955EA920-4961-4C53-BA6B-EF4AF66BB4C2 

C:\Users\jdwed\Documents\Scrap>REM DATE: 05\12\2022 

C:\Users\jdwed\Documents\Scrap>REM DIR: FCD\ESP\Batch\esp32_build.bat 
.
============================== Toolchain Check ==============================
Python 3.11.3
git version 2.40.1.windows.1
ESP toolchain found at "C:\Espressif\frameworks\esp-idf-v4.1.4\"
=============================================================================
.
Building Flowcode1 ...
Setting IDF_PATH: C:\Espressif\frameworks\esp-idf-v4.1.4

Adding ESP-IDF tools to PATH...
    C:\Espressif\tools\xtensa-esp32-elf\esp-2020r3-8.4.0\xtensa-esp32-elf\bin
    C:\Espressif\tools\xtensa-esp32s2-elf\esp-2020r3-8.4.0\xtensa-esp32s2-elf\bin
    C:\Espressif\tools\esp32ulp-elf\2.28.51-esp-20191205\esp32ulp-elf-binutils\bin
    C:\Espressif\tools\esp32s2ulp-elf\2.28.51-esp-20191205\esp32s2ulp-elf-binutils\bin
    C:\Espressif\tools\cmake\3.13.4\bin
    C:\Espressif\tools\openocd-esp32\v0.11.0-esp32-20220706\openocd-esp32\bin
    C:\Espressif\tools\ninja\1.9.0\
    C:\Espressif\tools\idf-exe\1.0.1\
    C:\Espressif\tools\ccache\3.7\
    C:\Espressif\frameworks\esp-idf-v4.1.4\tools
    
Checking if Python packages are up to date...
The following Python requirements are not satisfied:
click>=5.0
pyserial>=3.0
future>=0.15.2
cryptography>=2.1.4,<35
pyparsing>=2.0.3,<2.4.0
pyelftools>=0.22
idf-component-manager~=1.0
esp-windows-curses; sys_platform == 'win32'
Please follow the instructions found in the "Set up the tools" section of ESP-IDF Getting Started Guide
. .

The following Python requirements are not satisfied:
click>=5.0
pyserial>=3.0
future>=0.15.2
cryptography>=2.1.4,<35
pyparsing>=2.0.3,<2.4.0
pyelftools>=0.22
idf-component-manager~=1.0
esp-windows-curses; sys_platform == 'win32'
Please follow the instructions found in the "Set up the tools" section of ESP-IDF Getting Started Guide

ESP-IDF v4.1.4

Build Failed

mnfisher
Valued Contributor
Posts: 970
Joined: Wed Dec 09, 2020 9:37 pm
Has thanked: 104 times
Been thanked: 515 times

Re: ESP32 Noobs Begineers Guide

Post by mnfisher »

Doesn't sound though the script is running correctly....

You'll need to change the directory in the os.chdir 'line' - replace the esp-idf I have with espressif...

To run - start a command line (windows key, type cmd<enter>) then cd to the directory you save the script to - probably documents (so cd documents<enter> should do it) - then type name.py (it could be called anything.py) - and it should then install the missing tools for you...

Martin

jay_dee
Posts: 134
Joined: Sun Dec 20, 2020 6:06 pm
Has thanked: 47 times
Been thanked: 31 times

Re: ESP32 Noobs Begineers Guide

Post by jay_dee »

Hi Martin,
Ah..thanks I should have spotted that.
changed and run.. The first line looks upset but the rest seemed to run smoothly.
the python items seems to be 'satisfied'

but I still get the same errors from within FC, regardsing unsatisfied Python parameters? Hmm.
the FC global path looks correct for this laptop.

C:\Users\jdwed\Desktop\Scrap>fisher.py
error: pathspec 'release/v4.1' did not match any file(s) known to git
Already up to date.
Submodule path 'components/asio/asio': checked out '3b66e5b051381fb70de9c2791df70a06181c64e3'
Submodule path 'components/bootloader/subproject/components/micro-ecc/micro-ecc': checked out 'd037ec89546fad14b5c4d5456c2e23a71e554966'
Submodule path 'components/bt/controller/lib': checked out 'dbaeb136cacf8c7d071f838c1053f90299f57720'
Submodule path 'components/bt/host/nimble/nimble': checked out 'ba57e28452578e7bc4b34d6a864f968c741ae06e'
Submodule path 'components/cbor/tinycbor': checked out 'd2dd95cb8841d88d5a801e3ef9c328fd6200e7bd'
Submodule path 'components/coap/libcoap': checked out '98954eb30a2e728e172a6cd29430ae5bc999b585'
Submodule path 'components/coap/libcoap/ext/tinydtls': checked out '7f8c86e501e690301630029fa9bae22424adf618'
Submodule path 'components/esp_wifi/lib': checked out 'aa25fd71fcc90c63406ad326060c2ba10b87245e'
Submodule path 'components/esptool_py/esptool': checked out '5b8c2f1b02d0e4b9bac0756b3ead66e8beea428a'
Submodule path 'components/expat/expat': checked out 'a28238bdeebc087071777001245df1876a11f5ee'
Submodule path 'components/json/cJSON': checked out 'd348621ca93571343a56862df7de4ff3bc9b5667'
Submodule path 'components/libsodium/libsodium': checked out '70170c28c844a4786e75efc626e1aeebc93caebc'
Submodule path 'components/lwip/lwip': checked out '2195f7416fb3136831babf3e96c027a73075bd4f'
Submodule path 'components/mbedtls/mbedtls': checked out 'dc406b82b20481bde74a60fa8a776285d3fb9cf3'
Submodule path 'components/mqtt/esp-mqtt': checked out '9ea804e0ab5368d5ab53ae2301a5fec9d1f12f1a'
Submodule path 'components/nghttp/nghttp2': checked out '8f7b008b158e12de0e58247afd170f127dbb6456'
Submodule path 'components/nghttp/nghttp2/third-party/mruby': checked out '7c91efc1ffda769a5f1a872c646c82b00698f1b8'
Submodule path 'components/nghttp/nghttp2/third-party/neverbleed': checked out 'b967ca054f48a36f82d8fcdd32e54ec5144f2751'
Submodule path 'components/protobuf-c/protobuf-c': checked out 'dac1a65feac4ad72f612aab99f487056fbcf5c1a'
Submodule path 'components/spiffs/spiffs': checked out 'f5e26c4e933189593a71c6b82cda381a7b21e41c'
Submodule path 'components/unity/unity': checked out '7d2bf62b7e6afaf38153041a9d53c21aeeca9a25'
Submodule path 'examples/build_system/cmake/import_lib/main/lib/tinyxml2': checked out '7e8e249990ec491ec15990cf95b6d871a66cf64a'
Installing ESP-IDF tools
Installing tools: xtensa-esp32-elf, xtensa-esp32s2-elf, esp32ulp-elf, esp32s2ulp-elf, cmake, openocd-esp32, ninja, idf-exe, ccache
Skipping xtensa-esp32-elf@esp-2020r3-8.4.0 (already installed)
Skipping xtensa-esp32s2-elf@esp-2020r3-8.4.0 (already installed)
Skipping esp32ulp-elf@2.28.51-esp-20191205 (already installed)
Skipping esp32s2ulp-elf@2.28.51-esp-20191205 (already installed)
Skipping cmake@3.13.4 (already installed)
Skipping openocd-esp32@v0.11.0-esp32-20220706 (already installed)
Skipping ninja@1.9.0 (already installed)
Skipping idf-exe@1.0.1 (already installed)
Skipping ccache@3.7 (already installed)
Setting up Python environment
Python 3.8.7
pip 20.3.3 from C:\Espressif\python_env\idf4.1_py3.8_env\lib\site-packages\pip (python 3.8)
Installing Python packages from C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt
Ignoring cffi: markers 'python_version < "3.6"' don't match your environment
Requirement already satisfied: setuptools>=21 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 4)) (51.3.3)
Requirement already satisfied: click>=5.0 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 8)) (8.1.3)
Requirement already satisfied: pyserial>=3.0 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 9)) (3.5)
Requirement already satisfied: future>=0.15.2 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 10)) (0.18.2)
Requirement already satisfied: cryptography<35,>=2.1.4 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 11)) (3.4.8)
Requirement already satisfied: pyparsing<2.4.0,>=2.0.3 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 14)) (2.3.1)
Requirement already satisfied: pyelftools>=0.22 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 15)) (0.29)
Requirement already satisfied: idf-component-manager~=1.0 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from -r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (1.2.1)
Processing c:\espressif\frameworks\esp-idf-v4.1.4\tools\kconfig_new\esp-windows-curses
Requirement already satisfied: windows-curses in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from esp-windows-curses==0.1->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 22)) (2.3.1)
Requirement already satisfied: colorama in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from click>=5.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 8)) (0.4.6)
Requirement already satisfied: cffi>=1.12 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from cryptography<35,>=2.1.4->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 11)) (1.15.1)
Requirement already satisfied: contextlib2>0.6.0 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (21.6.0)
Requirement already satisfied: schema in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (0.7.5)
Requirement already satisfied: tqdm<5 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (4.64.1)
Requirement already satisfied: requests-file in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (1.5.1)
Requirement already satisfied: packaging in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (22.0)
Requirement already satisfied: cachecontrol[filecache]>0.12.6 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (0.12.11)
Requirement already satisfied: pyyaml>5.2 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (6.0)
Requirement already satisfied: requests-toolbelt in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (0.10.1)
Requirement already satisfied: requests<3 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (2.28.1)
Requirement already satisfied: six in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (1.16.0)
Requirement already satisfied: msgpack>=0.5.2 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from cachecontrol[filecache]>0.12.6->idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (1.0.4)
Requirement already satisfied: lockfile>=0.9 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from cachecontrol[filecache]>0.12.6->idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (0.12.2)
Requirement already satisfied: pycparser in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from cffi>=1.12->cryptography<35,>=2.1.4->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 11)) (2.21)
Requirement already satisfied: charset-normalizer<3,>=2 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from requests<3->idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (2.1.1)
Requirement already satisfied: certifi>=2017.4.17 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from requests<3->idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (2022.12.7)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from requests<3->idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (1.26.13)
Requirement already satisfied: idna<4,>=2.5 in c:\espressif\python_env\idf4.1_py3.8_env\lib\site-packages (from requests<3->idf-component-manager~=1.0->-r C:\Espressif\frameworks\esp-idf-v4.1.4\requirements.txt (line 16)) (3.4)
Building wheels for collected packages: esp-windows-curses
Building wheel for esp-windows-curses (setup.py) ... done
Created wheel for esp-windows-curses: filename=esp_windows_curses-0.1-py3-none-any.whl size=1170 sha256=a16b53989f4de6cd76f1bac1100d68e07e1238912b55f6e3b0a8d312d5677537
Stored in directory: c:\users\jdwed\appdata\local\pip\cache\wheels\ca\04\1d\a24f38c29e6813dc2f00fa651a21a0d05cddfb027a0806eff6
Successfully built esp-windows-curses
Installing collected packages: esp-windows-curses
Attempting uninstall: esp-windows-curses
Found existing installation: esp-windows-curses 0.1
Uninstalling esp-windows-curses-0.1:
Successfully uninstalled esp-windows-curses-0.1
Successfully installed esp-windows-curses-0.1
WARNING: You are using pip version 20.3.3; however, version 23.1.2 is available.
You should consider upgrading via the 'C:\Espressif\python_env\idf4.1_py3.8_env\Scripts\python.exe -m pip install --upgrade pip' command.
All done! You can now run:
export.bat
usage: idf_tools.py [-h] [--quiet] [--non-interactive] [--tools-json TOOLS_JSON] [--idf-path IDF_PATH]
{list,check,export,install,download,install-python-env} ...
idf_tools.py: error: argument action: invalid choice: 'uninstall' (choose from 'list', 'check', 'export', 'install', 'download', 'install-python-env')
Change path in Flowcode to 'C:\Esp-idf♀rameworks\esp-idf-v4.1.4'. Espressif tools version changed to v4.1
Checking if Python packages are up to date...
The following Python requirements are not satisfied:
click>=5.0
pyserial>=3.0
future>=0.15.2
cryptography>=2.1.4,<35
pyparsing>=2.0.3,<2.4.0
pyelftools>=0.22
idf-component-manager~=1.0
esp-windows-curses; sys_platform == 'win32'
Please follow the instructions found in the "Set up the tools" section of ESP-IDF Getting Started Guide

BenR
Matrix Staff
Posts: 1744
Joined: Mon Dec 07, 2020 10:06 am
Has thanked: 444 times
Been thanked: 604 times

Re: ESP32 Noobs Begineers Guide

Post by BenR »

Hello,

Thanks for the compiler message log.
The following Python requirements are not satisfied:
click>=5.0
pyserial>=3.0
future>=0.15.2
cryptography>=2.1.4,<35
pyparsing>=2.0.3,<2.4.0
pyelftools>=0.22
idf-component-manager~=1.0
esp-windows-curses; sys_platform == 'win32'
Please follow the instructions found in the "Set up the tools" section of ESP-IDF Getting Started Guide
So this is the current problem you're facing due to having replacing/prividing your own the python installation.

Python 3.11.3 is missing the highlighted libraries out of the box.

You can hopefully auto install these dependancies by clicking start and typing IDF and then running the ESP-IDF command prompt.


In there type the following command and hit enter.

install.bat


This may take a few minutes to complete but hopefully this will help.

If not what errors are you getting now, either in the IDF command propt or in Flowcode.

mnfisher
Valued Contributor
Posts: 970
Joined: Wed Dec 09, 2020 9:37 pm
Has thanked: 104 times
Been thanked: 515 times

Re: ESP32 Noobs Begineers Guide

Post by mnfisher »

I've posted a video of installing v4 to a system with v5 installed already - which demonstrates this. It's all real time apart from a couple of skips (download and compile). There is no music - so feel free to play whatever suits your mood the best?

FC isn't very stable in a virtual machine?

https://youtu.be/SzQahST-EzU

Martin

Post Reply