‘Patterns for Time-Triggered Embedded Systems’ by Michael J. Pont

If you want to learn how to develop reliable, real-time embedded systems, then the very popular “Patterns for Time-Triggered Embedded Systems” book is a great place to start.

At more than 1000 pages, this isn’t a small book – however, it does provide comprehensive guidance on the development of “Time Triggered” (TT) embedded systems.

In total, PTTES contains details of more than 70 useful “design patterns”, complete with guidelines to help you apply these techniques in your own projects: full source code for all of the patterns is also included.


Free Download (book and all code examples)


Following an agreement with the original publishers, PTTES is now distributed by SafeTTy Systems.

You can download the complete book (PDF file) here.

You can also download the C example files (zipped) here.

  • The PTTES code examples are released without warranty (details in the zipped file).
  • The PTTES code examples were written to match the C51 (8051 compiler) from Keil. Under an agreement with Keil, an evaluation version of the C51 compiler was distributed with the book: we cannot distribute this compiler (sorry). The code should work with current versions of the C51 compiler (but we have not tested this).
  • Other compilers for the 8051 are also available: for example, the SDCC compiler is available without charge. A port of all PTTES code to SDCC compiler is available (contributed by Manish Shakya): please note that – while we believe this port is complete and working – we have not tested this code.



Use of PTTES designs and code in commercial projects


The code and designs in the PTTES book are intended (only) to demonstrate the use of some simple Time-Triggered system architectures.


This code may be used without charge: [i] by universities and colleges in courses for which a degree up to and including MSc level (or equivalent) is awarded; [ii] for non-commercial projects carried out by individuals and hobbyists.

We do not permit this code to be used for any other purpose.

We can provide alternative code libraries and products that are suitable for use in a range of production systems.

You may wish to consider our ‘ERES2’ book and related code examples as a starting point.



Course TTa: Foundations of Reliable Embedded Systems

Introductory course TTa is concerned with the design and implementation of software for reliable, real-time embedded systems.

The programming examples discussed during the course are in the ‘C’ language.

A key feature of Course TTa is that you will learn about the benefits that can be obtained by developing reliable embedded systems using time-triggered (TT) architectures.

In most cases, the starting point for a successful TT design is a “bare metal” software platform: that is, the system will not usually employ a conventional “RTOS”, Linux™ or Windows®. In this software platform, a single interrupt will be used, linked to the periodic overflow of a timer. A ‘polling’ process will then allow interaction with peripherals.

For developers who are familiar with a “multi-interrupt” approach to the development of software for embedded systems, a TT solution may – at first – feel a little strange. However, TT architectures have been used for many years in industries such as aerospace, because they have been found to provide the basis for reliable systems. With appropriate use of this approach, these benefits can now obtained by developers working in a wide range of sectors.

By the end of Course TTa, you will understand both the strengths and weaknesses of a Time-Triggered approach to the development of software for reliable embedded systems – and you will be ready to apply TT architectures in your own designs.

  • A free on-line version of TTa is offered via our YouTube® channel.
  • For a small fee, you can complete TTa on-line with support from your personal Certification Tutor.
  • TTa can also be delivered on your company site (anywhere in the world) over a five-day period – on dates of your choosing.
  • TTa can be taken as a “stand alone” training course or as part of the SafeTTy Certified programme (Level 1).

Learn more on our TTa page.