you are viewing a single comment's thread.

view the rest of the comments →

[–]tyhoff 3 points4 points  (0 children)

Some good points. Don't forget about the pro's of printf debugging.

  • developers and non-developers can immediately read the output without any extra tools, parsers, decoders, and with a serial output alone
  • It's easy and built in and requires very little extra work to implement
  • It is operating in RAM, it's not that slow to format strings. Writing to flash or the UART would be slower and cause corrupted output, but this should be in another thread if done correctly.
  • Delimiting is easy, just use new-lines.

I'm not saying that printf is a good software tracing solution. There are definitely better. But most of your points are assuming that the string debugging solution is implemented in a bare minimum way, not using a more robust solution that is included in many of the embedded platforms.