You may redistribute this newsletter for non-commercial purposes. For commercial use contact firstname.lastname@example.org.
Did you know it IS possible to create accurate schedules? Or that most projects consume 50% of the development time in debug and test, and that it's not hard to slash that number drastically? Or that we know how to manage the quantitative relationship between complexity and bugs? Learn this and far more at my Better Firmware Faster class, presented at your facility. See https://www.ganssle.com/onsite.htm for more details.
|Quotes and Thoughts
"I have a foreboding of an America in my children's or grandchildren's time -- when the United States is a service and information economy; when nearly all the key manufacturing industries have slipped away to other countries; when awesome technological powers are in the hands of a very few, and no one representing the public interest can even grasp the issues; when the people have lost the ability to set their own agendas or knowledgeably question those in authority; when, clutching our crystals and nervously consulting our horoscopes, our critical faculties decline, unable to distinguish between what feels good and what's true, we slide, almost without noticing, back into superstition and darkness. The dumb down of America is most evident in the slow decay of substantive content in the enormously influential media, the 30-second sound bites (now down to 10 seconds or less), lowest common denominator programming, credulous presentations on pseudoscience and superstition, but especially a kind of celebration of ignorance.'' Carl Sagan, "The Demon-Haunted World: Science as a Candle in the Dark", 1995
|Tools and Tips
Please submit clever ideas or thoughts about tools, techniques and resources you love or hate. Here are the tool reviews submitted in the past.
Micheal Salem and others report that the DMMCheck (a calibration standard for DMMs), which I mentioned in the last issue, is no longer available. VoltageStandard has other offerings, though it appears none so versatile as the DMMCheck.
Are you a Mac user? I use a Mac laptop while traveling, and a Windows machine in the office. In my opinion, the Mac's Finder program (file manager) is lousy. Some years ago I started using Pathfinder instead. This decent utility costs $40. Lately I've tried Commander One. The free version is a dual-pane file manager, which is quite handy. It includes .zip compression/extraction, regex searches, and a host of other features. The Pro version ($30) adds an FTP client, access to cloud services like Amazon S3 and Dropbox, the ability to mount iOS devices, and more.
Considering the recent Equifax debacle, Paul Carpenter's timely notes about the new EU General Data Protection Regulations which come into effect in May, 2018 are a worthwhile read. It's unclear to me if non-EU companies selling into that market will be liable under the new law.
But security will be hopeless until executives are held accountable. There simply isn't incentive for them today to take the difficult and expensive actions needed to lock down our data. But in the USA it's hard to penetrate the corporate shield, so don't hold your breath. Bruce Schneier has a good take on Equifax's appalling inattention to securing our data.
|Freebies and Discounts
Cmicrotek is again offering a free uCP20 current monitor to a lucky Muse reader. This device is used to monitor current consumption of very low-powered microprocessor-based devices.
Enter via this link.
|Book Review - Embedded Systems Fundamentals
In June I had business in Rayleigh, NC. Having just received a copy of Embedded Systems Fundamentals with ARM Cortex-M based Microcontrollers, and noting that the author teaches at NCSU, I decided to drop in and say hello. Alex Dean is a cool guy doing some fun things with his students. Back in the Paleozoic Era, when I was an EE student, we weren't even allowed to solder for fear someone might burn themselves (how else does one learn which end of a soldering iron to pick up?). Alex's students do a lot of hands-on embedded work.
Alex's book is a gem. It's in full color; nearly every page has color, including colored code as you'd see in an IDE. It advertises itself as a textbook, but this is not like any dreary old equation-laden textbook I know. It's an intro to the world of embedded systems, both hardware and software. Based around NXP's (née Freescale) FRDM-KL25Z development board ($15 from Digi-Key), this Cortex-M0+ board is a great starter kit. He uses the Keil uVision toolchain, which is free for programs that don't exceed 32 KB. One of the reasons I like this board is that the mbed group supports it, which means one can skip the whole IDE thing. But in the real world we use IDEs, so Alex made the right choice in using uVision.
The book starts with using switches to control LEDs, an old topic. But it shows how one calculates the LED resistor, explains what legal logic levels are and what they mean (including staying away from the no-man's land in between a one and a zero), and then covers the hassle of setting up the M0+'s GPIO registers.
I'm not too keen on his use of the word "task" in Chapter 3, as he defines that to be "a subroutine that performs a specific activity". To me, "task" has a very specific meaning in terms of multitasking, but this is a minor nit. He does refine tasking by taking these subroutines and then tying them together, first by a simple polling loop, then cooperative multitasking, and then using interrupts to invoke them. Finite state machines are well-covered; a nod to RTOSes completes this chapter.
The M0+'s architecture is well-described, with special emphasis on the interrupt system. Assembly language gets its due, and the book shows the sort of assembly generated by typical C statements. Some argue that assembly is so-five-minutes-ago. I disagree, and think that an understanding of what is going on at the low level is important in much embedded work.
Analog interfacing (including hardware details), PWM, WDTs and even DMA are covered. Several types of serial comm get detailed treatment.
One thing that makes this a strong work is that the practical details are treated in a way that is analogous to how we work. For instance, the I2C section shows packet formats and the open drain configuration used. The code is given and is well described. There are no proofs left to the student.
Seasoned developers know all this stuff, as the book is targeted to engineering students. However, if you're not familiar with the Cortex-M architecture, this is a good intro.
Anyone wanting to learn about embedded development will be well-served by the book.
Responding to last issues discussion about a poor filesystem on a camera's SD card, Charles Manning wrote:
Doug Gibbs had a comment about filesystem corruption in SD cards:
Thor Johnson gave some advice about using SD cards in photography:
And Steve Paik found an "easy" (given two years of spare time) way to extract pictures from a damaged SD card.
|This Week's Cool Product
GW Instek (sold in the USA by Saelig) has a new line of oscilloscopes, called the MDO-2000E. Nothing remarkable there, except that these include a real spectrum analyzer (SA).
The price got my attention. Depending on bandwidth and number of channels they range from about $900 (two channel 70 MHz scope/500 MHz SA) to $1900 (four channel 200 MHz scope, 500 MHz SA). Now, Tektronix has a similar line of products which I reviewed in 2011. Tek's offerings have better specs than the new instruments from GW Instek, but you'll have to pony up a lot more greenbacks.
All digital scopes today have an FFT function to translate the scope display to that of an SA. (An SA plots amplitude vs frequency, rather than voltage vs time as on a scope). But the FFT is a very poor substitute.
An SA's front end is much like that of a superhet radio. An oscillator sweeps between two frequencies (set by the user) and heterodynes the input against the swept oscillator. The output of the heterodyning is filtered; you set a desired resolution bandwidth (RBW), which is just the width of a filter. With a narrow RBW only a small part of the signal is amplified so the broadband noise is rejected. Great sensitivity and signal resolution can be obtained.
The new MDO-2000E series may or may not work this way. The datasheet has a lot of words about the internals, but I find the description baffling. RBW is controllable so it's likely the units do heterodyne the input signal.
A scope just isn't very sensitive. Once you get down to a few mV noise overwhelms the signal. An SA, though, is designed to handle very low level signals. My Advantest has a DANL (displayed average noise level) of -132 dBm, which is about a tenth of a femtowatt. DANL is roughly the sensitivity of the SA. (To convert dBm to Watts: W=10(dBm-30)/10.)
But that's an expensive instrument. The new MDO-2000E devices have a claimed DANL of -90 dBm, or about a picowatt.
I've never seen a scope whose FFT function lets you set the RBW (or another filter, called the video bandwidth). That's a huge downside for serious RF work. (Note: I see nothing in the MDO-2000E's datasheet about controlling video bandwidth; it may or may not be user-controllable).
Here's an example. The input to my SA is just a two-foot long piece of wire acting as an antenna. The marker (the red dot) is at 100.7 MHz, the carrier of a local FM radio station. In the red box (it's hard to see) the marker's amplitude is displayed: -67 dBm (a fraction of a nanowatt). The display covers 90 to 110 MHz.
In this example I've narrowed the swept range to 1 MHz and centered the sweep on 100.7 MHz. The RBW is 3 KHz so a lot of detail is available.
(Alas, my SA is rather long in the tooth so I had to take photos rather than obtain nice screen shots).
The new MDO-2000E series SAs have a 500 MHz bandwidth, so won't be useful for most wireless protocols. However, at these prices a ham radio operator could be quite tempted!
Spectrum Analyzers are a lot of fun. When cell phones first came out we were working with a very-expensive government-supplied Tektronix SA, which had a built-in demodulator. We'd tune to the mobile bands and demod a signal when it popped up. Without exception, all of conversations started out along the lines of "Hey - I'm calling from my car!"
Note: This section is about something I personally find cool, interesting or important and want to pass along to readers. It is not influenced by vendors.
Let me know if you’re hiring embedded engineers. No recruiters please, and I reserve the right to edit ads to fit the format and intent of this newsletter. Please keep it to 100 words. There is no charge for a job ad.
|Joke For The Week
Note: These jokes are archived at www.ganssle.com/jokes.htm.
You might be an engineer if:
|Advertise With Us
Advertise in The Embedded Muse! Over 27,000 embedded developers get this twice-monthly publication. .
|About The Embedded Muse
The Embedded Muse is Jack Ganssle's newsletter. Send complaints, comments, and contributions to me at email@example.com.
The Embedded Muse is supported by The Ganssle Group, whose mission is to help embedded folks get better products to market faster.