Joe Lee Computing

Embedded Systems

Joe Lee's long experience contracting to many major enterprises gives him the
versatility to very quickly assimilate client's urgent requirements and immediately
get working on them.

Joe's software can now be found in a number of industrial and consumer products with World-wide markets.

One such project was brought on by the USA deciding to change the design of all their
dollar notes, with the result that every one of the millions of cash counting machines in use required upgrading.

These machines don't just count notes, they need to verify that each note is genuine by recognising each
side of each note, no matter which way up or around they are.
One very specific requirement
was that the existing high speed of over 1400 per minute had to be retained,
despite the much more complex note identification algorithms which were required.

Joe's expertise at compressing assembler code to fit the available space was called upon, with the result
that over 24K of new code was squeezed into the only 16K available!

Another interesting but very frustrating project resulted in Joe being contracted to try to stop
code-bloat which was rapidly overtaking a new embedded metering system.

During the course of this work, apart from finding tens of bugs per day, Joe identified a critical HCF instruction in the firmware.

HCF is a well-known assembler instruction (well...known to assembly software
engineers) which implements the undesired sequence 'Halt and Catch Fire'. This was caused by a particular sequence of embedded
code which, when a software fault was detected, caused multiple chips to switch into write-mode on the same
data bus at the same time, inevitably resulting in a current overload with the potential to
burn out the circuit board traces.

Unfortunately for the enterprise concerned, the offending code had already been blown into many thousands of
write-once CPUs.