support

Forum Replies Created

Viewing 15 posts - 166 through 180 (of 7,819 total)
  • Author
    Posts
  • in reply to: WSL Linux Builds #36120
    support
    Keymaster

    Hi,

    VisualGDB handles WSL by launching a monitor process on the Linux side that forwards the actual application output back Windows via TCP. The most likely explanation why it’s not working is that the firewall either on Linux or Windows side is preventing VisualGDB from connecting to it.

    If turning the firewall off doesn’t work, you can try narrowing it down by running VisualGDB.exe /lxsstest. It will run the “uname -a” command inside WSL, but will launch the monitor process in a separate window, so you can check if it does anything suspicious.

    in reply to: wrong memory size on STM32H723ZG #36117
    support
    Keymaster

    Hi,

    You can just patch the linker script file under %LOCALAPPDATA%\VisualGDB\EmbeddedBSPs.

    If you want to fix it for multiple devices, you can try regenerating the entire BSP from the STM32 SDKs using our BSP generator. However, it involves some manual setup (e.g. downloading STM32CubeMX) and will download huge SDK packages from ST.

    in reply to: .bat build (Custom Build Server) #36116
    support
    Keymaster

    Hi,

    You can try this build: VisualGDB-6.0.104.5230.msi. It uses relative paths for BSP sources, include directories and linker scripts, as long as they are within the project directory.

    in reply to: .bat build (Linux Computer) #36109
    support
    Keymaster

    Hi,

    The procedure for getting exactly the same output would be to compare the builds, narrow down on specific differences, and track each of them to the root cause. That said, the ELF files will not be 100% equal due to source file paths stored in them, and the symbol in the final binary could be in a different order if the linker does not pick them deterministically.

    in reply to: Visual GDB blue pill tutorial steps? #36105
    support
    Keymaster

    VisualGDB works just fine, as long as the board itself is debuggable and not broken. If you are already struggling to get it working, just connecting to it with VisualGDB won’t automatically fix the issues, and our support won’t be able to troubleshoot or replace the board for you.

    in reply to: wrong memory size on STM32H723ZG #36103
    support
    Keymaster

    Hi,

    The memory definitions are automatically parsed from the device definitions inside the original SDKs, and sometimes they don’t match the datasheets. Normally, ST fixes this in the next SDK release. Until then, patching the linker script manually should be a reasonable workaround.

    in reply to: Visual GDB blue pill tutorial steps? #36100
    support
    Keymaster

    Sorry, we tried helping our users with such issues before, but it always backfired. Users would then run into much bigger problems further down the road, and would expect our support to review complex schematics of custom boards, or look through large projects written by someone else, that somehow interfere with debugging logic.

    So, we had to limit our regular support to issues that are specific to our tools. If you would like us to explain anything else, we can do it at our consulting rate. You can read more about it here.

    in reply to: Visual GDB blue pill tutorial steps? #36098
    support
    Keymaster

    Hi,

    Based on what you described,  it looks like a wiring issue. Please refer to your board and JTAG debugger documentation for details on getting the wiring correctly. VisualGDB cannot automatically fix it for you, or troubleshoot any wiring issues.

    If you are not sure, please make sure you can debug the same board with the same example by running OpenOCD manually. If it works outside VisualGDB, we can help you configure VisualGDB to match that setup. If the board doesn’t work outside VisualGDB either, you will have to figure it out first before trying VisualGDB.

    in reply to: Projects with STM32H7S3x8 / STM32H7S7x8 #36092
    support
    Keymaster

    Hi,

    We are aware of the new STM32H7S series and have the BSP based on the official SDK from STM32, however have not tried the hardware on our side yet.

    If you would like to replicate the 2-project structure from STM32CubeIDE, we would advise using the Advanced CMake Project Subsystem to create the bootloader + application projects separately, and then manually combine them into the same project by editing CMakeLists.txt. Specifically you would need to:

    • Move the find_bsp() statement from the second project into the first one, adding an ALIAS parameter (e.g. BSP2)
    • Move the add_bsp_based_executable() statement as well, setting BSP_ALIAS to match the second BSP.

    You can also just create 2 separate MSBuild projects and have them in the same solution (right-click on Solution node -> Add -> Existing Project).

    We do not have the hardware yet to give exact advice on replicating the ExtMemLoader logic (we will be publishing a tutorial in a couple of weeks), however, you can try checking what exactly does the STM32CubeIDE do in this mode. If it’s running OpenOCD with some special arguments, or executing the STM32CubeProg, we can help you configure VisualGDB to match that.

    in reply to: Visual GDB issue in VisualStudio 17.12.0 Previw #36086
    support
    Keymaster

    Hi,

    Thanks, looks like the new preview build introduces additional type checking that fires false positives in some cases.

    We have added a workaround to this build: VisualGDB-6.0.104.5221.msi

    in reply to: Flash program to ESP32 encrypted flash memory #36082
    support
    Keymaster

    Hi,

    You can configure VisualGDB to use esptool.py to load the FLASH memory even when debugging with OpenOCD. This can be done via VisualGDB Project Properties -> Debug Settings -> Program FLASH using -> esptool.py.

    Then, VisualGDB will run the FLASH programming command before starting debugging (on latest ESP-IDF that would be ninja flash) that internally runs esptool.py with the correct settings. You may need to change some project settings in the CMakeLists files to enable the encrypted mode for this command (you can try asking on the Espressif’s forum).

    Another option is to disable the FLASH programming via VisualGDB Project Properties, and run explicitly esptool.py via pre-debug steps or custom actions (requires Custom Edition).

    in reply to: Autocomplete only on Tab press #36080
    support
    Keymaster

    Thanks for your patience. We have added the option to auto-complete only with TAB to VisualGDB 6.0R4.

    You can configure it via Tools->Options->Text Editor->C/C++(VisualGDB)->Advanced->Code Completion->Auto-complete only on TAB.

    in reply to: Multiple embedded project issues #36079
    support
    Keymaster

    Hi,

    No problem, please find the detailed answers below:

    1. VisualGDB offers a different set of refactoring tools from the regular VS. E.g. it has the create-from-use functionality that normally only works for C# projects, but doesn’t have the “extract function” feature. Other refactoring features are implemented via RefactorScript – an extensible scripting language for generating boilerplate code. If you are looking for a particular refactoring feature, let us know and we will advise how to find it.
    2. This looks like the memory buffer in the program gets corrupt, so VisualGDB cannot make sense of what it’s getting from the target. Just overflowing the buffer should not be causing it. Please try reproducing the problem on a clean project created from scratch. If it doesn’t happen there, please try comparing it against the original one.
    3. Normally, address resolution should work. Please try checking it with a clean project created from scratch. If it works there, but not on the actual project, it could be caused by inconsistent debug symbols in the project, or by a bug in the VisualGDB’s profiler. If this is the case, we can investigate it further if you could share your ELF file. We would kindly ask you to renew your support first though.
    4. We have rechecked it and it worked just fine. If it doesn’t work as expected, please make sure you can reproduce the issue on a clean project created from scratch, and then share the complete repro steps as described here. You can also record a screen video showing the problem if you do not want to take multiple screenshots.
    in reply to: debugging a pico with pico probe –max breakpoints? #36076
    support
    Keymaster

    Hi,

    We haven’t checked the RP2040 specifically, but most similar devices support between 4 and 6 hardware breakpoints. You can probably find out the exact number in the datasheet, or just try creating several breakpoints and see how much it takes to trigger the “too many” error.

    in reply to: STM32CubeMX – physical folders and file grouping #36074
    support
    Keymaster

    Hi,

    You can use the virtual folders in Solution Explorer (similar to regular VC++ projects) or CMake source groups (requires editing CMakeLists.txt files, but will work with any IDE that uses CMake).

    That said, the STM32CubeMX-based projects have a somewhat rigid structure where many parts gets regenerated when you change settings in the STM32CubeMX tool, overwriting the changes that were outside the specially marked blocks. We do not recommend this workflow for complex projects with non-trivial structure. Instead, we would advise having 2 projects:

    • A simple STM32CubeMX project that has all the relevant initialization/configuration code generated by the STM32 tools.
    • The main CMake-based or MSBuild-based project with production code, that has snippets copied from the STM32CubeMX project.

     

Viewing 15 posts - 166 through 180 (of 7,819 total)