Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are some available software tools used in testing firmware today?

I'm a software engineer who will/may be hired as a firmware test engineer. I just want to get an idea of some software tools available in the market used in testing firmware. Can you state them and explain a little about what type of testing they provide to the firmware? Thanks in advance.

like image 883
LEMUEL ADANE Avatar asked Mar 19 '11 01:03

LEMUEL ADANE


People also ask

How do you test firmware?

To test your firmware in a device write a debugging interface so that you can use a terminal emulator like procomm to talk to your device. Then, when you are writing a feature, have a way for your debugging interface to call methods in your class, that way you can specifically test your code in the device itself.


1 Answers

Here are some firmware testing techniques I've found useful...

  1. Unit test on the PC; i.e., extract a function from the firmware, and compile and test it on a faster platform. This will let you, for example, exhaustively test a function whereas this would be prohibitively time consuming in situ.

  2. Instrument the firmware interrupt handlers using a free running hardware timer: ticks at entry and exit, and count of interrupts. Keep track of min and max frequency and period for each interrupt handler. This data can be used to do Rate Monotonic Analysis or Deadline Monotonic Analysis.

  3. Use a standard protocol, like Modbus RTU, to make an array of status data available on demand. This can be used for configuration and verification data.

  4. Build the firmware version number into the code using an automated build process, e.g., by getting the version info from the source code repository. Make the version number available using #3.

  5. Use lint or another static analysis tool. Demand zero warnings from lint and from the compiler with -Wall.

  6. Augment your build tools with a means to embed the firmware's CRC into the code and check it at runtime.

like image 181
Doug Currie Avatar answered Nov 10 '22 05:11

Doug Currie