General Guideline to get into EE/Embedded

Thread Starter

wyattmarshall

Joined Jul 10, 2022
2
Hey Everyone!

I was wondering if anyone can share a decent "path" to get into Electrical Engineering/Embedded systems?

I am not even sure exactly where I am going, I just have a basic idea of what I think I need to get started in EE/Embedded. So far I think I need to learn Embedded Linux, AVR and/or ARM.

Sorry for the long post, I am just extremely lost and maybe someone else is in a similar position that could benefit from any answers here.

I have been into computers my whole life (currently 26y/o) but other than an AA degree in computer science in 2013, I have never worked in IT, I've been a welder since 18. I have tinkered with web design on and off for years (PHP, Javascript, Ect) and got pretty good at it, just never stuck with it because I couldn't care less about making websites, they just don't interest me. My main goal has always been to make hardware and gadgets and gizmos related to racing (cars, motorcycles, and basically anything with wheels and motor). So I ended up randomly getting an interview with a company for an embedded role, but obviously having never done embedded, I got turned down. I was able to get an idea of what that job and some others similar to it want from their employees, and I have found over the last 3 months or so that there doesn't seem to be a direct path that I can find.

Through what Ive found, I need AVR, ARM, Embedded Linux and EE to get started.
Within the first chapter of "Fundamentals of Electric Circuits" by Alexander + Sadiku

AVR wise, I read Make: Programming AVR, which I found barely useful and ended up just attempting to read the datasheet to figure it out. So far the AVR isn't too bad, I am fairly comfortable with some basic programs but I got stuck at PWM for a servo (mainly because I had no idea if it was working and needed to get an oscilloscope to figure that part out).

For ARM, I got "definitive guide to ARM CORTEX-M4 " by Joseph Yiu and the microchip SAME54 dev board. I made it about a chapter in and thought I should perfect my skills in AVR first because it seems like without a good base understanding all the ARM syntax could be extremely confusing.

for Embedded Linux, the company I interviewed with used Buildroot, (which I haven't tinkered with at all). I decided to try Linux From Scratch hoping that would help to build a solid foundation before jumping to a tool like Buildroot or Yocto. And getting stuck very quickly in LFS, that prompted this post.


Basically at this point, I have like several 500+ page books from linux command line, to EE, ARM development, AVR datasheets, and Math, and I just need some sort of confirmation that I'm even heading in the right direction (Obviously the math is good to learn for other things).
 

MrChips

Joined Oct 2, 2009
30,806
Welcome to AAC!

Embedded systems is a combination of electronics and computer science.

To begin, I would suggest that you have a keen interest and solid foundation in mathematics and physics.

From here, you need to be well grounded in basic electricity & magnetism, electrical circuits, electronics and computer science.
It is beneficial that you already have some computer and programming experience. If you have acquired this knowledge by tinkering with computers your whole life, it is possible that you might have some gaps in your knowledge base.

You need to make sure that you have the fundamentals of logic, boolean algebra, number systems, and digital logic and design.
You would then add to this a good understanding of computer architecture, ALU and CPU design, bus systems, computer memory and storage devices, hardware interfacing, digital communications.

With all of this knowledge you are finally ready to launch into embedded systems. My recommendation would be to start with a small MCU such as Atmel AVR, Freescale/NXP MC9S08, TI MSP430.

Learn how to program in assembler regardless of what others will tell you.

This is the number one document I will always recommend to anyone starting to learn MCU. This is a 328-page pdf document. Clicking on the link will automatically start the download to your computer.
M68HC05 Understanding Small Microcontrollers
 

Thread Starter

wyattmarshall

Joined Jul 10, 2022
2
Thanks for the info! I had to look up ALU actually lol I'm currently working on the math and physics portion of things and some AVR stuff and I will definitely read that PDF you linked.

Are there any other online resources or groups you would recommend? Unfortunately the area I live in does have much in this department to offer, I checked the local college and they don't even have anything beyond basic computer classes.
 

tindel

Joined Sep 16, 2012
936
To get into this field, you need some sort of degree (Bachelor of Science) in Electrical Engineering, Computer Science, or a related field (physics, mathematics, etc). Masters is preferred. There's simply too much competition within these areas to hire people with lesser skills.

You probably already have the skills to get a technician role with your AA, but you'll be told what to do most of the time, and the work will be mundane to start. The plus side is that many companies will pay for you to earn your BS and/or MS while employing you.
 

MrSalts

Joined Apr 2, 2020
2,767
An AA degree is like some general Ed math, English and history classes snd a 2 semesters of General Ed-level and 2-semesters of intermediate level classes related to your major. You could have that much IT skills with a few months of YouTube viewing and a solid goal.
You don't need a degree in mechatronics but, without a degree, you need a portfolio of projects that demonstrate your skills. Buy an Arduino and a raspberry pi to get started. See what you can do with it. Add some bells and whistles (motors, LEDs, valves, displays, sensors, etc). Make them do something. Record what you've done. Build a website to show how you built useful things for your house, garage, car, handicapped neighbor, etc. then you need to find a hiring manager who is interested in you and your gizmos. Other than that, a four-year degree is in your future.
 

DickCappels

Joined Aug 21, 2008
10,171
I am not even sure exactly where I am going, I just have a basic idea of what I think I need to get started in EE/Embedded. So far I think I need to learn Embedded Linux, AVR and/or ARM.

Whenever I give this advice I feel like a father cautioning his son not to get involved with dope -so, don't get involved with raspberries or Arudinos just yet. Get involved with a micro controller at the assembly language level. Write lots of little programs for them so you get used to the instruction set and how it is able to execute commands, move things around in memory and perform I/O. I think many of us here can say that we started with on microprocessor or one micro controller and capitalized on out gained knowledge to move into other processors/controllers. There are many techniques in common among most controllers -they just change mnemonics and registers involved!

You can build on your understanding of micro controllers to get into compilers (and complier design) and interpreters plus plenty of other sorts of uses. Take heed for MrChips's advice in post #2 to learn about electricity and electronics because in the process of writing for controllers you will also be solving circuit problems.
 

tindel

Joined Sep 16, 2012
936
Wow - post #5 and post #7 sound eerily similar. @DickCappels Thomas Brown might be a bot that took what I said originally (over 6 months ago) and changed a few small words to make it more understandable.
 
Top