The Colin Walls Blog

This blog is a discussion of embedded software matters - news, comment, technical issues and ideas, along with other passing thoughts about anything that happens to be on my mind.

24 July, 2017

An increasingly important factor in embedded software development is power management. Historically, this was a solely hardware issue; that has all changed in recent years. Once the software has the ability to take control of factors that affect the system’s power consumption, it is logical that it should exercise that control in an efficient way.

Much is said about the implementation of power management software, but less is said about its design … Read the rest of this entry »

, , , , ,

17 July, 2017

I was recently approached by a software developer, who was new to embedded programming. As is commonly the case, we had a language problem. It was not that his English was deficient – he just did not speak “embedded”. He asked a question: How do I log on to my target hardware to do debugging?

On the surface, this is a reasonable question. Having ascertained that he was not using Linux – he was using a conventional RTOS – I felt that I needed to explain his options for debugging on an embedded system … Read the rest of this entry »

, , , , ,

13 July, 2017

Like all modern consumers, I have a love/hate relationship with many suppliers, which can be largely driven by their products or their customer service [or, sometimes, both]. Mostly, I am aware from being on the “other side”, customers happiness is largely driven by managing their expectations, then delivering on them.

In recent days, I have had slightly irritating experiences with two very different companies, both of whom had the opportunity to have a totally satisfied customer, but failed to take it … Read the rest of this entry »


10 July, 2017

My latest video blog is now available. For a change, instead of a technical discussion, I am talking about getting into embedded software and how my career got started. You can see the video here or here:

Future video blogs will continue to look at topics of interest to embedded software developers. Suggestions for topics are always welcome via comment, email or social networking.


6 July, 2017

I have an enduring interest in the English language. I am constantly fascinated by the immense power of this communications tool. I am not a subscriber to the view that English should be carefully preserved; I feel strongly that one of its great virtues is the ability to evolve to meet the needs of the time. A language is a living thing and must be allowed its freedom.

Sometimes, however, things go a little awry or get confusing … Read the rest of this entry »


3 July, 2017

My latest article on embedded.com has been published. This piece is the ninth installment of the RTOS Revealed series, which will continue to appear through 2017 and beyond. The series will cover every aspect of real time operating systems.

The scheduler – implementation

In this article, I start looking at some of the details of how an RTOS scheduler is implemented … Read the rest of this entry »

, , , ,

29 June, 2017

Last week, we were on vacation. We went to a place in the North of mainland Greece. Although we have been to the island of Kefalonia a few times, which we enjoy, we had never been to the mainland. A friend recommended a particular area and we thought that we would give it a try. Last year, we used a Greece-based travel company and I was very impressed by their local knowledge, attention to detail and overall customer service. As they offered an appropriate package, I booked with them.

Although I would definitely say that we had a good vacation, I did learn an interesting lesson … Read the rest of this entry »


26 June, 2017

All C/C++ functions have a single point of entry and it is widely thought that a single point of exit is logical. Indeed, a number of programming standards [MISRA C for example] insist on this approach. The logic is that a single return statement makes for clearer, easier to read code. Additionally, a single exit point means that there is less chance of failing to execute function exit code, which may deallocate resources etc. Such an error leads to memory leaks and the like. The contrary argument is that an early return might avoid the need for some convoluted logic to direct the execution flow to the end of the function – a nest of if … else constructs can be hard to read.

I have been pondering an alternative approach that might deliver the best of both worlds … Read the rest of this entry »

, , ,

15 June, 2017

I am not an aviation geek, but, as I travel on planes quite a lot [and I am an engineer], I do take an interest in the features and operation of aircraft. As I have a daughter who works for an airline, my wife often rolls her eyes when listening to our aviation-oriented conversations. [She also takes exception with the first few words of this post – she was reading over my shoulder. 🙂 ]

Last week I had a new experience: I got to ride on an Airbus A380 … Read the rest of this entry »


12 June, 2017

Some months ago, I received an email asking me whether I would be willing and able to conduct a 3-day embedded software masterclass in Bangalore, India. An events management company was planning such an event and had located me via the magic of social media. I was, of course, flattered to be asked, but also both daunted and intrigued by the prospect of doing it … Read the rest of this entry »


8 June, 2017

There is a well-know cartoonist, who is very intelligent, observant and outspoken. On many occasions, I have seen his writing, in which he talks about financial matters. He generally wraps up with a warning about the foolishness of taking financial advice from a cartoonist. I might suggest similar caution when listening to an embedded software engineer … Read the rest of this entry »


5 June, 2017

My latest video blog is now available. I am talking about multicore systems and the various software architectures that are available. You can see the video here or here:

Future video blogs will continue to look at topics of interest to embedded software developers. Suggestions for topics are always welcome via comment, email or social networking.

, , , ,

25 May, 2017

As in all walks of life, the high-tech world has its icons – key people who have been pivotal in getting us where we are today. It is easy to list some of the big names: Tim Berners-Lee, Bill Gates, Mark Zuckerberg, Steve Jobs … the list goes on. Then there is Marc Andreessen. Who? I hear you ask – as I did myself when I stumbled across an interview with him. It would appear that, without Mr. A, the world might be different from the way it is … Read the rest of this entry »

,

22 May, 2017

I recently came across an excellent book: The Art of Readable Code by Dustin Boswell and Trevor Foucher. As soon as I heard about the book, I knew that it would interest me and ordered a copy without delay. For years, I have pushed the message that the #1 priority, when writing code, is readability; the authors and I are on the same wavelength. I am likely to be referring to this book again in this blog, as, on initial reading, although many things are already clear and familiar to me, I still have more to learn and to share … Read the rest of this entry »

, , ,

15 May, 2017

My latest video blog is now available. I am talking about the C keyword static and its different, rather confusing, meanings. You can see the video here or here:

Future video blogs will continue to look at topics of interest to embedded software developers. Suggestions for topics are always welcome via comment, email or social networking.

, , ,

11 May, 2017

I work from my home office – when I am not on an airplane going someplace – and the house is often empty. So I spend quite a lot of time alone. As I am an introvert by nature, that is mostly OK. I usually try to leave the house at some point, in order to interact with other members the Human race, and we have an active, evening social life, so the solitude is just part of the picture.

A side-effect of being alone is that I talk to myself … Read the rest of this entry »


8 May, 2017

My latest article on embedded.com has been published. This piece is the seventh installment of the RTOS Revealed series, which will continue to appear through 2017 and beyond. The series will cover every aspect of real time operating systems.

Nucleus SE – an introduction

In this article, I take an initial look at Nucleus SE which will be used as the example RTOS for the rest of the series … Read the rest of this entry »

, , , ,

4 May, 2017

A while ago, my wife told me about a concept – a way of looking at the world – that she had come across. The concept provides a useful tool for evaluating decisions in many aspects of life. Over the last few weeks we have been using it to rationalize various aspects of our lives. The more that I consider and internalize the idea, the more applications I find for it … Read the rest of this entry »


1 May, 2017

This week I will be at the Embedded Systems Conference in Boston. Each year, there are a number of ESC events around the US – some are more permanent and successful than others. ESC Boston has been revived in recent years and I have been fortunate enough to have some papers accepted and have the opportunity to visit one of my favorite American cities. This year is no exception … Read the rest of this entry »

, ,

27 April, 2017

Sometimes I niggle about the small things of life. At other times, I think big thoughts and ponder the meaning of Life, the Universe and Everything. On yet other occasions, I find myself thinking about nothing in particular and a sudden thought, insight or understanding comes out of nowhere. Just such an event occurred this week … Read the rest of this entry »


20 April, 2017

Notwithstanding all the politics, dogma and downright ignorance, it is clear to me that mankind’s attitude to energy production and consumption needs to change and to change fast. It hardly matters whether we directly caused climate change. This change is happening and it is only sensible to minimize any contribution we make to alterations in the climate… Read the rest of this entry »


13 April, 2017

I think that living with a chiming clock is beginning to have an effect on my brain. I have been giving [even] more thought to how a clock’s chime might be more usefully designed. I wrote before about a scheme that would make the chime a little easier to internalize/remember. I now think that I have an approach that would work even better … Read the rest of this entry »


@colin_walls tweets

Follow colin_walls