I want to learn how to design and develop boards for SoC systems (i.e. i.MX from Freescale). This can be real useful to me because there are countless things I could do with the possibility to design such boards and use them for various applications.

I've searched and tried to begin working on it but personally I don't know where to start right now, I've been looking around a bit and haven't really found anything to start with. I guess I should:

  • start with basic electronic engineering and design books;
  • dig further into it and learn the more complicated stuff;
  • learn how to design a board with an SoC or even an ARM CPU itself without the other things;
  • learn ASM to write a bootloader / utility to the Flash.

I do have enough time and when I'm interested in a subject i learn really fast and well. So please don't tell me I'm trying too hard.

Problem is, I have no idea where to start.

P.S. I'm going to start an undergraduate in Chemistry next year, I wasn't sure if I should take Chemistry or Electrical Engineering. Because I thought most of Electrical Engineering can be self-taught I went with Chemistry. Somebody told me to take classes in EE but this is practically the reason why I rather not do that.

  • 5
    \$\begingroup\$ So EE can be self taught and chemistry can't? \$\endgroup\$ – Matt Young Jun 14 '14 at 1:52
  • 4
    \$\begingroup\$ @MattYoung :o All that money into my degree must have been a waste. I should have just stayed at home and read some books. \$\endgroup\$ – horta Jun 14 '14 at 2:11
  • 1
    \$\begingroup\$ @horta Sounds like we both screwed up there... \$\endgroup\$ – Matt Young Jun 14 '14 at 2:12
  • 1
    \$\begingroup\$ -1 for typical teenager attitude; would have given -100 if allowed to. This kid will look back on this in 10 years and feel deeply ashamed merely for having this opinion, never mind publishing it for the world to see. \$\endgroup\$ – swineone Jun 14 '14 at 4:56
  • \$\begingroup\$ @MattYoung and horta I didn't mean to say that an EE study is a waste, i've wrestled with making the decision myself. I decided that i want to do Chemistry and Medicine later because it is what interests and pleases me more. I can suffice what i want to learn in EE myself, i just didn't expect designing a board around a SoC would be that hard, designing a SoC itself would be yet an impossible task for somebody who never took a study in EE. \$\endgroup\$ – ShiftyF97 Jun 14 '14 at 8:30

You can learn some stuff on your own, but I'd be amazed if you became a competent EE without ever taking an EE class.

Some places to start would be a basics circuits book. If you're interested in programming up an SoC, you'll need to understand some code, so you could buy a coding book and start from there or try out the numerous "coding schools" online. Once you have some of the basics down in both of those places, you could get yourself a reasonable development board and start making LED's blink. You could also start in somewhat the reverse direction and start with a development board and go through the tutorials. You'll quickly find that you'll need to have a basic understanding of code and circuits tho if you want to do anything interesting.

  • \$\begingroup\$ Thanks, i will. i was adviced to take EE&CS online courses from MIT to learn a part of EE and to read and work out The Art of Electronics first and then Digital Fundamentals by Floyd after. then get an SoC i want to develop with and an FPGA or Logic probe to test with. \$\endgroup\$ – ShiftyF97 Jun 14 '14 at 8:47

For a full-scale SoC like a Freescale i.mx6 or TI Sitara is far beyond what a beginner should take on. These are devices that take several months of full-time effort from experienced engineers. This is before porting Linux or some other operating system to the board.

Builing the board itself will require a contract manufacturing house - the boards a too complex for hobby board makers (e.g. elecrow), and you cannot reliably solder them by hand unless you really know what you are doing.

If you want to get started with a full-on SoC, there are some well-known low-cost boards that you can get started with writing software for. The include:

So, what can you design? Just because the full-scale SoCs are out of reach, there are plenty of small ARM Cortex-M microcontrollers that are wll in the reach of a beginner, not to mention the ever-present Atmel AVR Series (think Aduino) or their arch-rival, Microchip PIC.

I would suggest AVR Freaks as a really good resource to start from nothing (including a free c compiler!), but there are many others with similar support communities.

See also:

  • \$\begingroup\$ Thanks for the tip on development boards, i always thought they were some board with support for multiple OSes with a poor chip, not so smart to think that and not to read the facts. I'm going to try to pick up the latter you said, thanks! \$\endgroup\$ – ShiftyF97 Jun 14 '14 at 8:51

Not the answer you're looking for? Browse other questions tagged or ask your own question.