FloTHERM is powerful 3D computational fluid dynamics (CFD) software that predicts airflow and heat transfer in and around electronic equipment, from components and boards up to complete systems. Learn More →

Nowadays, all computer users just take USB for granted. Plug a device in and it just works. Those of us who remember the Bad Old Days – i.e. before USB – probably appreciate it rather more, as we can remember the challenges involved in adding the simplest of peripherals to a PC. Another angle on USB is the embedded software perspective, where the underlying complexity is laid bare. To me, that is more interesting.

Do you know the story “The Emperor’s New Clothes”? The Emperor is very vain and could not resist when a dishonest salesman offers him some unique clothing. It is unique because it is made from fabric that can only be seen by very wise people; to others, it is invisible. The Emperor cannot see it, but does not want admit to any lack of wisdom. Of course, all his staff take the same view and soon the news of the Emperor’s new clothes spreads across the land. The Emperor is wearing his new clothes at every opportunity – i.e. he is wandering around naked. Nobody says anything until, one day, a young boy, exhibiting the clear honesty that comes with youth, in a crowd calls out “Why is the Emperor naked?” The moral of the story is clear enough: be true to yourself and do not just accept other people’s ideas and opinions.

Most of the software that most of us use most of the time is obtained as a binary executable. The program may be run and does what it does, but the user has no knowledge of its inner workings and no opportunity to modify its functionality. And all of this is fine. For example, I am writing this posting on my PC using a Windows program. Later, I will probably review it on my iPad using the corresponding app. The two programs are probably written in different languages by different teams. Do I care? Nope. The important thing to me is the data [my text] and what the software does with it.

I enjoy talking – standing up in front of an audience and making a presentation. I am very lucky in having a job that affords me many opportunities to do just this. I am told that I am good at it. There is often a connection between what people enjoy and what they are good at, in my experience. I still feel that I have more to learn in order to get better.

In fact, I have two other, somewhat connected activities that particularly bring me enjoyment: reading and learning stuff … Read the rest of this entry »

Software is an interesting kind of product. The most complex artifacts that humankind has ever made are items of software. Mechanical machines do not even come close. The most complex machine ever made, with about a million moving parts, was the Space Shuttle orbiter. The “moving parts” of software are bits of data; a program that includes a billion bits is not uncommon.

This complexity means that software development is eye-wateringly expensive. On the other hand, compared with other manufactured goods, the manufacturing, warehousing and distribution of software [and other electronic IP] is very cheap – maybe even free. This leads to some interesting results in the marketplace … Read the rest of this entry »

If you read this blog with any frequency, you will know that, like many of my colleagues, I travel quite a lot on business. And that travel mostly involves flying, which is a tedious, tiring and stressful activity. We all accept the way that it is mostly because we have no alternative. Some airlines try to be innovative, but it is a very competitive business and being “different” can be risky and expensive. But I really feel that some rethinking is necessary … Read the rest of this entry »

I have finally caught up and this is the last aggregation of recent articles. From now on, all being well, I’ll post to alert readers of new material being available. This time the articles cover measuring RTOS performance, the use of open source tools, memory use optimization and approaches to debugging … Read the rest of this entry »

Some time ago, I wrote about my participation in the Eggheads TV quiz show [here and here]. We recorded the program about a year ago and the broadcast was in November. My team was very successful. We did not win the money. There was £6000 on the table and it was still there when we left; it was £7000 for the next team to play and somebody told me that they did go home richer.

But I said that my team was successful? That was because our objective was to have a good time and we definitely did that. Interestingly, when we finished our recording, we saw the next team heading for the studio. One was in tears and another was shouting. The producer commented that some teams take it rather seriously. I am glad that we did not. And the fun continues … Read the rest of this entry »

Each Fall, just before the weather becomes too horrible, I get to attend ECS [Embedded Conference Scandinavia] in Stockholm, Sweden. It has become a good event for embedded developers in that area and I am pleased that my paper submissions seem to result in a couple of acceptances each year.

On a previous occasion, I suggested that it was time for change. I feel strongly that our calendar – 7 day weeks, which do not fit properly into months of apparently random length or into the 365/366 day year – does not really work well in the 21st century and we could do better.

In the United States, this is National Engineers Week. This annual event is aimed at raising awareness of science, technology, engineering and mathematics [STEM] and the great contribution that workers in this area contribute to society. As a strong supporter and enthusiast for STEM subjects, even though I am not located in the US, I am very keen to participate in the activities this week.

Continuing my theme of looking at six favorite things in various categories, this time it is a topic very close to my heart: food. I am lucky as I do not have a tendency to over-eat, but I do like a wide variety of food. In fact there are very few things that I just will not eat. Some stuff I might only eat if it is given to me; I would not specifically choose it. Annoyingly, in recent years I have developed a mild intolerance to oily fish – I get a slight sore throat after eating it – which is a shame, as I do enjoy the odd pilchard or trout. I tend to avoid these foods, as I fear that my reaction might become more severe.

The largest event in the world of embedded systems takes place in Nuremberg, Germany on Tuesday-Thursday next week. Embedded World is an annual trade show with a highly-regarded technical conference. This is an annual pilgrimage for me, as I generally have papers in the conference. This year is no exception … Read the rest of this entry »

In the UK, it is well known that an early sign of being old is making the observation “don’t the policemen look young”. As I am an advocate of the “60 is the new 40″ concept [even though I have a couple of years to go], I like to think of myself as being up to date on most things. However, there are some areas of life that challenge me. Clothes fashion is one [that has always been the case – nothing to do with age!]; social networking is another … Read the rest of this entry »

Although I doubt that many engineers habitually view things this way, marketing folks like to divide the world into sectors. So, embedded systems might be in telecoms, medical, automotive, consumer, mil-aero, or industrial. There are probably others that I have not thought of. Each sector has its own characteristics and may or may not sound interesting to be involved in. Automotive is quite high profile just now, as the amount of electronics being packed into cars is increasing daily. Medical is important to us all and is also growing fast. Mobile telephony is a kind of merger between telecoms and consumer and has a certain appeal for many engineers.

As I have written about before, I have always been interested in numbers and mathematics. Although my formal studies of the subject have not gone beyond the courses that I needed to attend for a science degree, my fascination with the beauty of mathematics and numbers has been life long. I have found, on a number of occasions, that I encounter a simple idea or set of rules, then find that, years later, it is still easy to bring to mind. This is a contrast to my memory for many everyday things – names, phone numbers, dates … – where is am very forgetful.

My friend and colleague Richard Vlamynck has proposed another guest posting and I am more than happy to accommodate him. Apart from helping me and doing the rest of his day job, Richard puts in time, as I do, trying to assist people on various social networking sites. This can certainly be challenging, as, while many posts are genuine pleas for help from engineers who need to tap someone else’s experience in a specific area, others seem to be from people who expect all their work to be done for them.

When I was in my early teens, I was an avid science fiction reader – I still dabble in the genre today. My two favorite authors were Robert Heinlein and Isaac Asimov. Asimov was an incredibly prolific author, publishing well over 300 books in his lifetime on a variety of subjects. He actually wrote more science fact books than science fiction. His writing style and very clear way of explaining complex ideas was a fine example.

I have almost completed the job of cataloging my articles that have been published at embedded.com Here are another four, which address some key development topics: the sharing of code between multiple threads of execution; accessing low level device registers in C; selecting an operating system; making use of non-volatile memory … Read the rest of this entry »

Like most people nowadays, I use a computer for lots of purposes. Using a computer is all about using software. If a particular program does the job for you, to a large extent it does not matter what kind of computer you have, so long as it supports the chosen software. Along with the operating system, which, in my case, is Windows, there are a number of “standard issue” business programs that most people use – Word, Excel, PowerPoint, Outlook etc. – and we may or may not have an opinion about these, but they are a given.

I am not a great fan of video, as a medium. If I want to learn something, I am more likely to turn to the printed word. It is only when something is intrinsically visual that I turn to YouTube. Like the time I unexpectedly needed to gut some fish – there I was, working in the sink with two slippery fish and a sharp knife, with my wife holding an iPad showing a video of a rugged looking man doing the job more proficiently than I aspired to.

I am sure that you, like me, make extensive use of the Web [otherwise you probably would not be reading this – doh!]. I access numerous websites on a given day, but there are, of course, a handful that I utilize all the time – maybe multiple times a day. As I have been using the Web for just about 20 years now, I have observed some interesting changes in what is available, how it is used and what I access myself … Read the rest of this entry »

I always welcome contributions – guest blog posts – from my colleagues and associates. After all, that reduces the amount of work that I need to do – how could I refuse? But seriously, I think that a different “voice” from time to time is refreshing. My colleague Richard Vlamynck has appeared here before. He has an interesting perspective, sitting right on the cusp of hardware and software – definitely an embedded “Renaissance” man. Today Richard is musing on what actually constitutes a microcontroller … Read the rest of this entry »

My Christmas present to my wife was a long weekend away in a luxury hotel. I had got what seemed to be a good package of the hotel and flights, and the travel company threw in a rental car too. I decided to keep the destination a secret, as my wife quite likes surprises. I told her enough about the climate etc. so that she could pack sensibly. We took the trip a few weeks before Christmas – I thought that it would enable us to brace ourselves for the holiday season. The destination remained a mystery up to and including the point that we were sitting in the departures lounge watching the list of flights for a gate announcement. I had even had to remind Libby not to look at her boarding pass as she waved it about on the entry to security. Finally, the destination was revealed: Jersey … Read the rest of this entry »

Although I regard the New Year as a time to look forward, I am continuing my catch-up process of cataloging embedded software articles that I have had published on embedded.com in the recent past. This time they cover medical systems, C function parameters, the basics of multitasking and the Forth language… Read the rest of this entry »

Meet Colin Walls

I have over twenty-five years experience in the electronics industry, largely dedicated to embedded software. When not working, I enjoy photography, books and music. Learn more about me, including my go-to karaoke song and the best parts of being British.