Forum Replies Created
-
AuthorPosts
-
support
KeymasterOK, we have finally updated our KSDK importer to work with the latest v2.1 and v2.2 KSDK releases. You can download a build supporting it here: http://sysprogs.com/files/tmp/VisualGDB-5.3.7.1769.msi
support
KeymasterHi,
Thanks for confirming this. We have retested it and confirmed that the exception would happen before VisualGDB asks to download the matching sources. We have fixed it in this build: http://sysprogs.com/files/tmp/VisualGDB-5.3.7.1767.msi
support
KeymasterHi,
This error happens because VisualGDB cannot automatically download the source code for the system library you stepped in. If your PC does not have an Internet connection, simply choose “no” when VisualGDB suggests downloading the source code and it will show the disassembly instead.
support
KeymasterHi,
The virtual drive could be using a different FLASH programming mechanism (e.g. different frequency) that does not trigger the bug, so it’s hard to say what exactly happens without an in-depth analysis of what is going on with the board. As the problem looks specific to one board instance, it could be easier to simply get another one.
support
KeymasterHi,
Thanks for the detailed log. If the FLASH programming fails, it could be an indication of a damaged board, so simply getting a new one could be the easiest fix.
Another option would be to try using J-FLASH or other Segger-specific tools for programming FLASH and see if they report any errors when you try to program the same ELF file.
support
KeymasterHi,
It looks like VisualGDB sent the “flushregs” command before the last “evaluate-expression” was complete:
^done,value=”0” -data-evaluate-expression “\$s30″ ^done,value=”0” -data-evaluate-expression “\$s31″ -interpreter-exec console flushregs -gdb-set $r0=0x1 ~”The target is not responding to GDB commands.\nStop debugging it? ” ~”(y or n) [answered Y; input not from terminal]\n” =thread-group-exited,id=”i1″ ^error,msg=”Disconnected from target.” -gdb-set $r1=0x20003448 ~”Register cache flushed.\n”
Did you have to cancel the “-data-evaluate-expression” command via the “GDB Command Taking Too Long” window? If not, it could be caused by some strange race condition and we can add soem extra logging on VisualGDB side to help you diagnose this.
support
KeymasterHi,
Please ensure you are using Clang-based IntelliSense. It supports GCC-specific code much better than the regular VS IntelliSense.
support
KeymasterHi,
We usually add official support for ESP-IDF versions within 1-2 months from their official final release date. As ESP-IDF 3.0 is not officially released yet, it’s hard to say when this will happen.
As the ESP-IDF is changing very rapidly, we have considerably simplified support for importing the projects build by ESP-IDF itself. Please see this tutorial for a detailed example of importing ESP-IDF projects.
support
KeymasterHi,
This looks like some sort of a networking problem. Please ensure that your computer has Internet connection and try resetting your DNS cache.
support
KeymasterHi,
Strange, normally the MCU.CSV file should not affect the J-Link stub (you can try removing the line from it after you edited the VisualGDB settings to be 100% sure).
Can you also confirm that the problem happens when you launch the segger gdb stub manually and connect gdb from command line? You can use the following gdb commands to test it:
gdb <elf file> target remote :3333 load continue
support
KeymasterHi,
Thanks, we have tried building and running your project on our nRF52840 board and it worked out-of-the-box.
Please check if you are using the same SDK version with IAR. If not, the latest Nordic SDK might be incompatible with the preview board and would only work with the final version of it.
support
KeymasterHi,
Thanks, this could be related to Visual Studio trying to asynchronously request the frame list while the registers are still being updated. Please try this build: http://sysprogs.com/files/tmp/VisualGDB-5.3.7.1763.msi
We have also added a setting under Tools->Options->VisualGDB->Embedded->Other that allows disabling parallelization of register setting commands.
If you want to use function tracing with your custom RTOS, you would need to modify the profiler framework so that it can store the instrumented call stack information for each thread separately. This mechanism is not documented, so our best advice would be see how this is supported for FreeRTOS and add similar code for handling your RTOS.
support
KeymasterHi,
OK, please try this build: http://sysprogs.com/files/tmp/VisualGDB-5.3.7.1762.msi
We have added a new field called VSPropertyObject to the ExpressionValue class. You can set it to your own implementation of IDebugProperty3. VisualGDB will forward calls to GetCustomViewerCount(), GetCustomViewerList(), CreateObjectID() and DestroyObjectID() to this object.
support
KeymasterHi,
There is no documentation on the internal real-time watch protocol (as it’s a fairly rare customization), however our profiler framework includes sources for all target-side code involved in real-time watches, so it’s relatively easy to reverse-engineer it.
We would recommend starting with creatinga test project similar to the one shown in the blog post. Then add several instances of ScalarRealTimeWatch and ensure they work.
When you add a ScalarRealTimeWatch object to the real-time watch window, VisualGDB detects its type and sets the “enabled” field. Then it expects the real-time watch data stream to contain packets of the following structure:
<scalar real-time watch updated>: <variable address> <new value>
You can emulate this by creating your own implementation of ScalarRealTimeWatch linked to a global variable in your program. Once enabled is set it should configure the ITM registers to trigger when the linked variable is modified and your client-side code should read the ITM messages and translate them into the real-time watch protocol (note that you will need to report the address of the watch object, not the original variable).
BTW, if you’re willing to publish the sources for the plugin under a permissive license, we will be happy to fork it on our Github repo, include it into the VisualGDB distribution and support/maintain it officially.
support
KeymasterHi,
Yes, our OpenOCD fork includes support for FLASH programming plugins. Please follow this tutorial for details.
-
AuthorPosts