Where to start?October 16, 2013
I got a message from someone who read my book. He said he enjoyed it (yay!) but was disappointed it was mostly theoretical (boo!), and didn’t recommend a specific chip and give some tutorials on how to start using it. He asked if a $500 class would be a good way to get started. His background is software (I’d suggest different things for a hardware engineer but that’s a different post).
This seemed like a neat question so I answered and I figured I’d tell you my answer too, with a few only a few mods:
The chips change so fast that a book would be out of date before it was published. The class might be a good way to get started though, really, I’d say spend $50 on an Arduino board and build yourself a fancy Christmas light (or, if you’ve got time now, a Halloween scar-ifier of some ilk).
Arduinos have Atmel chips, usually the Atmega, a line of chips that is used in many shipping products. The community is huge so you won’t be learning alone. And the accessories for ti are amazing. You can start out in their C++ environment but strip it down to a microprocessor system and your own drivers if/when you are ready.
Another good source of software-to-embedded boards are the ones from mbed.org. They cost a little more but do some of the underlying drivers for you (and don’t make you fuss with cross compilers). They have more processing power (a lot more) so you’d get to see the ARM Cortex-M0 and Cortex-M3 which are the hot processors in the 32-bit space.
Maybe look at Electric Imp. They’ve got a neat system that lets you hook wifi and cloud services to lots of things. They do some embedded and it isn’t necessarily something you could build a career on but to stick your toe in, well, hooking your oven to the internet has never been easier.
Finally, lots of people love Raspberry Pi (and Beagle Bone Black). I see those more as Linux computers with a few limitations than proper embedded platforms. But maybe that is a good way to transition.
Circuit Cellar Ink is a good magazine. So is MAKE. They both will let you see what processors people are talking about and using in hobby stuff. Or look on the adafruit.com, makershed.com or sparkfun.com tutorials pages.
For more professional development (less hobby fun), contact TI, ST, Atmel or NXP and ask when they’ll have training in your area. Many times the training is free (and they give out dev kits!)… essentially you are letting them brainwash you to use their parts. But they all have good processors so no harm done. The embedded systems conference (DesignWest) isn’t until March 2014 but that is a good place to see all the vendors in one place (San Jose, CA).
Does that give you enough places to start?
I have a podcast (http://embedded.fm/), some of the shows cover how to get started with one thing or another though, again, those are starting points, not in-depth discussions.
Let me know how you get on.
And if you, dear reader of my blog, use any of this advice or want to suggest other things, please let me know.