{"id":12067,"date":"2017-08-16T21:32:09","date_gmt":"2017-08-16T20:32:09","guid":{"rendered":"https:\/\/sysprogs.com\/w\/?p=12067"},"modified":"2017-08-16T21:33:00","modified_gmt":"2017-08-16T20:33:00","slug":"visualgdb-5-3-preview-6-released","status":"publish","type":"post","link":"https:\/\/sysprogs.com\/w\/visualgdb-5-3-preview-6-released\/","title":{"rendered":"VisualGDB 5.3 Preview 6 Released"},"content":{"rendered":"<p>Today we announce the release of VisualGDB 5.3 Preview 6. It focuses on further improving the usability of the embedded and Linux projects. I will give you an overview of the\u00a0highlights of this version in this post.<\/p>\n<p><!--more--><\/p>\n<h2>Automatic Embedded Project Importing<\/h2>\n<p>VisualGDB can now automatically import STM32CubeMX and IAR projects. Simply select it on the first page of the Embedded Project Wizard and\u00a0VisualGDB will import the source files and common build settings from the project:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/06-importcube.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12068\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/06-importcube.png\" alt=\"06-importcube\" width=\"822\" height=\"642\" srcset=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/06-importcube.png 822w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/06-importcube-300x234.png 300w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/06-importcube-768x600.png 768w\" sizes=\"(max-width: 822px) 100vw, 822px\" \/><\/a>It gets better than that, next time the original\u00a0project is updated,\u00a0VisualGDB\u00a0will\u00a0build a list of differences between the old and the new\u00a0project version and will suggest automatically\u00a0applying them to your VisualGDB project. Any changes you make to the project will be preserved.<\/p>\n<p>In case you want to import a project from a format not supported by VisualGDB, we made our project importing framework open-source and extremely straight-forward.\u00a0Check out the source code of the <a href=\"https:\/\/github.com\/sysprogs\/BSPTools\/blob\/master\/ProjectImporters\/STM32CubeMXImporter\/STM32CubeMXProjectImporter.cs\">STM32CubeMX import plugin<\/a> if you\u00a0are considering making your own plugin.<\/p>\n<h2>Stepping over Interrupts<\/h2>\n<p>We have also added a few time-saving improvements requested by our\u00a0users. First of all, if you ever got annoyed by interrupts\u00a0occurring while you are trying to step through a function, we added a convenient shortcut to\u00a0suspend them:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/interrupts.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-12070\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/interrupts-1024x643.png\" alt=\"interrupts\" width=\"474\" height=\"298\" srcset=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/interrupts-1024x643.png 1024w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/interrupts-300x188.png 300w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/interrupts-768x482.png 768w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/interrupts.png 1260w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><\/p>\n<p>Simply use the new &#8220;Suspend Interrupts while Stepping&#8221; command to temporarily disable\u00a0interrupts when you step through your code with F10 or F11 (they will be automatically\u00a0enabled once you resume your program with F5).<\/p>\n<h2>Verifying FLASH memory Contents<\/h2>\n<p>GDB provides a very basic command for\u00a0checking whether the FLASH memory actually got programmed correctly (compare-sections). However the only output from this command is whether\u00a0a certain section got programmed correctly or not, so it&#8217;s hard to use it to figure out\u00a0the possible causes of the\u00a0programming problems. VisualGDB 5.3 Preview 6 includes a graphical equivalent of the command that\u00a0will compare the section contents byte-by-byte and will show you the exact differences:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/memory.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12073\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/memory.png\" alt=\"memory\" width=\"786\" height=\"593\" srcset=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/memory.png 786w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/memory-300x226.png 300w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/memory-768x579.png 768w\" sizes=\"(max-width: 786px) 100vw, 786px\" \/><\/a><\/p>\n<p>By looking at the mismatch patterns you can quickly see\u00a0whether the error comes from\u00a0certain sectors being locked, old image being used, or the memory\u00a0erase not working.<\/p>\n<h2>Better GUI for\u00a0Selecting Remote\u00a0Machines<\/h2>\n<p>As a part of our gradual\u00a0process of improving VisualGDB GUI usability, we have redesigned the remote machine selection GUI. You can now conveniently search within the list, remove unneeded connections (unless they are shared via Team Settings), edit\u00a0expressions using custom variables and manage connection aliases:<a href=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/selector.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-12074\" src=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/selector.png\" alt=\"selector\" width=\"907\" height=\"555\" srcset=\"https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/selector.png 907w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/selector-300x184.png 300w, https:\/\/sysprogs.com\/w\/wp-content\/uploads\/2017\/08\/selector-768x470.png 768w\" sizes=\"(max-width: 907px) 100vw, 907px\" \/><\/a><\/p>\n<h2>Try it out<\/h2>\n<p>VisualGDB 5.3 Preview 6 is available for download on our regular <a href=\"https:\/\/visualgdb.com\/download\/\">download page<\/a>. Give it a try and don&#8217;t hesitate to share your feedback via our <a href=\"https:\/\/sysprogs.com\/w\/forums\/forum\/visualgdb\/\">forum<\/a> or <a href=\"http:\/\/sysprogs.com\/support\/\">support page<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today we announce the release of VisualGDB 5.3 Preview 6. It focuses on further improving the usability of the embedded and Linux projects. I will give you an overview of the\u00a0highlights of this version in this post.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[1],"tags":[422],"_links":{"self":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts\/12067"}],"collection":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/comments?post=12067"}],"version-history":[{"count":1,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts\/12067\/revisions"}],"predecessor-version":[{"id":12075,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/posts\/12067\/revisions\/12075"}],"wp:attachment":[{"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/media?parent=12067"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/categories?post=12067"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sysprogs.com\/w\/wp-json\/wp\/v2\/tags?post=12067"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}