Death to Daylight Saving Time

It’s that time of year again – time to walk from room to room and change all our clocks. For some of us, this nonsensical ritual involves staring blankly at the coffee maker while we try to remember how to set its time. On the way to work some of us will try to remember how to […]

Read More

Help Bring the Embedded Software Boot Camp to Your City

When Netrino announced the first public offering of the Embedded Software Boot Camp a year and a half ago, I had no idea how popular it would be. Or just how much I could love teaching the intensive hands-on week-long version of the training we had developed over many years. At this point, we have educated hundreds of engineers […]

Read More

Gallery of Icons

I came across this link recently:http://www.guidebookgallery.org/iconsIt has a set of icons from a number of different operating systems, and from different versions of those operating systems going back years. Many of these symbols will not apply in an embedded system, but others are more global – like ‘help’. It is a handy place to browse […]

Read More

Embedded systems boot times

Last week saw the release of Windows 7. Looking over the new features, the one that struck me the most was the effort that Microsoft had put into decreasing the boot time of the OS. If the reports are to be believed, then Windows 7 boots dramatically faster than its predecessors – to which I […]

Read More

Form Over Function and Battling with DVD Menus

At the Embedded Systems Conference in Farnborough two weeks ago, I delivered my ‘Top Ten Usability Mistakes’ talk. The last item in the list of ten is the awful lack of respect shown for the user’s time in the experience of watching a DVD. They usually force you to watch some legal-eagle’s copyright notice, and […]

Read More

Whither white space?

I was looking over some code I wrote a year ago in preparation for making some minor enhancements, when I noticed that in one place I had two blank lines between functions, instead of my coding standard mandated one line. I immediately and instinctively corrected it – as is my norm. However having done so, […]

Read More

Embedded Systems Conference Show Report

I spent three days at the Embedded Systems Conference UK in Farnborough last week. At these shows I sometimes hunt for the answer to a specific question and other times I am keeping an eye out for trends. One topic that got a mention at the “Current State of MicroElectronics” panel discussion was the increasing […]

Read More

Effective C Tip #7 – Use strongly typed function parameters

This is the seventh in a series of tips on writing effective C. Today’s topic concerns function parameters, and more to the point, how you should choose them in order to make your code considerably more resilient to parameter passing errors.  What do I mean by parameter passing errors? Well consider a function that is intended to […]

Read More

Logs and the Logging Loggers who Log Them

There is some excellent concise advice about creating a logging framework for embedded software in the recent MD&DI article “Software Design for Test“. Portions of the advice are so good, they bear restatement in the context of our ongoing discussion about reliable firmware architecture: 1. Verbosity The API for your logger module should allow for the selection of a […]

Read More

Is MISRA compliance worthwhile?

I had been planning on talking about MISRA C compliance in a month or two from now. However, in the comments section of my recent post about bitfields, Anand posed the following question: However I am writing to ask your opinion about MISRA C compliance. This is the first time a client company has asked us […]

Read More