blue and yellow phone modules

Embedded Systems

Posted by

Learning is a continuous process of integrating multiple skills.

What is Embedded System ?

We have number of articles about Embedded systems in the internet but still I keep getting this question even from engineering students. My simple answer to students is that if you find any smart product in daily life, you may find Embedded system is the key element behind that. Smart TV, Smart Refrigerator, Car, ATM etc.

Simple Embedded System Use cases

red fire alarm system in close up shot
anonymous person pressing button of lift
crop faceless person showing smart watch while using smartphone outdoors

Advance Embedded System Use cases

space technology research science
high angle photo of robot
white and gray medical equipment

Identify Key elements in above use cases?

You will find three basic units Read, Write and Process. You might be knowing these in terms of UI , Sensor, Display, Keyboard, Actuator etc. Let me try to explain this in terms of desktop.

You need one CPU , one keyboard and one monitor. Your main application run on CPU while it accepts data from keyboard and put the result on monitor. Both keyboard and monitor are also have intelligence to communicate with your CPU.

silver imac apple magic keyboard and magic mouse on wooden table

Microprocessor

Diploma/Engineering colleges use 8085 based kit. Here is one such reference from India Mart.

  • 16K Bytes of EPROM with 8K bytes of Battery Backup RAM.
  • 48 I/O Lines, Three Channel Timer/Counter, PC Serial Interface, ADC, DAC, Relay, Opto, Interrupt Controller, USART, EPROM Programmer.
  • 20×2 LCD Display with 101 ASCII Keyboard.

It basically contains 8085 processor with other peripherals like interrupt controller, Program memory(EPROM), Data memory , ADC, DAC etc

Interview Question : Can you create a low speed MCU model on PCB ?

Microcontroller

Here is an example of STM32G071x8/xB microcontroller chip. Now you may notice that many things of PCB such as CPU, interrupt controller, Program memory, Data memory, ADC , DAC etc are in one small chip at low cost , less PCB real estate and low power budget.

You can find a variety of such MCUs from same company. Here is another example :

Is it possible to learn such concepts using online course ?

It is possible and many students joined semiconductor companies without any offline training. You can have a look at Embedkari About section. Check the link associated with students mentioned there.

You have to take care of following :

  • Time management
  • Hard work and Patience
  • Be active in Embedded system community
  • Some investment in hardware material is must. Don’t try to learn everything on simulator.
  • Wait for right opportunity

Nowadays, Getting hardware material is not a big deal . Here are few examples:

How to add extra IoT devices to above MCU?

I mentioned IoT because most of the students are aware of IoT related sensors and actuators. You can think of any functionality. Any MCU will have some limited in-build IPs such s ADC in above case and wired communication interfaces like I2C, SPI, UART. It can also have Radio transceiver for wireless communication. For example nRF52 series devices.

Most common serial communication interfaces are UART, I2C and SPI. You may find these skills in almost all firmware jobs. Let me give example of I2C (Inter-Integrated Circuit) communication. You can see a long list of supported devices at I2C based devices . Just scan the list to understand what intelligence you can add in your embedded system project.

Interview Question

Inspect the following two phases of communication between Master and Slave device using I2C. There is some pattern is missing , Can you guess which one ?

Phase 1

Phase 2

Is programming skill sufficient for Embedded Software job ?

Only programming skill is not sufficient. Embedded professionals must have basic idea of analog and digital electronics. In the absence of this , they may damage the board under development. One has to do all sanity checking before applying power to the system. I remember one customer in my previous company didn’t follow this . There was one ATX(Advanced Technology eXtended) form factor PowerPC board of 4k with switch provision for 110/220 AC volt. Customer didn’t go through getting started and directly plugged the board to 220V AC.

Debugging is the most important skill in embedded system. It is developed by practical experience only. This is one of the reason companies ask for min 2 yr work experience in embedded software development and min 4yrs experience in hardware design. One can easily modify software but changes in hardware design may impact full project delivery schedule.

Why should I learn about Computer architecture ?

We discussed above Desktop , Microprocessor and Microcontroller. The most common factor among all of these is Computer architecture. If you are keen to make long term career in Embedded system, you can’t ignore computer architecture. It will help you to understand the basic principle behind any embedded specific operation. Embedded system professional can explore opportunities in advance multi-core systems. Here are two well known approaches.

Reference : NxP website

Asymmetric Multiprocessing (AMP)

A separate OS, or a separate copy of the same OS, manages each core. Typically, each software process is locked to a single core (e.g. process A runs only on core 1, process B runs only on core 2, etc.).

Symmetric multiprocessing (SMP)

A single OS manages all processor cores simultaneously. The OS can dynamically schedule any process
on any core, enabling full utilization of all cores.

What can be the next level computing engine to learn ?

You might have heard terms like Edge computing, Cloud compurting etc .

Gartner defines edge computing as “a part of a distributed computing topology in which information processing is located close to the edge—where things and people produce or consume that information.”

There is no end to advance technology. For example : Micron’s First 232-Layer NAND . You can find multiple such stories at our EmbeddedGen link.

What is special in Embedkari courses ?

There are several factors which make Embedkari courses best in the market.

  • Course Material – Our contents include Coding skills, Debugging skills, ARM architecture, Multi-core Networking device, Embedded Linux and Practice sessions. Most important thing is that it is properly validated before adding into the course.
  • Mentorship – Sudents get direct mentorship for further career
  • Technical Support – Whatsapp , Live doubt clarification and community
  • Job Assistance : 90 days Interview preparation with Job
  • Testimonials : You can find a variety of testimonials at this link from both students and working professionals

Here is a summary of formal contents . We also keep doing additional live sessions on extra topics.

Will there be saturation in Embedded system Job after 15-20 years ?

Embedded software is very interesting domain and it is hard to believe that there will be saturation in another 15 or 20 years. Let me share my experience. I started working with embedded firmware in 1992 using 80c31 processor . That time I used a Pascal kind of language PLM51. Later I did assembly also for 8051 and other microcontrollers . Designed a variety of products including Key telephone system , Fire alarm panel , LED display board, Currency counter , Industrial timer/counter. Later in 1999 , I got a chance to work with Motorola 68EN360 device using high level language and IDE. Then I worked on a series of devices including Mcore and PowerPC. Here I entered to advanced embedded with boot loader and Linux etc. I also got a chance to work on Automotive software OSEK. I worked in all PowerPC devices in Motorola & Freescale . Later moved ARM based devices and multi-core software . This included Networking based software and virtual machine . I decided to take a break after reaching 50yrs and established one platform Embedkari. But my passion to Embedded software did not allow me a single day break and again tried low end latest MCUs . So when I started in 1992 , sending message over Key Telephone system was a feature and I worked in DOS environment for that. Now where we are in technology after 28yrs.. Still lot of things to go with IoT , then AI , AR/VR, air-taxi , Robotics etc . There is no limit of finding solution for mankind. A simple virus has tested the worldwide technical strength.. Each new silicon device come with 15yrs longevity. Do you think that there will be saturation even after 25yrs ?

About Author : Sanjay Kumar Adhikari

This article is written by myself and I have not used any AI based tool for the same. We always provide proper detail of content writer or we validate that before publishing. You can take a look at Album given.

You can have a quick look at Album given in this website.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.