My old company domain is now in new hands

Wednesday, April 3, 2019 Leave a comment

Since I relinquished my old company domain (, someone else has purchased it. There may still be some links, here, to that site, but they no longer have any relevance to me or to this blog! I’m deleting the obsolete links as I find them.

Categories: Uncategorized

Response Time Analysis for Event-Driven Systems

Friday, March 10, 2017 Leave a comment

I’m writing a testbook about event-driven systems and have decided to put an excerpt up here for scrutiny by my peers in the embedded software industry. Please note that this is all that is available so far. The references in the chapter are not ready yet and the statement that I have written some RTA software is currently a lie! Here is the link:

RTA Basics


Categories: Uncategorized

Blog re-hosted for safekeeping

Friday, September 11, 2015 Leave a comment

Software Integrity’s blog has been re-hosted here, to my personal blog, for safekeeping, following my retirement and the demise of the company and its website (including the blog). If you are interested in following my posts to this blog (which will not necessarily all be about Embedded Software), please bookmark this URL:

Categories: Uncategorized


Monday, August 31, 2015 3 comments

The tranquillity of living in rural Cornwall, among other things,  has finally persuaded me to retire. I might finish my private software projects; I might write one or two text books. On the other hand, I might not. There’s no hurry, any more, even to make the decision!

This blog will disappear soon and the main company website will be relegated to a holding page before disappearing itself, when the company does.

I’ve enjoyed my career, on the whole, but I’m not sure how much I’ve done, if anything, to slow the escalation of needless complexity in embedded software or – more importantly – to halt the corresponding decline of engineering standards in the industry, particularly when it comes to supposedly safety-critical products. But this lament has been coming from the mouths of older engineers since I got my first job in 1968 – and probably before that, too! Plus ça change, plus c’est la même chose.

To all who have perused this blog, thank you for your interest.

Categories: No Category

Device Developers’ Conference 2014

Thursday, June 5, 2014 2 comments

I very much enjoyed this year’s Device Developers’ Conference. I had to miss the Bristol and Cambridge events but was able to speak in Cheadle and in Uphall. Thank you to all who came along to listen!

You can obtain the PDF of the slides here:


The talk introduced Software Integrity’s Dyagem project. This has its own page on this blog. That page can also be reached via the URL

The Dyagem code will be available from 09 June 2014. It is open source and licensed under the “Boot License”, though I must emphasise that it is not associated with the Boost C++ libraries (


Categories: News

Bogus Registrations

Monday, July 8, 2013 2 comments

I’ve received new registrations to this blog with suspicious frequency, lately. Some appear to be bogus, but given the difficulty of establishing unique user names on, say, gmail, it’s difficult to tell who’s genuine.

For the time being, I’ve disabled auto-registration. If have not registered but would like to, please put a comment on the Subscribers’ page, giving me enough information to distinguish you from a spammer, and I will get back to you.

To the vast majority of you who are genuine subscribers, thank you for your interest in this blog. I hope to ramp up my blogging again quite soon.

Categories: News

Bit-Banding Updated

Tuesday, May 7, 2013 5 comments

Last time, I wrote about bit-banding with ARM Cortex-Mx microcontrollers. Although I am not using my BitWord class in my current project, here is an improved, better documented and slightly better tested version of it: Read more…

Categories: ARM Cortex-M3, C/C++ Tags: ,

ARM Cortex Bit-Banding in C++

Monday, March 4, 2013 1 comment

It has been a long time since I posted, so I’m posting this very technical article just to get into the swing of it again.

On LinkedIn (Cortex-M Programmers’s group) I started a discussion about accessing the bit-banding features present in many ARM Cortex-M3 chips, using C++. If you don’t know what I’m talking about, look away now! Read more…

Categories: ARM Cortex-M3, C/C++ Tags: ,

Slides from Embedded Masterclass 2012

Monday, July 16, 2012 2 comments

The slides from my workshop “Robust Concurrent Programming in C++” at the recent Embedded Masterclass in Cambridge are available here:

Embedded Masterclass 2012 SWI Workshop Slides

Please note that there were also some hands-on exercises during the workshop, to which the slides refer. However, the source code for these exercises, and their solutions, is not publicly available. If you attended the workshop and have lost the code, or you have some other reason to want it, please contact me by email.

I also presented a short talk, “Programming small systems in C++“, at the event. The slides for this are available here:

Embedded Masterclass 2012 SWI Talk Slides


Categories: No Category

Embedded Masterclass, Cambridge, UK, 27/06/12

Monday, June 11, 2012 2 comments

I will be presenting a Workshop – Robust Concurrent Programming in C++ – at this year’s Embedded Masterclass Read more…

Categories: News Tags: