Page 1 of 1

ImportError: cannot import name 'rest_of_line' from 'pyparsing' (ESP32-C3 and Platformio and vscode and windows10)

Posted: Sun Jan 22, 2023 4:22 pm
by joseMiguel
Hello,

I am using a ESP32-C3 with two type C USB connectors.
In the back of the PCB, it is written AI-C3.

I asked to the Aliexpress seller, he told me that the chip is ESP32-C3 Mini1

Do you think, is it a Ai-Thinker esp32-C3-M1-I-Kit????

I have made my project considering that the board is esp32-c3-devkitm-1.

When i build the objects, i have an error.

I tried different things to resolve my problem without success!

Could you help me please

Kind regards

joseMiguel

Here below, the platformio.ini file
===========================================================================
; PlatformIO Project Configuration File
;
; Build options: build flags, source filter
; Upload options: custom upload port, speed and extra flags
; Library options: dependencies, extra library storages
; Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html

[env:esp32-c3-devkitm-1]
platform = espressif32
board = esp32-c3-devkitm-1
framework = espidf
===========================================================================

Here below, the vscode settings.json file, located in C:\Users\josem\AppData\Roaming\Code\User directory
===========================================================================
{
"workbench.colorTheme": "Default Dark+",
"idf.adapterTargetName": "esp32c3",
"python.autoComplete.extraPaths": [
"C:/Users/josem/.platformio/penv/Scripts"

],
"python.defaultInterpreterPath": "C:/Users/josem/.platformio/penv/Scripts",
}
===========================================================================

In the system environment variables i have deleted
IDF_PATH C:\ESP\esp-idf-v5.0
IDF_TOOLS_PATH C:\Users\josem\.espressif

I have kept the
EXTENSION_PATH C:\Users\josem\.vscode\extensions\espressif.esp-inf-extension-1.5.1

Does i need to remove also the EXTENSION_PATH environment variable ?


Here below, the result of the build task
==========================================================================
Executing task: C:\Users\josem\.platformio\penv\Scripts\platformio.exe run

Processing esp32-c3-devkitm-1 (platform: espressif32; board: esp32-c3-devkitm-1; framework: espidf)
----------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards ... itm-1.html
PLATFORM: Espressif 32 (6.0.0) > Espressif ESP32-C3-DevKitM-1
HARDWARE: ESP32C3 160MHz, 320KB RAM, 4MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-espidf @ 3.50000.0 (5.0.0)
- tool-cmake @ 3.16.4
- tool-esptoolpy @ 1.40400.0 (4.4.0)
- tool-idf @ 1.0.1
- tool-mconf @ 1.4060000.20190628 (406.0.0)
- tool-ninja @ 1.9.0
- toolchain-esp32ulp @ 1.23500.220830 (2.35.0)
- toolchain-riscv32-esp @ 11.2.0+2022r1
Reading CMake configuration...
Generating assembly for certificate bundle...
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 0 compatible libraries
Scanning dependencies...
No dependencies
Building in release mode
Compiling .pio\build\esp32-c3-devkitm-1\src\main.o
Generating LD script .pio\build\esp32-c3-devkitm-1\memory.ld
Compiling .pio\build\esp32-c3-devkitm-1\app_trace\app_trace.o
Compiling .pio\build\esp32-c3-devkitm-1\app_trace\app_trace_util.o
Compiling .pio\build\esp32-c3-devkitm-1\app_trace\host_file_io.o
.................................................................................................
.................................................................................................
Compiling .pio\build\esp32-c3-devkitm-1\bootloader\soc\esp32c3\spi_periph.o
Compiling .pio\build\esp32-c3-devkitm-1\bootloader\soc\esp32c3\ledc_periph.o
Traceback (most recent call last):
File "C:\Users\josem\.platformio\packages\framework-espidf\tools\ldgen\ldgen.py", line 16, in <module>
from ldgen.entity import EntityDB
File "C:\Users\josem\.platformio\packages\framework-espidf\tools\ldgen\ldgen\entity.py", line 12, in <module>
from pyparsing import (Group, Literal, OneOrMore, ParseException, SkipTo, Suppress, White, Word, ZeroOrMore, alphas,
ImportError: cannot import name 'rest_of_line' from 'pyparsing' (C:\Users\josem\.platformio\penv\lib\site-packages\pyparsing.py)
*** [.pio\build\esp32-c3-devkitm-1\sections.ld] Error 1
================================================== [FAILED] Took 176.17 seconds ==================================================

Thank you, for reading

joseMiguel

Re: ImportError: cannot import name 'rest_of_line' from 'pyparsing' (ESP32-C3 and Platformio and vscode and windows10)

Posted: Sun Jan 22, 2023 8:07 pm
by joseMiguel
Hi guys,

I found the solution,

1) In the directory C:\Users\josem\.platformio\penv\Lib\site-packages, there were only the directory <pyparsing-2.3.1.dist-info>
So, i have removed that directory

2) And in the directory C:\Users\josem\.platformio\penv\Scripts I have typed
pip install pyparsing
Now there are two directories, as a normal installation or setup
<pyparsing> and
<pyparsing-3.0.9.dist-info>

So i succeed to generate an .elf file

Thank you for having read this topic

Have a nice week

joseMiguel

Re: ImportError: cannot import name 'rest_of_line' from 'pyparsing' (ESP32-C3 and Platformio and vscode and windows10)

Posted: Sat Jan 28, 2023 6:41 pm
by Cactus
Thank you very much, I was going crazy and your comment in the forum has been very useful to me, thanks to you I was able to start here
Thanks // Gracias.

Re: ImportError: cannot import name 'rest_of_line' from 'pyparsing' (ESP32-C3 and Platformio and vscode and windows10)

Posted: Mon Feb 06, 2023 10:16 am
by cyberman54
Again, thanks for posting this solution. I was stuck in the same error. Your post saved me a lot of time.