Need Guidance (not-spoon-feeding) on self-Learning Embedded System to get a Job

Thread Starter

mack38

Joined Nov 29, 2019
4
My current Situation : -
  • Already worked as a contractor from more than 10 years in the area of ERP integration development and architecture (Oracle SOA), still not getting stable job as, project on this technology are executed by service-based company (and everybody knows their ethics and moral)
  • So, want to migrate into embedded development their by getting chance to get job in product companies. (not service companies)
  • Already learn basic electronics, difference between microprocessor and microcontroller, I am already expert in C, C++, knows little bit Assembly (but not full), all type of protocol – UART, i2C, SPI, CAN.
  • Now, I don’t know what should be my next step ? (do I simply use keil MDK-ARM to write some code accomplishing certain functionality but then the question is on which processor or microcontroller. And I can’t buy any board so is there any simulator of entire processor/microcontroller/board based on which I can write a code in C or C++ and that I can show in an interview to get a job.
  • Also I need to show at least 1 year experience in embedded development on top of my 10 years non-embedded development so to justify that I need any industry-specific knowledge which means those product and technology (microprocessor/microcontroller) which are actually used by companies so that on interview I can justify them that I have the knowledge what they are looking as getting a job on being a fresher is impossible in India where currently I am staying so I have to show some experience.
  • Maybe 1 or 2 industry-specific real-world projects will help me in this aspect, but I don’t know where I can get these projects. As only blinking an LED on board or controlling a motor speed won’t get me a job.

Please help me by guiding what next I should learn, any specific microcontroller, microprocessor, any specific area which is more in demand e.g. Automobile, home appliance, printer, laptop, TV, washing machine, Smartphone etc...
 

pmd34

Joined Feb 22, 2014
386
Hi Mack,
To prevent a huge amount of time, struggling with programming interfaces, compilers and modules, I would really recommend the Atmel AVR-8 microcontrollers "Atmega..." with AVR studio (software)- which is free!).
You can also get very cheap programmers and demo boards from china eg aliexpress. So although you say you can't buy any boards, if you want to be of interest to an employer, you really need practical knowledge, as hands on experience is everything!
These are the same ICs used with the Ariduino boards, but I would personally recomend the AVR studio software rather than the Arduino interface as it is more "professional" and what you might find in an industrial work place.

Then finding something to do other than flashing lights is the challenge. To really get your self immersed and motivated in it, it needs to be a project that you would really like the actual end product, as learning for the sake of learning is hard to do! So try and think of something fun you could have around the house or garden, a solar plant watering system, and radio controlled door opener, a window blind opener etc.. Then start to reseach what modules the project needs.. and off you go!
 

Papabravo

Joined Feb 24, 2006
12,500
The ethics and morals of industry are bound to disappoint you regardless of where you end up; and the guidance would be that you need to start with a reasonable set of expectations. You will not be able to accomplish your goal overnight. It will take you 3-5 years of effort consuming 80-90% of your spare time. The most challenging aspect is debugging a system that does not work. You have to develop the skill of drawing inferences from scant evidence about things that can and will go wrong. You need to develop the scaffolding, both hardware and software, to investigate what is going on in systems with limited display capabilities. This is not really an activity for for dabblers. That said the longest journey begins with the first step.
 

Thread Starter

mack38

Joined Nov 29, 2019
4
Hi Mack,
To prevent a huge amount of time, struggling with programming interfaces, compilers and modules, I would really recommend the Atmel AVR-8 microcontrollers "Atmega..." with AVR studio (software)- which is free!).
You can also get very cheap programmers and demo boards from china eg aliexpress. So although you say you can't buy any boards, if you want to be of interest to an employer, you really need practical knowledge, as hands on experience is everything!
These are the same ICs used with the Ariduino boards, but I would personally recomend the AVR studio software rather than the Arduino interface as it is more "professional" and what you might find in an industrial work place.

Then finding something to do other than flashing lights is the challenge. To really get your self immersed and motivated in it, it needs to be a project that you would really like the actual end product, as learning for the sake of learning is hard to do! So try and think of something fun you could have around the house or garden, a solar plant watering system, and radio controlled door opener, a window blind opener etc.. Then start to reseach what modules the project needs.. and off you go!
I can see that "MPLAB X IDE " is also free and has more feature than "Atmel Studio " on this link https://www.microchip.com/development-tools/
so what would be my first step -->
1) install the correct compiler, but which one ?
2) install the correct IDE, but which one ? http://studio.download.atmel.com/7.0.1931/as-installer-7.0.1931-full.exe
https://www.microchip.com/mplab/avr-support/avr-and-sam-downloads-archive
3) install the correct Debuggers, but which one ?
4) install the supporting file and packages, but which one ?
4) Create and start programming using IDE but on which processor/or microcontroller-based
Is there any simulator of a microcontroller with IDE or a separate installer for that?
 

sagor

Joined Mar 10, 2019
116
Mack, as a constructive suggestion, if you are planning to work with "English speaking" companies or customers, you could use a refresher course in English writing. If applying for a job elsewhere, like one where you work in your native language, then this should not be an issue.
It is evident by your question that English is not your first language. In general, your English is rather good, but you have several grammatical errors. So, a lot depends on where or who you plan to get a job with. If applying to a firm that deals a lot with English speaking customers, your written resume may or may not pass first review by the potential employer, regardless of how good your programming skills are.
Good luck with the job search....
 

pmd34

Joined Feb 22, 2014
386
Hi Mack,

Well to answer your many "which one" questions... just AVR studio.. it has compiler, assembler and IDE all built in so you dont have to worry about linking files and using many different software packages which can be a nighmare. Thats why i recommend!
 

Thread Starter

mack38

Joined Nov 29, 2019
4
Hi Mack,

Well to answer your many "which one" questions... just AVR studio.. it has compiler, assembler and IDE all built in so you dont have to worry about linking files and using many different software packages which can be a nighmare. Thats why i recommend!
Just want to confirm that AVR Studio and Atmel Studio are the same as I am not able to find any download link of AVR Studio but I am able to find Atmel Studio at here http://studio.download.atmel.com/7.0.1931/as-installer-7.0.1931-full.exe

I can also see that "MPLAB X IDE " is free and has more feature than "Atmel Studio " on this link https://www.microchip.com/development-tools/

so should I use MPLAB X IDE or Atmel Studio (if it is AVR Studio) ?
 

Thread Starter

mack38

Joined Nov 29, 2019
4
Hi Mack,

Well to answer your many "which one" questions... just AVR studio.. it has compiler, assembler and IDE all built in so you dont have to worry about linking files and using many different software packages which can be a nighmare. Thats why i recommend!

I saw a few videos using Keil for LPC... NXP using Assembly language and register by register value manipulation. I hate to write Assembly language also don't understand the complete language but 60% .

I love to write C, C++, Java so I was thinking if there is any editor where I simply write C, or C++ or Java and see the result on simulated hardware on my laptop monitor (showing complete board, sensors, complete system responding on the execution of my code).
Where I can choose in the IDE :- microcontroller, sensors, and the entire board based on my need and then simply write code and then when executing that code I can see how the system is behaving in a simulated GUI/animated form on my monitor. And later I can show that code in the interview or upload at git-hub to form a strong profile.
 

Papabravo

Joined Feb 24, 2006
12,500
I saw a few videos using Keil for LPC... NXP using Assembly language and register by register value manipulation. I hate to write Assembly language also don't understand the complete language but 60% .

I love to write C, C++, Java so I was thinking if there is any editor where I simply write C, or C++ or Java and see the result on simulated hardware on my laptop monitor (showing complete board, sensors, complete system responding on the execution of my code).
Where I can choose in the IDE :- microcontroller, sensors, and the entire board based on my need and then simply write code and then when executing that code I can see how the system is behaving in a simulated GUI/animated form on my monitor. And later I can show that code in the interview or upload at git-hub to form a strong profile.
Hating to write Assembly Language will condemn you to the lower paid ranks of embedded systems engineers. The ones who are worth their salt can design the hardware, layout the boards, write boot loaders, and use an IDE to write C or any other language de jour. After reading your posts I don't feel that you have what it takes to succeed on this quest unless you readjust your expectations.
 

danadak

Joined Mar 10, 2018
3,609
Core across the industry these days is ARM, largely. Cores used M0, M0+, M3, M4.

You could approach this by studying example projects. There are 100's for PSOC.
Many in tool, many on Github.

https://www.element14.com/community/thread/23736/l/100-projects-in-100-days?displayFullThread=true PSOC 4 projects

https://github.com/cypresssemiconductorco/PSoC-4-BLE PSOC 4 BLE Projects


Advanced capability has a rich set of analog, and logic fabric where you can use
basic logic to create specific HW capabilities in addition to all the peripherals and
of course the core. All GUI drag and drop. Catalog of components attached. A
component is an onchip resource in the case of PSOC. Right click each component
to config, and get API typing for manipulating component.

Example DSP project using just a fraction of the onchip resources (shown in right hand window) -

1575254962914.png

From simple components up to and including DSP component. Wizards to do state
machines, DMA, and general component configuration.

IDE and Compiler free - https://www.cypress.com/products/psoc-creator-integrated-design-environment-ide

Board to start with $ 10 - https://www.cypress.com/documentation/development-kitsboards/cy8ckit-059-psoc-5lp-prototyping-kit-onboard-programmer-and

Many short videos for training, robust forum for support. https://www.cypress.com/video-library/PSoC-Software/psoc-creator-101-lesson-1-introduction-0/108116

Low end PSOC 4 and PSOC BLE, Mid Range PSOC 5LP, High end PSOC 6 dual core.


Regards, Dana.
 

Attachments

Last edited:
Just want to confirm that AVR Studio and Atmel Studio are the same as I am not able to find any download link of AVR Studio but I am able to find Atmel Studio at here http://studio.download.atmel.com/7.0.1931/as-installer-7.0.1931-full.exe

I can also see that "MPLAB X IDE " is free and has more feature than "Atmel Studio " on this link https://www.microchip.com/development-tools/

so should I use MPLAB X IDE or Atmel Studio (if it is AVR Studio) ?
Hi, sorry I was not sure if Microchip had dropped the use of Atmel yet.. but yes, its Atmel Studio (and the programming is primarily writen in C but you can also use assemble code if you like.)
 
Top