Slowing Down to Learn

Making time to learn while on the job is sometimes hard to justify. Not making time to learn is hard to defend.

There are two software tools I use frequently, but I know I am barely utilizing them to their full potential. I get good information from them to analyze problems and validate solutions. However, I know there is an additional level of capability that I haven’t had a chance to explore.

I’m making time to learn them better. Knowing my tools will help me speed up my debug efforts, and help me profile system performance. … More Slowing Down to Learn

The Perfect Debug UART port

The debug UART port is a critical tool in embedded systems for testing and monitoring. It relies on a solid serial connection for reliable operation. Implementing this port using a UART for serial communications is common, but it comes with challenges like TX/RX reversal and physical fitting issues. Using best practices can help ensure a reliable and effective debug UART port. … More The Perfect Debug UART port

GPIO test point

Today’s blog post discusses the use of a GPIO test point for debugging embedded systems. It explains the benefits of a dedicated GPIO test point, the selection criteria for the GPIO pin, and tips for placing and manipulating the test point. The post also emphasizes the importance of using a GPIO pin over a debugger and a terminal for system monitoring. … More GPIO test point

An adventure in debugging an I2C bus hang

A few years ago, I encountered an issue in my project involving an I2C device that didn’t always work after a system reset.

In an ideal world, any reset should emulate a power-on reset, but we sometimes encounter warm start issues. The problem I was encountering certainly started feeling like a warm start problem, but I wasn’t sure what was going on. Are you sitting comfortably? Then I shall begin… … More An adventure in debugging an I2C bus hang