Forum Replies Created
-
AuthorPosts
-
support
KeymasterOK, we have investigated the problem. It looks like the I2C peripheral you are using is doing the clock stretching and it releases the SCL clock at the same time as pulling SDA down to acknowledge the transmission:
At least, at the current sampling frequency, it looks like SDA changes exactly at the rising edge of SCL (when it should be stable), so Analyzer2Go aborts the I2C parsing.
Our best advice here would be to try using a faster board (e.g. CYUSB3KIT) that will be able to tell the difference between the times when SDA and SCL change.
P.S. Although it doesn’t fix this issue, we have improved our I2C parser in the following build: Analyzer2Go-2.1.0.21.msi . It now supports 10-bit addressing mode and works better for zoomed-out signals.
Attachments:
You must be logged in to view attached files.support
KeymasterHi,
Sorry, unfortunately it’s hard to tell how to reproduce the problem based on your description.
Please describe it using the recommended 3-step format (including the screenshots of all relevant settings) so that we could follow exactly the same steps on our side and reproduce it.
support
KeymasterThe automatic library discovery is indeed not recursive, so if the added library depends on pthread, VisualGDB would only suggest adding pthread when you build the project again (and the build fails due to missing pthread functions).
There also might have been a confusion between pthread and the asan library that provides similar functions, but is intended to work as a diagnostic layer on top of pthread. We have updated VisualGDB internally to hide the confusing asan/lsan libraries when searching for pthread symbols and only suggest the pthread library itself. Until we release the next preview build with this fix, please make sure you select the pthread library when VisualGDB suggests several libraries resolving pthread symbols.
support
KeymasterIt looks like your support period has expired. Please renew it here: https://sysprogs.com/splm/mykey
support
KeymasterSorry, this looks like an issue of a specific ESP-IDF version and not something specific to VisualGDB. Please try building the project manually per ESP-IDF documentation and check if the problem persists.
If the project can be built outside VisualGDB, but doesn’t build with VisualGDB using the same toolchain/ESP-IDF/settings, we can help you configure VisualGDB to replicate the manual build results.
support
KeymasterHi,
Please refer to the following page: https://visualgdb.com/support/idfcheckout/
support
KeymasterThanks for your feedback.
Regarding the performance, most likely you are using a different build system and a different programming method (e.g. CMake vs. GNU Make and Serial port vs. JTAG). VisualGDB supports both build and both programming methods, and as long as you are using the same method with both IDEs, the build performance should be the same. Also MinGW-based toolchains are much faster than Cygwin-based toolchains, so please make sure you are using the same toolchain in both cases.
support
KeymasterHi,
Normally, the Segger J-Link software should only erase the affected FLASH pages, so please double-check your ELF file layout via View->Embedded Memory Explorer.
If it doesn’t help, please follow the steps below to diagnose the issue:
- Disable the FLASH memory programming via VisualGDB Project Properties -> Debug Settings.
- Program the memory via an external tool and verify that both parts have been programmed.
- Start a debug session with VisualGDB (it should not re-program the FLASH memory).
- Verify that both bootloader and main application’s areas have not been erased by running “x/10x 0x<ADDRESS>” in the GDB Session window.
- Run the “load” command in the GDB Session window and check its output. Once the loading completes, check whether the entire FLASH memory has been erased again.
If you can confirm that the “load” command erases the entire FLASH memory, please check your FLASH protection bits, and also check with Segger support (there might be a J-Link setting controlling the FLASH erasing logic). If running the “load” program does not erase the entire memory, please create a full gdb session log and we can help you find commands that could be erasing the FLASH memory.
March 19, 2020 at 03:55 in reply to: Different Embeeded Frameworks for different build targets #27700support
KeymasterThanks for the suggestion. We are currently experimenting with a new CMake-based embedded project subsystem that is more flexible than the existing MSBuild-based one, and will try to include support for target-specific configuration for embedded frameworks in it.
As a short-term workaround, please consider cloning the Fixed Stack-Heap framework and placing it under %LOCALAPPDATA%\VisualGDB\EmbeddedEFPs under a new ID/name (see how the profiler framework is defined for a quick example). Then you can remove FIXED_STACK_SIZE=$$com.sysprogs.bspoptions.stackheap.stacksize$$ from the AdditionalPreprocessorMacros element and instead define it via regular per-configuration project properties.
support
KeymasterSorry, this is a known limitation of the advanced semihosting. It works by continuously polling a designated memory area (semihosting buffer) to detect when new data is written there, and it won’t work if that area is moved during runtime (that would happen when transitioning from the bootloader to the main application).
As a workaround, please consider using the regular semihosting from the bootloader, and the advanced semihosting from the main program.
support
KeymasterNormally, VisualGDB would automatically discard the saved window positions when the screen layout changes. If not, we should be able to fix it.
First of all, please try the following steps to verify that the problem is related to the multiple screens:
- Verify the VisualGDB Project Properties are broken.
- Close all VS instances.
- Delete the %LOCALAPPDATA%\VisualGDB\GUIPreferences.xml file
- Start VS again and verify that the VisualGDB Project Properties work.
If deleting the GUIPreferences.xml file solves the problem and the problem happens again, please share the contents of GUIPreferences.xml:
- Before you delete it (i.e. when it contains invalid settings).
- After it is recreated next time you use it (i.e. when it contains valid settings).
support
KeymasterThanks for confirming it. Just to double-check, please share a screenshot of the menu command you are using to open VisualGDB Project Properties (the screenshot should include the entire VS window as it may contain important clues).
Please also check View->Other Windows->VisualGDB Diagnostics Console (you would need to enable diagnostic logging before trying to open project properties). It might contain important clues about the error.
support
KeymasterSorry, it looks like your technical support has expired. We could help you resolve the issues you encountered, however we would kindly ask you to renew the support first.
Alternatively, please refer to the following pages for generic instructions on getting old versions:
support
KeymasterHi,
Please try updating to VisualGDB 5.5 Preview 4. It will automatically check for missing packages when loading the project and will suggest automatically downloading/installing them.
support
KeymasterGood to know it works. BTW, we have a detailed tutorial showing the necessary steps here: https://visualgdb.com/tutorials/linux/cmake/target_link_libraries/
Please also feel free to try VisualGDB 5.5 Preview 4. It can automatically troubleshoot the “undefined reference” errors and suggest the necessary configuration changes.
-
AuthorPosts