The world of embedded designing is an interesting one and often full of challenges. It’s not something that can be adequately covered in a blog post, but rather it’s an experience you have to live for yourself.
In this post, we will explore the basics of how the industry functions, what is meant by “embedded designing”, and the resources you need to get started.
What is embedded designing?
Embedded systems development designing is designing a machine’s hardware, with the software being handled by someone else. There are many reasons you would want to create a device’s hardware, but there are also some situations where it’s not feasible.
The most common reason for wanting to do your embedded designing with embedded technologies is that you want to control more of what your system looks like. While most operating systems nowadays have a great look and feel, not all do. Some of the older ones do not have the same feeling you would like, and this is where you would want to design your hardware.
Another reason why you might want to do your own embedded designing is if you are planning on creating an entirely new product and don’t want to use someone else’s OS. Embedded systems development designing can be a tedious process, but when it comes to something that matters, then it’s well worth the effort.
In any case, you need to be quite experienced when it comes to embedded computing designing before thinking about tackling a completely new OS. It will save you time if an OS is already out there that works for what you need.
The process of embedded designing
You will see on the web that there are quite a few different ways of going about embedded hardware designing. They are mostly centred around having your PCBs made by third parties and then using internal programming to take over from there. This is what is often referred to as bare bone. The system is just electrical.
In some cases, you will have a PCB assembled by a third party, but you might also be able to buy your PCB and do the assembling yourself if you wish. If you want to do this, then it’s a good idea to get a multipurpose PCB designed so that you can reuse it in other projects later on.
Hobbyists often prefer the bare bone approach, but it’s not something we would recommend. While you save money in the short term, you also have to put in a lot of time and effort. Not to mention that it can be rather challenging to get your system working correctly as bugs can quickly arise.
If you are planning on doing a lot of embedded designing, then we would recommend investing in a good board. This is something that will save you a great deal of time and effort down the road. You should look into getting one designed with an open-source Arduino or Raspberry Pi so that you can do more than one project with it later on if you want to.
We touched on some of the things you need to get started with embedded designing, but several other things might be helpful.
For starters, having a decent programming language is an absolute must. The most popular choices are C and C++, and Python is also gaining momentum.
If you are more into electronics than software, you will have to consider getting an Integrated Development Environment (IDE).
This is the program you will use for coding. There are two primary choices here, Windows and Linux. We recommend Geany for Linux users is Geany, as it’s free and has all the features you need for embedded designing. For Windows users, we would recommend Code::Blocks.
Having a good quality power supply is also very important. There are quite a few sketchy ones out there, and one or two of them even have a history of setting things on fire. You should never use the same power supply for your PC as you do for your embedded hardware. Get yourself a decent ATX Power Supply made by reputable manufacturers and comes with at least 6 to 8 years of warranty. It’s better to pay more now rather than having to buy another cheaper one later on down the road, which will end up costing you more in the long run.
If you are planning on using an Arduino or Raspberry Pi, then you will need additional electronics. This includes resistors, LEDs, switches, and so on that you might need to test your project with. You can use a cheap kit off eBay to get started if you aren’t too sure what to buy. There are also plenty of kits available for both of these boards on Amazon if that’s more your speed.
Finally, it’s not a bad idea to have a decent pair of electronics goggles. When working with the pin headers and breadboards that come with the Arduino and Raspberry Pi kits, having fit protection is a must.
If you are more into software than hardware, then there are some excellent choices when it comes to programming languages. There are many different ones out there to choose from, and while they all serve their purpose somehow, we would recommend getting one that is either entirely open-source or heavily based on open-source software. This will give you the best of both worlds.
Most of the languages available today are object-oriented, and you can essentially use the same principles on different platforms. This means it will be easier for you to work with it on another system when needed. Whether that’s your PC, Mac or Raspberry Pi, you can always just re-code it when the need arises.
There are also other languages like VHDL that you might want to consider if you have a specific reason for wanting to do embedded designing. Even though this is one of the newer languages, its popularity proliferates as more people realise its advantages over other choices.