Today, I would like to share a list of embedded software:
1. BowPad

We often need lightweight text editors for writing small amounts of code or viewing logs. BowPad is a super handy and compact text editor.
For more details, you can read previous articles: Sharing a super handy text editor!
BowPad source code/installation package download link:
https://github.com/stefankueng/BowPad
2. Keil

Everyone is familiar with Keil, the IDE for microcontroller development. The first software we should install when learning about microcontrollers is probably Keil~
3. VSCode

VSCode (full name: Visual Studio Code) is a free, cross-platform source code editor developed by Microsoft. This software supports syntax highlighting, code auto-completion (also known as IntelliSense), code refactoring, and definition viewing, and it has built-in command line tools and Git version control system. Users can change themes and keyboard shortcuts for personalization, and can also install extensions from the built-in extension store to expand software functionality.
In some surveys, VSCode is considered the most popular development environment among developers. Many people also prefer to use VSCode for coding in microcontroller development, using Keil for compilation, and even setting up the STM32 development environment based on VSCode.
When developing embedded systems in Ubuntu, VSCode should be our first choice.
4. Visual Studio

Unlike VSCode, Visual Studio is an IDE that we can install for emergencies, such as verifying C programs or developing C# programs. Some simulators related to embedded systems are also based on Visual Studio, as introduced in previous articles:
5. MinGW
If we only install Visual Studio to verify C programs, we can skip it since Visual Studio is too heavyweight. We can just install VSCode + MinGW.
https://sourceforge.net/projects/mingw/
MinGW stands for Minimalist GNU for Windows
. It is a collection of Windows-specific header files and import libraries using the GNU toolset that can be freely used and distributed. It includes the gcc tool, which can be used to compile our C code.
MinGW provides a complete set of open-source compilation tools (such as gcc) suitable for Windows platform application development, without relying on any third-party C runtime libraries.
6. Source Insight
We often need to read some code. Although we can also use IDEs or code editors like VSCode, the efficiency of reading code may be lower. Therefore, we need to install a code reader.

Source Insight is essentially an editor that supports multiple development languages (Java, C, C, etc.), but due to its powerful features such as searching, locating, and color display, it is often used as a source code reading tool.
7. VMWare
For embedded Linux development, besides installing a dual system, we can install virtual machine software to run the Linux system.

There are several virtual machine software options, and I prefer using VMWare.
Of course, besides virtual machines, there are other methods. For example: WSL (Windows Subsystem for Linux), which I haven’t used yet, so I don’t know how well it works.
8. Git
Git is an open-source distributed version control system that can efficiently and quickly handle version management for projects ranging from small to very large.

Related articles on Git:
Essentials | Using Git, a must-have skill for embedded systems
Tools | A step-by-step guide to using Git in VSCode
9. Beyond Compare
We need some comparison tools to compare two pieces of code.

Beyond Compare is a powerful comparison tool. It is not just a code comparison software; it can also be used to compare tables, MP3s, registries, and even icons.
Of course, there are also other excellent comparison tools; just choose one that you find convenient to use.
Related articles:
Experiences using several comparison tools
Sharing a compact and handy code comparison tool
10. Serial Assistant


The Serial Assistant is an essential tool for our embedded development, and there are many options available.
Here are a few that I find useful:
-
MobaXTerm
-
Xshell
-
Friendly Serial Debugging Assistant
-
Microcontroller Multifunction Debugging Assistant
11. STM32Cube
A tool produced by ST.
(1) STM32CubeMX

STM32 configuration tool.
(2) STM32CubeIDE
STM32 integrated development environment.
(3) STM32CubeProgrammer
STM32 programming tool.
12. RT-Thread Studio
A one-stop RT-Thread development tool that makes IoT development simple and efficient through an easy-to-use graphical configuration system and rich software package and component resources.
Related articles on earlier versions:
Experience using RT-Thread Studio
[RT-Thread Notes] Using the BH1750 software package
Sharing a smart streetlight case experiment based on RT-Thread
13. FlyMCU

FlyMCU simulation software is an STM32 serial port programmer that connects to the communication port used for easy program burning.
14. QT Creator

Qt Creator is a cross-platform integrated development environment (IDE) designed to provide the best experience for developers. Qt Creator can run on Windows, Linux, and macOS desktop operating systems, allowing developers to create applications for desktop, mobile, and embedded platforms.
Related articles: Easy to understand | A step-by-step guide to writing your first upper computer
15. PyCharm
Python for everyone. We can learn Python as a supplementary language.

PyCharm is a powerful Python editor with cross-platform capabilities.
These are some software tools related to embedded development. If this article helps you, please share it, thank you!
Friendly Reminder
Due to recent changes in WeChat’s push rules, if you want to see our articles regularly, you can click “Like” or “View” at the bottom of the page after reading each time, so that the articles pushed each time will appear in your subscription list promptly.