Desktop monitoring / Serial and TCP
Serial Log Monitor
A desktop tool for watching serial and TCP logs in real time, with an integrated terminal for configuring the device without switching applications.
The problem
Debugging an embedded device means alternating between reading its output and sending it configuration commands. The available tools do one of the two well: a serial terminal does not help you read a continuous stream, and a log viewer does not let you answer back. Switching windows in the middle of a test is the fastest way to lose context.
Constraints
- The incoming stream does not stop while you read
- Long sessions without degrading memory usage
- Two different transports, serial and network, behind one read interface
Decisions
Outcome
- Real-time reading from serial ports and over TCP
- Integrated terminal with a virtual keypad for configuring the device
- Multi-tab interface for several simultaneous connections
- High-contrast theme built for long sessions
Where electronics meets software
This project is where my earlier training stops being a biographical detail. Reading a frame over a serial port, understanding a device protocol and knowing what to ask when the stream cuts out is not application knowledge: it is hardware knowledge, applied from software.
The abstraction that paid off
Serial and network look like two problems. After writing both, the only difference was opening the connection: from there on, both emit lines of text. Unifying them behind one source left the viewer, the terminal and the filtering entirely indifferent to transport, and makes adding a third an adapter rather than a new branch scattered through the code.
Why it belongs here
Because it is the tool I reach for when something fails on a real device, and because it shows that separating responsibilities has an immediate practical consequence, even in a small application.