Sysprogs forums › Forums › VisualGDB › ESP32 toolchain
- This topic has 6 replies, 2 voices, and was last updated 6 years, 6 months ago by support.
-
AuthorPosts
-
May 16, 2018 at 18:49 #20935jsmithParticipant
Hi guys,
any chance to get ESP32 toolchain with -mfix-esp32-psram-cache-issue support?
Or even better – could you please explain how can I use https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20180110.zip with your debugger? Which debug method should I choose and which options should I pass there?
Thanks.
May 17, 2018 at 18:42 #20941supportKeymasterHi,
Yes, we are planning to release another toolchain update as we are adding support for the new CMake-based ESP-IDF. If the “-mfix-esp32-psram-cache-issue” is included in the mainline ESP32 toolchain sources, it will get automatically picked up during the update.
We can also help you integrate the original ESP32 toolchain into VisualGDB if you could let us know the email associated with your license key so that we could verify your support status.
May 17, 2018 at 19:33 #20942jsmithParticipantUpdated my profile – now it points to email associated with license. You can contact me at this email or simply reply here – IMO it could be interested for others too.
May 21, 2018 at 14:14 #20970jsmithParticipantWe can also help you integrate the original ESP32 toolchain into VisualGDB
Would be nice…
May 21, 2018 at 18:09 #20971supportKeymasterHi,
Sorry for the delay, the Espressif toolchain has a few rough corners we had to investigate before publishing the integration instructions.
First of all, please try this build: http://sysprogs.com/files/tmp/VisualGDB-5.4.3.2263.msi
Then follow the instructions below to integrate the Espressif’s toolchain:
- Unpack the toochain to an arbitrary directory on your machine and create a toolchain.xml file there with the following contents:
<?xml version="1.0"?> <Toolchain xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <ToolchainName>ESP32</ToolchainName> <ToolchainType>Embedded</ToolchainType> <PathDetectionKeyStrip>0</PathDetectionKeyStrip> <GNUTargetID>xtensa-esp32-elf</GNUTargetID> <BuiltInBSPs> <string>esp32-bsp</string> </BuiltInBSPs> <ToolchainID>com.visualgdb.xtensa-esp32-elf.external</ToolchainID> <BinaryDirectory>opt\xtensa-esp32-elf\bin</BinaryDirectory> <Prefix>xtensa-esp32-elf-</Prefix> <Make>make.exe</Make> <IsCygwinBased>true</IsCygwinBased> <GCCVersion>5.2.0</GCCVersion> <GDBVersion>7.10</GDBVersion> <LIBCVersion></LIBCVersion> <BinutilsVersion>2.25</BinutilsVersion> <Revision>1</Revision> <MinimumEngineVersion>5.4</MinimumEngineVersion> <Comments>ESP-IDF 3.0</Comments> </Toolchain>
- Copy the IDFCheckouts.xml file from our toolchain directory to the Espressif toolchain directory. This will ensure VisualGDB can find the esp-idf checkouts.
- Copy the esp32-bsp directory from our toolchain to the Espressif toolchain directory. This will get the debugging plugin to be recognized.
- Do not copy the esp-idf\v3.0 folder from our toolchain. Instead, create a recursive checkout of the Espressif repository manually using git from their toolchain. The 2 toolchains use different set of libraries and copying an existing checkout with prebuilt files will prevent the build from completing correctly. Also due to differences between the way git is installed in 2 toolchains, our ESP-IDF checkout manager won’t be able to use the git executable from the Espressif toolchain.
- Open the ESP-IDF project wizard. On the toolchain page select “find a toolchain by locating gdb.exe”, then change the filter from “*gdb.exe” to “toolchain.xml” and point to the toolchain.xml file in your toolchain. This will add it to the VisualGDB toolchain list.
- Create the project.
- Open the VisualGDB Project Properties and change the path style from /cygdrive/xxx to MinGW (/c/xxx).
Now you should be able to build and debug the project as expected. Advanced functionality like opening the Cygwin shell might still not work though due to differences between toolchains.
Hope this helps. Let us know if you run into any problems or need further details.
May 22, 2018 at 16:07 #20975jsmithParticipantFirst of all – thanks for your help. I really appericiate that.
I did it like you advised with some modifications (adjusted existing workspace modifying $(Solution).xml, set of *.vcxproj, etc)
-<ToolchainID>com.visualgdb.xtensa-esp32-elf</ToolchainID>
=<ToolchainVersion>5.2.0/7.10/r9</ToolchainVersion>
+<ToolchainID>4365939a-fe3e-467f-bd5b-fa8efeebad5a</ToolchainID>
+<ToolchainVersion>5.2.0/(crosstool-NG/r0</ToolchainVersion>and similar changes in corresponding files to allow VGDB pickup OpenOCD from BSP.
May 23, 2018 at 04:48 #20979supportKeymasterHi,
That should work as well. As long as the GNUTargetID is set properly, the toolchain ID and version can be set arbitrarily – VisualGDB will still recognize the toolchain properly.
- Unpack the toochain to an arbitrary directory on your machine and create a toolchain.xml file there with the following contents:
-
AuthorPosts
- You must be logged in to reply to this topic.