For novel ideas about building embedded systems (both hardware and firmware), join the 35,000 engineers who subscribe to The Embedded Muse, a free biweekly newsletter. The Muse has no hype and no vendor PR. Click here to subscribe.
I'll present my Better Firmware Faster seminar in Melbourne and Perth, Australia February 20 and 26th. All are invited. More info here. The early registration discount ends January 20.
By Jack Ganssle
8 Bits Forever!
A very long time ago I obtained my ham radio license. A teenager fascinated with electronics, I delighted in learning about RF, and in building all of the goodies required in a decent ham shack.
Receivers were pretty complex. I did manage to assemble a couple of Heathkit units but mostly relied on a World War II-surplus "RBC" radio. But Morse code transmitters were pretty simple - a couple of tubes, a delightful 1000 volt power supply that substituted for my testosterone craving for automotive horsepower, and a huge antenna strung in back of the house.
Ham radio was the field of tractable electronics in the 60s. It was reasonable to build your own gear. Many of us had little interest in actually communicating with anyone; instead we'd build one radio and almost immediately start planning the next.
Single sideband and FM changed the nature of the hobby. These communications modes were efficient and desirable, but so complex they killed off homebrew equipment. I still have a license, but have a purchased transceiver that remains mostly idle. A cell phone is more convenient. and my passion for making radios was killed by the extreme complexity of modern electronics widgets. Who has the time?
But small computers arrived just about the time that amateur radio went through its maturation phase. Suddenly we could build our own machines! Though they were far more intricate than the vacuum tube radios of yore, by buying stuff-it-yourself PCBs it was possible to create a really nice Z80-based computer for a reasonable price.
The embedded systems industry exploded at the same time. Those of us lucky enough to be working then both designed the hardware and cranked the code. Even better, as working engineers, we had draftsmen and technicians to do the boring stuff. It was a period of sheer creative joy.
Rather like working in our basement labs we'd solo projects from inception to shipping. None of this pain-in-the butt team stuff! Nah, a couple of pages of schematics and five or ten thousand lines of assembly language lovingly squeezed into 4K of ROM. No project lasted more than 6 months so we were always off on another quest, another adventure in creativity.
Now 32 bit CPUs are often used to get the huge address spaces needed to accommodate a million lines of code. The hardware group, further divided into ASIC, Packaging, Digital and System engineers, never speaks to those creating the firmware. Twenty or more software folks work (more or less) together to build the code over the course of years.
I know the embedded world has finally grown up. We're routinely building products that would have defied imagination 20 years ago. Who would of thought a cell phone could do so much for so little in so diminutive a package? Thank engineers of all stripes for this cool invention. 32 bit processors offer the performance needed for today's complex apps. Granted.
But for the sheer fun of engineering it's hard to beat working with a small processor, say a PIC or a Rabbit or a 68HC11, on a project that has human scale. Something one or two people can build in months rather than years. When it's done you can point to it and proudly say "it's mine!"
What about you? Did you become an engineer for the joy of creation? And. are you having fun?