{"id":4180,"date":"2022-02-10T08:00:00","date_gmt":"2022-02-10T07:00:00","guid":{"rendered":"https:\/\/msalamon.pl\/?p=4180"},"modified":"2025-12-27T15:51:15","modified_gmt":"2025-12-27T14:51:15","slug":"the-most-popular-ides-for-stm32-in-2022","status":"publish","type":"post","link":"https:\/\/msalamon.pl\/en\/the-most-popular-ides-for-stm32-in-2022\/","title":{"rendered":"The Most Popular IDEs for STM32 in 2022"},"content":{"rendered":"\n<p>In 2019, I asked the community of the <a href=\"https:\/\/www.facebook.com\/groups\/435508190128252\" target=\"_blank\" rel=\"noopener\">STM32 Polska group on Facebook<\/a> which IDEs or other editors they use to write code for STM32. In 2019 we still didn\u2019t have STM32CubeIDE, so <a href=\"https:\/\/msalamon.pl\/ide-albo-nie-ide-8-najlepszych-ide-dla-stm32\/\">that ranking<\/a> is already outdated. Time to refresh the stats. I asked programmers again what they use. Here are the results.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">The most popular IDEs for STM32 in 2022 \u2013 survey results<\/h1>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/msalamon.pl\/wp-content\/uploads\/2022\/02\/Ankieta.png\"><img loading=\"lazy\" decoding=\"async\" width=\"595\" height=\"1024\" src=\"https:\/\/msalamon.pl\/wp-content\/uploads\/2022\/02\/Ankieta-595x1024.png\" alt=\"\" class=\"wp-image-2083\" srcset=\"https:\/\/msalamon.pl\/wp-content\/uploads\/2022\/02\/Ankieta-595x1024.png 595w, https:\/\/msalamon.pl\/wp-content\/uploads\/2022\/02\/Ankieta-174x300.png 174w, https:\/\/msalamon.pl\/wp-content\/uploads\/2022\/02\/Ankieta.png 634w\" sizes=\"auto, (max-width: 595px) 100vw, 595px\" \/><\/a><\/figure>\n\n\n\n<p>In this comparison, I <strong>omitted SW4STM32<\/strong> and <strong>Atollic TreStudio<\/strong>. These are <strong>dead<\/strong> IDEs that have long <strong>not been supported.<\/strong> We really shouldn\u2019t be using them.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. STM32CubeIDE<\/h2>\n\n\n\n<p><a href=\"https:\/\/www.st.com\/en\/development-tools\/stm32cubeide.html\" target=\"_blank\" rel=\"noreferrer noopener\">Link to STM32CubeIDE<\/a><\/p>\n\n\n\n<p>It doesn\u2019t surprise me that the IDE prepared by STMicroelectronics took first place. Some time ago they bought Atollic True Studio and, based on it, created a combination of Eclipse and STM32CubeMX.<\/p>\n\n\n\n<p>Why is it so popular? You install it and it works. I love Out Of The Box tools, and I\u2019m not the only one. I use this IDE every day, as do hundreds of programmers in Poland and around the world.<\/p>\n\n\n\n<p><strong>We also use this IDE in the <a href=\"https:\/\/kursstm32.pl\" target=\"_blank\" rel=\"noopener\">STM32 Course for Beginners<\/a> (conducted in Polish), with the 4th edition starting on February 16, 2022.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Visual Studio Code \/ PatformIO<\/h2>\n\n\n\n<p><a href=\"https:\/\/www.st.com\/en\/development-tools\/stm32cubeide.html\" target=\"_blank\" rel=\"noreferrer noopener\">Link to VSC.<\/a><\/p>\n\n\n\n<p>Link to PlatformIO<\/p>\n\n\n\n<p>I decided to combine these two environments. <strong>Visual Studio Code<\/strong> is an insanely popular \u201ceditor on steroids\u201d for writing all sorts of software.<\/p>\n\n\n\n<p>Millions of programmers use it basically for everything.<\/p>\n\n\n\n<p>Of course, you can program STM32 microcontrollers in it. You can do it in bare VSC, or you can use <strong>PlatformIO<\/strong>, which is dedicated to microcontrollers. You can write both \u201cin Arduino style\u201d and \u201cnormally\u201d. There\u2019s also debugging, so it\u2019s not a crippled solution.<\/p>\n\n\n\n<p>To use <strong>CubeMX in PlatformIO<\/strong>, this plugin is useful: <a href=\"https:\/\/github.com\/ussserrr\/stm32pio\" target=\"_blank\" rel=\"noopener\">https:\/\/github.com\/ussserrr\/stm32pio<\/a><\/p>\n\n\n\n<p>It adapts a CubeMX project to work with PlatformIO.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Keil \u00b5Vision IDE (MDK)<\/h2>\n\n\n\n<p><a href=\"https:\/\/www2.keil.com\/mdk5\/uvision\/\" target=\"_blank\" rel=\"noreferrer noopener\">Link to Keil.<\/a><\/p>\n\n\n\n<p>An environment straight from ARM. Supposedly the best\u2014at least that\u2019s what many users claim. It\u2019s not limited only to STM32. It can program all ARMs OOTB.<\/p>\n\n\n\n<p>It has its own efficient compiler. Unfortunately, in my opinion it has two huge drawbacks:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The interface got stuck in 1995<\/li>\n\n\n\n<li>It\u2019s paid<\/li>\n<\/ul>\n\n\n\n<p>There is a free version and it\u2019s called<strong> MDK-Lite Edition<\/strong>. It used to be free without limitations for <span>Cortex-M0 and Cortex-M0+ cores. Now there is a 32kB output code limit. As we know, STM32 programs often exceed this value, especially those written with HAL \ud83d\ude42<\/span><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. CLion<\/h2>\n\n\n\n<p><a href=\"https:\/\/www.jetbrains.com\/clion\/\" target=\"_blank\" rel=\"noreferrer noopener\">Link to CLion.<\/a><\/p>\n\n\n\n<p>If someone has worked with any JetBrains suite, they can imagine what it is.<\/p>\n\n\n\n<p>Every IDE from them is very good. There are quite a few people programming microcontrollers in CLion, which is dedicated to C\/C++.<\/p>\n\n\n\n<p>The tool is paid, but it has a 30-day trial.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Segger Embedded Studio<\/h2>\n\n\n\n<p><a href=\"https:\/\/www.segger.com\/products\/development-tools\/embedded-studio\/\" target=\"_blank\" rel=\"noreferrer noopener\">Link to SES.<\/a><\/p>\n\n\n\n<p>A multiplatform IDE from Segger.<\/p>\n\n\n\n<p>This company makes brilliant debuggers that can capture microcontroller instructions in real time. For full support of their debuggers, it is recommended to use Segger tools.<\/p>\n\n\n\n<p>One such tool is an IDE, i.e., Segger Embedded Studio. It is cross-platform (Windows, Linux, Mac). Built-in Clang\/LLVM, GCC is a plus. What\u2019s more! It also has Segger\u2019s C\/C++ toolchain.<\/p>\n\n\n\n<p>Worth a try. It\u2019s free for non-commercial use.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">STM32 Course for Beginners<\/h2>\n\n\n\n<p>On <strong>February 16, the best STM32 programming course for beginners returns!<\/strong> This is already the fourth edition! (conducted in Polish)<\/p>\n\n\n\n<p>It\u2019s a <strong>complete A-to-Z program<\/strong> in which you will learn how to program STM32 microcontrollers. You\u2019ll get to know its interfaces and <strong>you\u2019ll be able to use them correctly and in a non-blocking way.<\/strong><\/p>\n\n\n\n<p>Don\u2019t miss the chance! The next edition will probably be only in the second half of 2022.<\/p>\n\n\n\n<p><strong>So far, more than 470 people have taken part in the course!<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Sign up for the waiting list at <a href=\"https:\/\/kursstm32.pl\/\" target=\"_blank\" rel=\"noopener\">https:\/\/kursstm32.pl\/<\/a> (conducted in Polish)<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><a href=\"https:\/\/kursstm32.pl\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"820\" height=\"194\" src=\"https:\/\/msalamon.pl\/wp-content\/uploads\/2021\/02\/Kurs-STM32-roz.jpg\" alt=\"\" class=\"wp-image-1834\" srcset=\"https:\/\/msalamon.pl\/wp-content\/uploads\/2021\/02\/Kurs-STM32-roz.jpg 820w, https:\/\/msalamon.pl\/wp-content\/uploads\/2021\/02\/Kurs-STM32-roz-300x71.jpg 300w, https:\/\/msalamon.pl\/wp-content\/uploads\/2021\/02\/Kurs-STM32-roz-768x182.jpg 768w\" sizes=\"auto, (max-width: 820px) 100vw, 820px\" \/><\/a><\/figure>\n\n\n<div class=\"kk-star-ratings kksr-auto kksr-align-left kksr-valign-bottom\"\n    data-payload='{&quot;align&quot;:&quot;left&quot;,&quot;id&quot;:&quot;4180&quot;,&quot;slug&quot;:&quot;default&quot;,&quot;valign&quot;:&quot;bottom&quot;,&quot;ignore&quot;:&quot;&quot;,&quot;reference&quot;:&quot;auto&quot;,&quot;class&quot;:&quot;&quot;,&quot;count&quot;:&quot;0&quot;,&quot;legendonly&quot;:&quot;&quot;,&quot;readonly&quot;:&quot;&quot;,&quot;score&quot;:&quot;0&quot;,&quot;starsonly&quot;:&quot;&quot;,&quot;best&quot;:&quot;5&quot;,&quot;gap&quot;:&quot;0&quot;,&quot;greet&quot;:&quot;&quot;,&quot;legend&quot;:&quot;0\\\/5 - (0 votes)&quot;,&quot;size&quot;:&quot;24&quot;,&quot;title&quot;:&quot;The Most Popular IDEs for STM32 in 2022&quot;,&quot;width&quot;:&quot;0&quot;,&quot;_legend&quot;:&quot;{score}\\\/{best} - ({count} {votes})&quot;,&quot;font_factor&quot;:&quot;1.25&quot;}'>\n            \n<div class=\"kksr-stars\">\n    \n<div class=\"kksr-stars-inactive\">\n            <div class=\"kksr-star\" data-star=\"1\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"2\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"3\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"4\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"5\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n<div class=\"kksr-stars-active\" style=\"width: 0px;\">\n            <div class=\"kksr-star\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 0px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n                \n\n<div class=\"kksr-legend\" style=\"font-size: 19.2px;\">\n            <span class=\"kksr-muted\"><\/span>\n    <\/div>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>In 2019, I asked the community of the STM32 Polska group on Facebook which IDEs or other editors they use to write code for STM32. In 2019 we still didn\u2019t have STM32CubeIDE, so that ranking is already outdated. Time to refresh the stats. I asked programmers again what they use. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3714,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"categories":[160],"tags":[178,176,174,177],"class_list":["post-4180","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-stm32","tag-kursstm32","tag-programming","tag-stm32","tag-stm32cubemx"],"_links":{"self":[{"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/posts\/4180","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/comments?post=4180"}],"version-history":[{"count":3,"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/posts\/4180\/revisions"}],"predecessor-version":[{"id":4183,"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/posts\/4180\/revisions\/4183"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/media\/3714"}],"wp:attachment":[{"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/media?parent=4180"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/categories?post=4180"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/msalamon.pl\/en\/wp-json\/wp\/v2\/tags?post=4180"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}