After all, I am only a programmer. I know something about electronics, but that’s nearly all theory. I did some soldering when I was young, but my resources were too constrained to allow me a real understanding of the matter through experience. So, today I’m doing my programming job on a prototype hardware containing an ARM chip and some other almost invisible components. Working with prototype computers ranges from funny to entangling complicated. The reason is that it is very hard to understand and find where the software bug ends and where the hardware bug begins.
The funny part is usually when you understand that’s not your fault before banging your head against the wall too hard.
This board has about an entry-level-PC audio capabilities, so a mic-in line and a speaker output. For testing purpose I hooked the audio input to a PC continuously playing audio via a voltage divider. The speaker out is always connected to a… well, a speaker.
Now when no software is running the speaker is mute no matter what is coming in through the mike.
You can imagine my surprise when hooking the PC serial cable to the board I heard the music through the speaker! Remove the serial and the speaker mutes back. *Gosh*! That’s surely not my fault!
Another pretty fault as easy as astonishing is that a clicking noise in the sampled audio happens only when the board is battery operated. The audio is noise-clean when the board is tied to the AC power supply.
Nonetheless I am admired that such an engineering jewel is working (mostly) as expected. Kudos to my colleagues!